カーネルメモリ【kernel memory】
概要

カーネルはオペレーティングシステム(OS)の中核で、CPUやメモリ、ストレージなどのハードウェアを制御し、アプリケーションにその機能を提供する。カーネルメモリはこのカーネル自身のプログラムコードやデータ、デバイスドライバ、システム構造体などを格納するために確保される領域である。OSが起動している間は常時確保され続ける。
カーネルメモリは大きく「ページプール」(paged pool)と「非ページプール」(nonpaged pool)に分かれる。ページプールは必要に応じてストレージ上のページファイルへ退避できるメモリである。一方、非ページプールは割り込み処理など即時の応答が求められる処理のために、常に物理メモリ上に留め置かれる領域である。
一般のアプリケーションが動作する「ユーザーモード」とは異なり、カーネルは「カーネルモード」と呼ばれる高い権限で動作する。カーネルモードではハードウェアへの直接アクセスが許可されており、誤った操作や不正なコードが実行された場合にはシステム全体に影響が及ぶ可能性がある。カーネルに致命的なエラーが生じると、システムは機能を停止し「ブルースクリーン」(BSOD)と呼ばれる通知画面が表示される。
Windowsのタスクマネージャや「Sysinternals」のツールを使うと、カーネルメモリの使用量を確認できる。ページプールや非ページプールの消費量が異常に増大している場合は、デバイスドライバやシステムコンポーネントに問題が生じているサインであることが多い。