WDF_ALIGN_SIZE_DOWN wdfcore.h (函数)

[适用于 KMDF 和 UMDF]

WDF_ALIGN_SIZE_DOWN 函数返回与指定的对齐偏移量对齐的下一个较低缓冲区大小。

语法

size_t WDF_ALIGN_SIZE_DOWN(
  [in] size_t Length,
  [in] size_t AlignTo
);

参数

[in] Length

内存缓冲区的长度(以 字节为单位)。

[in] AlignTo

对齐偏移量(以字节为单位)。 此值必须是 2 的次数,例如 2、4、8、16 等。

返回值

WDF_ALIGN_SIZE_DOWN以字节为单位返回对齐的缓冲区大小。

注解

驱动程序可以使用WDF_ALIGN_SIZE_UP或WDF_ALIGN_SIZE_DOWN来计算与指定的对齐偏移对齐的缓冲区大小。 如果驱动程序必须分配多个连续缓冲区(如果每个缓冲区必须在地址对齐边界开始)时,此计算非常有用。

示例

下面的代码示例接收缓冲区大小,并返回 (大小或与 DWORD 地址边界) 下一个较低大小的缓冲区大小。

bufferSizeAligned = WDF_ALIGN_SIZE_DOWN(bufferSize,
                                        sizeof(DWORD));

要求

   
目标平台 通用
最低 KMDF 版本 1.0
最低 UMDF 版本 2.0
标头 wdfcore.h (包括 Wdf.h)
Library Wdf01000.sys (Framework Library Versioning.)
IRQL 任何 IRQL。

请参阅

WDF_ALIGN_SIZE_UP