PERSISTENT_RESERVE_COMMAND 结构 (ntddstor.h)
PERSISTENT_RESERVE_COMMAND 结构与 IOCTL_STORAGE_PERSISTENT_RESERVE_IN 和 IOCTL_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) |