PERSISTENT_RESERVE_COMMAND结构(ntddstor.h)

PERSISTENT_RESERVE_COMMAND结构与 IOCTL_STORAGE_PERSISTENT_RESERVE_INIOCTL_STORAGE_PERSISTENT_RESERVE_OUT 请求一起使用,以获取和控制设备服务器中活动的永久性预留和预留密钥的相关信息。

语法

typedef struct _PERSISTENT_RESERVE_COMMAND {
  ULONG Version;
  ULONG Size;
  union {
    struct {
      UCHAR  ServiceAction : 5;
      UCHAR  Reserved1 : 3;
      USHORT AllocationLength;
    } PR_IN;
    struct {
      UCHAR ServiceAction : 5;
      UCHAR Reserved1 : 3;
      UCHAR Type : 4;
      UCHAR Scope : 4;
      UCHAR ParameterList[0];
    } PR_OUT;
  } DUMMYUNIONNAME;
} PERSISTENT_RESERVE_COMMAND, *PPERSISTENT_RESERVE_COMMAND;

成员

Version

此结构的版本。

Size

此结构的大小。

DUMMYUNIONNAME

DUMMYUNIONNAME.PR_IN

DUMMYUNIONNAME.PR_IN.ServiceAction

此IOCTL_STORAGE_PERSISTENT_RESERVE_IN请求的服务作代码。 PR_IN。ServiceAction 可以是以下值之一:RESERVATION_ACTION_READ_KEYS RESERVATION_ACTION_READ_RESERVATIONS

DUMMYUNIONNAME.PR_IN.Reserved1

保留。 必须为零。

DUMMYUNIONNAME.PR_IN.AllocationLength

为返回的参数列表分配的字节数。

DUMMYUNIONNAME.PR_OUT

DUMMYUNIONNAME.PR_OUT.ServiceAction

此IOCTL_STORAGE_PERSISTENT_RESERVE_OUT请求的服务作代码。 PR_OUT。ServiceAction 可以是以下值之一:

  • RESERVATION_ACTION_REGISTER
  • RESERVATION_ACTION_RESERVE
  • RESERVATION_ACTION_RELEASE
  • RESERVATION_ACTION_CLEAR
  • RESERVATION_ACTION_PREEMPT
  • RESERVATION_ACTION_PREEMPT_ABORT
  • RESERVATION_ACTION_REGISTER_IGNORE_EXISTING

DUMMYUNIONNAME.PR_OUT.Reserved1

保留。 必须为零。

DUMMYUNIONNAME.PR_OUT.Type

一个值,该值指定永久性预留的特征。 PR_OUT。类型可以是以下值之一:

  • RESERVATION_TYPE_WRITE_EXCLUSIVE
  • RESERVATION_TYPE_EXCLUSIVE
  • RESERVATION_TYPE_WRITE_EXCLUSIVE_REGISTRANTS
  • RESERVATION_TYPE_EXCLUSIVE_REGISTRANTS

DUMMYUNIONNAME.PR_OUT.Scope

一个值,该值指定永久性预留是应用于整个逻辑单元还是逻辑单元的特定元素。 PR_OUT。范围可以是以下值之一:

  • RESERVATION_SCOPE_LU
  • RESERVATION_SCOPE_ELEMENT

DUMMYUNIONNAME.PR_OUT.ParameterList[0]

其他 SCSI 持久保留 Out 命令参数的空间。

言论

SCSI 主命令 - 2 (SPC-2) 规范中介绍了 SCSI 持久保留命令或 SCSI 持久保留 Out 命令时存储设备的行为。

要求

要求 价值
标头 ntddstor.h (包括 Ntddstor.h)

另请参阅

IOCTL_STORAGE_PERSISTENT_RESERVE_IN

IOCTL_STORAGE_PERSISTENT_RESERVE_OUT