VideoPortAllocateContiguousMemory 函数 (video.h)
VideoPortAllocateContiguousMemory 函数在 Windows 2000 及更高版本中已过时。 视频微型端口驱动程序应在其位置使用 VideoPortAllocateCommonBuffer 。
VideoPortAllocateContiguousMemory 从非分页池中分配一系列物理连续缓存对齐的内存。
语法
VIDEOPORT_DEPRECATED VIDEOPORT_API PVOID VideoPortAllocateContiguousMemory(
[in] IN PVOID HwDeviceExtension,
[in] IN ULONG NumberOfBytes,
[in] IN PHYSICAL_ADDRESS HighestAcceptableAddress
);
参数
[in] HwDeviceExtension
指向微型端口驱动程序的设备扩展的指针。
[in] NumberOfBytes
指定要分配的连续内存块的大小(以字节为单位)。
[in] HighestAcceptableAddress
指定微型端口驱动程序可以使用的最高有效物理地址。 例如,如果设备只能引用低于 16MB 的物理内存,则此值将设置为 0x00000000FFFFFF。
返回值
如果调用成功,VideoPortAllocateContiguousMemory 将返回已分配内存的基虚拟地址。 如果无法满足请求,则返回 NULL 。
注解
可以调用 VideoPortAllocateContiguousMemory,为长期内部缓冲区分配连续的物理内存块。
必须使用连续内存的微型端口驱动程序应仅在驱动程序初始化期间分配所需的内存,因为非分页池在系统运行时可能会碎片化。 如果微型端口驱动程序已卸载,则必须解除分配内存。 连续分配在处理器的数据缓存行大小的整数倍上对齐,以防止出现缓存和一致性问题。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | 适用于 Windows 2000 及更高版本的 Windows 操作系统。 |
目标平台 | 桌面 |
标头 | video.h (包括 Video.h) |
Library | Videoprt.lib |
DLL | Videoprt.sys |
IRQL | PASSIVE_LEVEL |