連載
» 2017年11月21日 05時00分 公開

その知識、ホントに正しい? Windowsにまつわる都市伝説(97):あなたの知らない“Windows 10のメモリ管理”の世界 (1/3)

今回は、Windowsのメモリ管理の仕組みについて徹底的に解説……なんて全く思っていません。Windows 10には「機能更新プログラム」(つまり新バージョン)で新機能が次々に追加されていくわけですが、“ナントカ3D”など見栄えのする機能だけではありません。目に見えない、Windowsのコア部分にも新機能が追加されたり、仕様変更が行われたりします。それは、時にはユーザーを驚かせることもあります。そして、隠されてしまうことも……。

[山市良,テクニカルライター]
「Windowsにまつわる都市伝説」のインデックス

Windowsにまつわる都市伝説

Windows 10 バージョン1511で突如出現した「システムとメモリ圧縮」機能とは?

 Windows 10 November Updateとも呼ばれるWindows 10 バージョン1511(既にサポートは終了)が2015年末に登場したとき、“「システムと圧縮メモリ」というプロセスが大量のCPUやメモリを使っていて、これは異常だ”なんて話を見聞きしたことはないでしょうか(画面1)。

画面1 画面1 「システムと圧縮メモリ」プロセスのメモリ使用が異常?

 「システムが重いと感じる原因は、これだ」と早合点して、この問題(本当は、問題ではない)を何とか解消しようと、Webを検索して民間療法的なものを試してみたユーザーもいることでしょう。そして、かえって悪い状況になったかもしれません。

 「タスクマネージャー」に表示される「システムと圧縮メモリ」プロセスを「詳細」タブで確認すると、プロセスID「4」のシステム、つまりWindowsの本体であるカーネルのプロセス(ntoskrnl.exe)であることが分かります。Windows 10の初期リリース(ビルド10240)のタスクマネージャーでは単に「System」という名前で表示されますが、同じプロセスです(画面2)。

画面2 画面2 Windows 10 バージョン1511(画面上)とWindows 10 初期リリース(画面下)の「システムと圧縮メモリ」プロセス

 Windows 10 バージョン1511(November Update)からは、メモリ管理機構に「メモリ圧縮」という機能が追加されました。従来のWindowsではメモリが不足すると、メモリの一部をページファイルにページアウトして(ディスク上のpagefile.sysに書き込んで)空きメモリを確保していました。そして、ページアウトされたメモリ領域へのアクセスがあると、ページフォールトが発生し、ページファイルからメモリに読み戻されていました。これが「ページング」と呼ばれる処理です。この処理はディスクI/Oを伴うため、ページングの回数が増えるとシステムのパフォーマンスは当然低下します。

 簡単に説明すると、メモリ圧縮はプロセスが使用するメモリ領域を圧縮して効率的に格納し、利用可能なメモリ領域を増やす仕組みです。メモリ圧縮で利用可能なメモリ領域が増えれば、それだけページングの機会が減るというわけです。

 Windows 10 バージョン1511では、システムプロセスがメモリ圧縮を担当しています。メモリを圧縮するために、システムプロセスのメモリ領域が作業場所として一時的に利用されるので、それが「システムと圧縮メモリ」プロセスがメモリを大量消費しているように“見える”というわけです。大量消費しているように“見える”わけですが、使用中のメモリの容量(タスクマネージャーの「パフォーマンス」タブのメモリで確認できます)にカウントされるものではありません。

       1|2|3 次のページへ

Copyright© 2017 ITmedia, Inc. All Rights Reserved.

「Windows 7」サポート終了 対策ナビ

@IT Special

- PR -

TechTargetジャパン

この記事に関連するホワイトペーパー

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。