다음을 통해 공유


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.

설명

스토리지 클래스 드라이버는 I/O 제어 코드 IOCTL_STORAGE_QUERY_PROPERTY 디바이스 제어 요청을 실행하여 데이터 전송 작업에 대한 액세스 맞춤 정보를 포함하는 이 구조를 검색합니다. 구조체는 버스의 디바이스 개체 또는 요청을 기본 버스로 전달하는 FDO에서 검색할 수 있습니다.

요구 사항

요구 사항
헤더 ntddstor.h(Ntddstor.h 포함)

추가 정보

IOCTL_STORAGE_QUERY_PROPERTY