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


структура STORAGE_ACCESS_ALIGNMENT_DESCRIPTOR (ntddstor.h)

Структура STORAGE_ACCESS_ALIGNMENT_DESCRIPTOR используется вместе с запросом IOCTL_STORAGE_QUERY_PROPERTY для получения данных дескриптора доступа к хранилищу для устройства.

Синтаксис

typedef struct _STORAGE_ACCESS_ALIGNMENT_DESCRIPTOR {
  ULONG Version;
  ULONG Size;
  ULONG BytesPerCacheLine;
  ULONG BytesOffsetForCacheAlignment;
  ULONG BytesPerLogicalSector;
  ULONG BytesPerPhysicalSector;
  ULONG BytesOffsetForSectorAlignment;
} STORAGE_ACCESS_ALIGNMENT_DESCRIPTOR, *PSTORAGE_ACCESS_ALIGNMENT_DESCRIPTOR;

Члены

Version

Содержит размер структуры STORAGE_ACCESS_ALIGNMENT_DESCRIPTOR. Значение этого элемента изменится по мере добавления элементов в структуру.

Size

Указывает общий размер дескриптора в байтах.

BytesPerCacheLine

Количество байтов в строке кэша устройства.

BytesOffsetForCacheAlignment

Смещение адреса, необходимое для правильного выравнивания доступа к кэшу в байтах.

BytesPerLogicalSector

Количество байтов в логическом секторе устройства.

BytesPerPhysicalSector

Количество байтов в физическом секторе устройства.

BytesOffsetForSectorAlignment

Смещение логического сектора в первом физическом секторе, где помещается первый логический сектор в байтах.

Пример: смещение = 3 логических сектора

+- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|LBA      |X|X|X|0|1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|
|- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|Physical |               |                  |
|Sector   |      0        |        1         |         2
+- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

В этом примере BytesOffsetForSectorAlignment = 3 * size_of_logical_sector.

Замечания

Драйверы классов хранилища выдают запрос на управление устройствами с кодом управления ввода-вывода IOCTL_STORAGE_QUERY_PROPERTY для получения этой структуры, содержащей сведения о выравнивании доступа для операций передачи данных. Структура может быть получена из объекта устройства для шины или из FDO, который перенаправит запрос на базовую шину.

Требования

Требование Ценность
заголовка ntddstor.h (include Ntddstor.h)

См. также

IOCTL_STORAGE_QUERY_PROPERTY