PAGP_RESERVE_PHYSICAL回调函数 (videoagp.h)

AgpReservePhysical 函数在系统总线上保留一系列物理地址,AGP 控制器可以响应这些地址。

语法

PAGP_RESERVE_PHYSICAL PagpReservePhysical;

PHYSICAL_ADDRESS PagpReservePhysical(
  [in]  IN PVOID HwDeviceExtension,
  [in]  IN ULONG Pages,
  [in]  IN VIDEO_PORT_CACHE_TYPE Caching,
  [out] OUT PVOID *PhysicalReserveContext
)
{...}

参数

[in] HwDeviceExtension

指向微型端口驱动程序的设备扩展的指针。

[in] Pages

指定视频端口驱动程序应保留的页数。

[in] Caching

指定系统应使用的缓存类型。 此参数可以设置为以下值之一。

含义
VpNonCached 系统不应缓存地址范围。
VpWriteCombined 系统应使用写合并 (WC) 缓存。 有关 WC 缓存的信息,请参阅 视频微型端口驱动程序中的写入合并内存 网站一文。
VpCached 系统应使用普通缓存。

[out] PhysicalReserveContext

指定视频端口驱动程序在其中写入标识保留物理地址空间的上下文句柄的位置。

返回值

如果成功,AgpReservePhysical 将返回保留的物理地址范围的基址;否则,它将返回 NULL

注解

在 Microsoft Windows 2000 上运行的视频微型端口驱动程序应始终保留其大小为 64 KB 的倍数的范围。 保留不是 64 KB 的倍数的范围可能会导致 AgpReserveVirtualAgpCommitVirtual 返回无效的虚拟地址。

在 Microsoft Windows XP 及更高版本上, AgpReservePhysical 会自动将请求的范围扩展到 64 KB 的倍数。

成功返回后,AGP 控制器可以响应总线上的保留物理地址范围。 但是,视频微型端口驱动程序必须首先调用 AgpCommitPhysical ,以便在访问之前提交此内存,以便定义访问的结果。

微型端口驱动程序可以多次调用 AgpReservePhysical ,以保留许多较小的地址范围,而不是一个大范围。

微型端口驱动程序应调用 AgpReleasePhysical ,以在不再需要物理地址范围时释放该范围。

要求

要求
最低受支持的客户端 适用于 Windows 2000 及更高版本的 Windows 操作系统。
目标平台 桌面
标头 videoagp.h (包括 Video.h)
IRQL PASSIVE_LEVEL

另请参阅

AgpCommitPhysical

AgpReleasePhysical

AgpReserveVirtual