次の方法で共有


PRI_REPORT_CAPABILITIES構造体 (storport.h)

PRI_REPORT_CAPABILITIES構造体には、 を使用した永続予約コマンドServiceAction=RESERVATION_ACTION_REPORT_CAPABILITIESに応答して返される永続的な予約機能に関する情報が含まれています。

構文

typedef struct {
  UCHAR Length[2];
  UCHAR PersistThroughPowerLossCapable : 1;
  UCHAR Reserved : 1;
  UCHAR AllTargetPortsCapable : 1;
  UCHAR SpecifyInitiatorPortsCapable : 1;
  UCHAR CompatibleReservationHandling : 1;
  UCHAR Reserved1 : 2;
  UCHAR ReplaceLostReservationCapable : 1;
  UCHAR PersistThroughPowerLossActivated : 1;
  UCHAR Reserved2 : 3;
  UCHAR AllowCommands : 3;
  UCHAR TypeMaskValid : 1;
  UCHAR Reserved3 : 1;
  UCHAR WriteExclusive : 1;
  UCHAR Reserved4 : 1;
  UCHAR ExclusiveAccess : 1;
  UCHAR Reserved5 : 1;
  UCHAR WriteExclusiveRegistrantsOnly : 1;
  UCHAR ExclusiveAccessRegistrantsOnly : 1;
  UCHAR WriteExclusiveAllRegistrants : 1;
  UCHAR ExclusiveAccessAllRegistrants : 1;
  UCHAR Reserved6 : 7;
  UCHAR Reserved7[2];
} PRI_REPORT_CAPABILITIES, *PPRI_REPORT_CAPABILITIES;

メンバー

Length[2]

この構造のサイズ。

PersistThroughPowerLossCapable

デバイス サーバーが電源損失イベントによる永続化をサポートすることを示します。

Reserved

内部使用のために予約されています。

AllTargetPortsCapable

デバイス サーバーがすべてのターゲット ポートをサポートしていることを示します。

SpecifyInitiatorPortsCapable

デバイス サーバーがイニシエーター ポートの指定をサポートしていることを示します。

CompatibleReservationHandling

デバイス サーバーが SPC-2 と下位互換性があることを示します。

Reserved1

内部使用のために予約されています。

ReplaceLostReservationCapable

デバイス サーバーが紛失した予約の交換をサポートしていることを示します。

PersistThroughPowerLossActivated

電源損失機能を介して永続化がアクティブ化されることを示します。

Reserved2

内部使用のために予約されています。

AllowCommands

特定の種類の永続的な予約で特定のコマンドを許可するかどうかを示します。

説明
0 特定の種類の永続的な予約で特定のコマンドを許可するかどうかに関する情報は提供されません。
1 デバイス・サーバーは、書き込み排他タイプ予約および排他アクセス・タイプ予約を使用して TEST UNIT READY コマンドを許可します。 デバイス サーバーは、Write Exclusive 型の予約で次のコマンドを許可するかどうかに関する情報を提供しません。
  1. MODE SENSE
  2. READ 属性
  3. READ BUFFER(10)
  4. 診断結果の受信
  5. サポートされている操作コードを報告する
  6. サポートされているタスク管理機能をレポートする
  7. 欠陥データの読み取り
2 デバイス・サーバーは、書き込み排他タイプ予約および排他アクセス・タイプ予約を使用して TEST UNIT READY コマンドを許可します。 デバイス サーバーは、Write Exclusive 型の予約を使用して次のコマンドを許可しません。
  1. MODE SENSE
  2. READ 属性
  3. READ BUFFER(10)
  4. 診断結果の受信
  5. サポートされている操作コードを報告する
  6. サポートされているタスク管理機能をレポートする
  7. 欠陥データの読み取り
3 デバイス・サーバーは、書き込み排他的および排他アクセス・タイプの予約を使用して TEST UNIT READY コマンドを許可します。 また、排他的な型の予約を書き込む次のコマンドがあります。
  1. MODE SENSE
  2. READ 属性
  3. READ BUFFER(10)
  4. 診断結果の受信
  5. サポートされている操作コードを報告する
  6. サポートされているタスク管理機能をレポートする
  7. 欠陥データの読み取り
4 デバイス サーバーでは、書き込み排他的および排他アクセスの永続的な予約を使用して、TEST UNIT READY コマンドを使用できます。 また、書き込み排他的な予約を使用した次のコマンドは、予約を保持します。
  1. MODE SENSE
  2. READ 属性
  3. READ BUFFER(10)
  4. 診断結果の受信
  5. サポートされている操作コードを報告する
  6. サポートされているタスク管理機能をレポートする
  7. 欠陥データの読み取り
5 デバイス サーバーでは、次のことができます。
  1. 排他的および排他的アクセスの永続的な予約を書き込む次のコマンド:
    1. TEST UNIT READY
    2. サポートされている操作コードを報告する
    3. サポートされているタスク管理機能をレポートする
  2. 排他的な予約を書き込むには、次のコマンドを実行します。
    1. MODE SENSE
    2. READ 属性
    3. READ BUFFER(10)
    4. 診断結果の受信
    5. 欠陥データの読み取り
その他すべて 予約済み

TypeMaskValid

デバイス サーバーでサポートされている永続的な予約の種類を示すビットマスクが含まれています。

Reserved3

内部使用のために予約されています。

WriteExclusive

デバイス サーバーが書き込み排他的な永続的な予約の種類をサポートしていることを示します。

Reserved4

内部使用のために予約されています。

ExclusiveAccess

デバイス サーバーが排他的アクセスの永続的な予約の種類をサポートしていることを示します。

Reserved5

内部使用のために予約されています。

WriteExclusiveRegistrantsOnly

デバイス サーバーが書き込み排他 ( 永続的な予約の種類のみ) をサポートすることを示します。

ExclusiveAccessRegistrantsOnly

デバイス サーバーが排他的アクセスをサポートしていることを示します。レジストリは永続的な予約の種類のみです。

WriteExclusiveAllRegistrants

デバイス サーバーが書き込み排他的 ( すべての登録者の永続的な予約の種類) をサポートすることを示します。

ExclusiveAccessAllRegistrants

デバイス サーバーが排他アクセス (すべての登録者の永続的な予約の種類) をサポートしていることを示します。

Reserved6

内部使用のために予約されています。

Reserved7[2]

内部使用のために予約されています。

必要条件

要件
Header storport.h