PAGP_COMMIT_PHYSICAL コールバック関数 (videoagp.h)
AgpCommitPhysical 関数は、システム (物理) メモリを指定された範囲の AGP デコード可能な物理アドレスにマップします。
構文
PAGP_COMMIT_PHYSICAL PagpCommitPhysical;
BOOLEAN PagpCommitPhysical(
[in] IN PVOID HwDeviceExtension,
[in] IN PVOID PhysicalReserveContext,
[in] IN ULONG Pages,
[in] IN ULONG Offset
)
{...}
パラメーター
[in] HwDeviceExtension
ミニポート ドライバーのデバイス拡張機能へのポインター。
[in] PhysicalReserveContext
予約済みの物理アドレス範囲を識別します。 コンテキスト ハンドルは AgpReservePhysical から取得されます。
[in] Pages
コミットするシステム メモリのページ数を指定します。
[in] Offset
ページをコミットするページ オフセットを指定します。 オフセットは、 PhysicalReserveContext に関連付けられている予約済みの物理アドレス範囲に適用されます。
戻り値
マッピングが成功した場合は AgpCommitPhysical から TRUE が返され、それ以外の場合は FALSE が返されます。
注釈
ビデオ ミニポート ドライバーは、この関数を呼び出す前に AgpReservePhysical を呼び出すことによって、最初に物理アドレスを予約する必要があります。
既にコミットされているアドレスをコミットするには 、AgpCommitPhysical を呼び出さないでください。 PhysicalReserveContext、Pages、Offset で指定されたページの範囲に、以前にコミットされたページが含まれている場合、AgpCommitPhysical は失敗する可能性があります。
Microsoft Windows 2000 で実行されるビデオ ミニポート ドライバーでは、サイズが 64 KB の倍数である物理範囲を常に予約してコミットする必要があります。 64 キロバイトの倍数ではない物理範囲を予約またはコミットすると、 AgpReserveVirtual または AgpCommitVirtual が無効な仮想アドレスを返す可能性があります。
Windows XP 以降では、 AgpCommitPhysical によってコミットされた範囲が自動的に拡張され、64 キロバイトの倍数になります。
ビデオ ミニポート ドライバーが AgpCommitPhysical を呼び出すと、 PhysicalReserveContext によって識別される物理アドレス範囲の一部が、物理メモリのロックされたページにマップされます。 マップされた部分は、PhysicalReserveContext によって識別される範囲にオフセット ページを開始します。 ビデオ ミニポート ドライバーは、連続しているかのようにコミットされた物理メモリにアクセスできます。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 2000 以降のバージョンの Windows オペレーティング システムで使用できます。 |
対象プラットフォーム | デスクトップ |
Header | videoagp.h (Video.h を含む) |
IRQL | PASSIVE_LEVEL |