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 检索结构,后者将请求转发到基础总线。
要求
要求 | 值 |
---|---|
Header | ntddstor.h (包括 Ntddstor.h) |