Windows 8、メモリー使用を削減 - 7世代以前のハードウエアにも対応

October 10 [Mon], 2011, 11:32
デスクトップPCからネットブック、タブレットpc windows7まで、幅広いハードウエアでの動作が想定されているWindows 8。その実現には効率的なメモリー使用が求められる。Building Windows 8で10月7日に公開された「Reducing runtime memory in Windows 8」でBill Karagounis氏が、Windows 8においてOSのメモリー使用を縮小する取り組みについて説明している。



Karagounis氏によると、Windows 8は開発スタート当初から「Windows 7と同じシステム要件」を目標の1つとしていた。Windows 7世代のハードウエア、またはWindows 7がサポートするWindows 7世代よりも前のハードウエアでもWindows 8を体験できるようにする。そのためにはWindows 8の新機能がスムーズに動作するように、既存機能が使用するメモリーを削減する必要がある。以下は、Steven Sinofsky氏が3年以上使用してきたネットブック(1GB RAM)にWindows 7 SP1とWindows 8をインストールし、アイドリング時のタスクマネージャーを比較したもの。Windows 7がCPU使用率5%、メモリー使用量404MBであるのに対して、Windows 8はCPU使用率が1%、メモリー使用量281MBである。



なお、デバイスマネージャーでディスプレーアダプターを無効にしてWindowsだけのメモリー使用により近づけた場合、Windows 8はアイドリング状態でメモリー使用量が200MB以下に収まるという。



Windows 8で採用されたメモリー使用削減の様々なテクニックの中から、Karagounis氏は、メモリー?コンバイニング、OSサービスの変更、細かな優先順位付けなどを紹介している。



メモリー?コンバイニングは、通常の動作時にWindowsがシステムRAM全体のコンテンツをチェックし、複数のアプリケーションによるコンテンツの重 複があれば、1つのコピーを維持して残りを解放する。OSサービス変更は、常時動作するOSサービスの見直しだ。これらはアプリケーションが使用できるメ モリーを圧迫する原因になるため、13個のサービスをマニュアルスタート、またはデバイスの接続やネットワークアドレスの存在がスタートの引き金になるオ ンデマンド?モデルに変更した。例えばプラグ&プレイやWindowsアップデートはオンデマンド?スタートになる。最後の細かな優先順位付け は、アプリケーションやシステムコンポーネントによってメモリー割り当ての優先順位を付けるスキームの改善だ。これによりWindowsがより的確に維 持?解放を判断できる。



また、  中華パッド のようなMetroスタイルのユーザーインターフェイスで使われる種類のデバイスでは、必要にならない限りデスクトップ環境用のOSコンポーネントをイニシャライズしない。これにより、現時点でメモリー使用をおよそ23MB削減できるという。
P R
カテゴリアーカイブ
月別アーカイブ
http://yaplog.jp/chenqiang/index1_0.rdf