Поделиться через


структура PRI_FULL_STATUS_DESCRIPTOR_HEADER (scsi.h)

Структура PRI_FULL_STATUS_DESCRIPTOR_HEADER является первым членом PRI_FULL_STATUS_DESCRIPTOR структуры, которая используется для заполнения PRI_FULL_STATUS_LIST.

Синтаксис

typedef struct {
  UCHAR ReservationKey[8];
  UCHAR Reserved[4];
  UCHAR ReservationHolder : 1;
  UCHAR AllTargetPorts : 1;
  UCHAR Reserved1 : 6;
  UCHAR Type : 4;
  UCHAR Scope : 4;
  UCHAR Reserved2[4];
  UCHAR RelativeTargetPortIdentifier[2];
  UCHAR AdditionalDescriptorLength[4];
} PRI_FULL_STATUS_DESCRIPTOR_HEADER, *PPRI_FULL_STATUS_DESCRIPTOR_HEADER;

Члены

ReservationKey[8]

Ключ резервирования, в котором хранится постоянное резервирование.

Reserved[4]

Зарезервировано для внутреннего использования.

ReservationHolder

Владелец резервирования, установленный на один, указывает, что все инициаторы и целевые порты, описанные в этом дескрипторе состояния, регистрируются и являются постоянными владельцами резервирования. Владелец резервирования, равный нулю, указывает, что все инициаторы и целевые порты, описанные в этом дескрипторе состояния, зарегистрированы, но не являются постоянными владельцами резервирования.

AllTargetPorts

Значение AllTargetPorts нулю указывает, что этот дескриптор полного состояния представляет один порт инициатора и целевую пару портов. Значение AllTargetPorts указывает:

  • Этот дескриптор полного состояния представляет все инициаторы и целевые порты, связанные с обоими:
    • Порт инициатора SCSI задается TransportID
    • Каждый целевой порт (T) находится на целевом устройстве SCSI
  • Все инициаторы и целевые порты регистрируются с одним ключом резервирования
  • Все инициаторы и целевые порты являются владельцами резервирования или не являются владельцами резервирования, как указано в поле "Заполнитель резервирования"

Reserved1

Зарезервировано для внутреннего использования.

Type

Если для зарезервированных задано одно значение, поле типа определяется в команде Persistent Reserve In с ServiceAction=RESERVATION_ACTION_READ_KEYS. Если резервирования имеет значение нулю, содержимое поля типа не определено этим стандартом.

Scope

Если для зарезервированных задано одно значение, поле области определяется в команде Persistent Reserve In с ServiceAction=RESERVATION_ACTION_READ_KEYS. Если резервирования имеет значение нулю, содержимое поля области не определено этим стандартом.

Reserved2[4]

Зарезервировано для внутреннего использования.

RelativeTargetPortIdentifier[2]

Определяет целевой порт относительно порта инициатора.

AdditionalDescriptorLength[4]

Поле AdditionalDescriptorLength указывает количество байтов, указанных ниже.

Требования

Требование Ценность
заголовка scsi.h

См. также