FreeUserPhysicalPages

AllocateUserPhysicalPages または AllocateUserPhysicalPagesNuma を使って以前に割り当てられた物理メモリページを解放する。

FreeUserPhysicalPages hProcess, NumberOfPages, PageArray

hProcess : [intptr] プロセスへのハンドル。関数はこのプロセスの仮想アドレス空間内のメモリを解放する。
NumberOfPages : [var] 解放する物理メモリのサイズ(ページ単位)。戻り時に関数が失敗した場合、このパラメータは解放されたページ数を示す。
PageArray : [var] 解放する割り当て済みメモリのページフレーム番号の配列へのポインタ。

(プラグイン / モジュール : kernel32.dll)

解説

AllocateUserPhysicalPages または AllocateUserPhysicalPagesNuma
を使って以前に割り当てられた物理メモリページを解放する。

[戻り値]
関数が成功した場合、戻り値は TRUE である。関数が失敗した場合、戻り値は FALSE である。この場合、NumberOfPages
パラメータは実際に解放されたページ数を反映する。拡張エラー情報を取得するには GetLastError を呼ぶ。

[備考]

マルチプロセッサ環境では、この関数はハードウェア変換バッファのコヒーレンスを維持する。この関数が戻ると、すべてのプロセッサ上のすべてのスレッドが正しいマッピングを見ることが保証される。この関数を使うアプリケーションをコンパイルするには、_WIN32_WINNT
マクロを 0x0500 以降として定義する。詳細は Using the Windows Headers を参照。

情報

プラグイン / モジュールkernel32.dll
バージョン1.0
作成日2026/04/16
著作者IronHSP / CsWin32 bridge
URLhttps://github.com/inovia/IronHSP
備考Win32 API の kernel32.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。
タイプ拡張命令
グループWin32API
対応環境
  • Windows 版 HSP
hs ファイルhsphelp\win32_kernel32_gen2.hs