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。Type 可以是以下值之一:

  • 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 持久保留输出命令参数的空间。

注解

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

要求

要求
Header ntddstor.h (包括 Ntddstor.h)

另请参阅

IOCTL_STORAGE_PERSISTENT_RESERVE_IN

IOCTL_STORAGE_PERSISTENT_RESERVE_OUT