さらにもうひとつ、Windows 7ではページスワップが大きく改良されている。Vistaでのページスワップは、「使用中のページ」「以前使用したページ」「スワップしているページ」「使用していないページ」の4種類(レベル)に分類していた。そして履歴のような仕組みで、以前使用していたページをメモリー上に保持していた。
しかしこの仕組みでは、「小さなサイズのメモリーを使用して、すぐに処理を終え、またメモリーを使用する」といった繰り返しが起こるアプリケーションや、最初に大きなサイズのメモリーを取って順次処理するアプリケーションなどの場合で、すぐにページがスワップアウトして、HDD送りにされてしまう。これもまたVistaで、頻繁にHDDアクセスが起こる原因になっていた。
メモリー上に必要なページがあれば、必要とする時すぐに動作できる。一方で空きメモリーがたくさんあっても、必要なページがHDDにスワップしていると、スワップしたページをメモリーに読み込む処理に時間がかかり、システム全体のパフォーマンスを悪くする。そこでWindows 7では、ページの履歴機能の強化とページのレベルを増やすことで、できるだけ多くのページをメモリー上に保持して、スワップしないようにしている。
メモリー上に多くのページを残すことが可能になったのは、メモリーコストが下がってパソコンのメモリー搭載量が増えたこともあるが、Windows 7でのカーネルサイズのコンパクト化や省メモリー化などにより、ページメモリーとして使用できる領域が増えたことにも大きな理由だ。
★
Windows 7でパフォーマンスが向上しているのは、コードの見直しや省メモリー化など、地道な努力の積み重ねが実を結んだ結果だ。例えばWindows 7の開発に当たっては、基本的なエンドユーザーシナリオ(スタートメニューを開く、システムブートなど)を300個選んで、目標とすべき性能を規定した。
そのデータはマイクロソフト内のテスターだけでなく、Vistaから入っている「Windowsカスタマエクスペリエンス向上プログラム」を通じて集められた、全世界のユーザーからデータも使われている。これらのデータに基づいて、各シナリオにおけるパフォーマンスのチューニングが行なわれている。
次世代のWindows開発でもWindows 7でのデータを活用して、よりパフォーマンスや使い勝手が向上するような開発が進められているのだ。
この連載の記事
-
第50回
PC
次期IE「Internet Explorer 10」プレビュー版が公開 -
第49回
PC
RTM版も登場 Windows Home Server 2011の変更点とは -
第48回
PC
5秒で起動するSplashtop OSを自作パソコンで試す -
第47回
PC
ベンチで検証 Internet Explorer 9 RCの互換性と性能 -
第46回
PC
正式版の直前となるInternet Explorer 9 RC版が登場 -
第45回
PC
Silverlightをさらに進化させる「Silverlight 5」 -
第44回
PC
「Windows on ARM」が持つ意味と課題は何か? -
第43回
PC
GPUを利用できる仮想化ソフト XenClient 実践編 -
第42回
PC
複数のWindowsを使い分ける仮想化ソフト XenClient -
第41回
PC
3秒で起動しWindowsと共存するOS「Splashtop OS」 -
第40回
PC
最新版「PP7」に見るIE9の性能と互換性の高さ - この連載の一覧へ