Windows 98には優れたメモリ管理機能が内蔵されていると聞きました。しかし,その恩恵にあずかれていない気がするのですが?
なにかコマンドとかが必要なのでしょうか?
確かにWindows 98にはWindows 95にないメモリの管理構造を最適化するための技術として「MapCache」が導入されています。ただ,この技術の恩恵にあずかるためには,別のアプリケーションが必要です。
●MapCache
Windows 95ではHDDからプログラムを読み込むと,まずメインメモリのディスクキャッシュ領域(Vcacheとも呼ばれます)にロードしてからメインメモリの実行領域(VMMと呼ばれます)にコピーして展開し,論理アドレスが割り振られます。これでは,一つのデータでもメインメモリ上に二重のデータ領域が必要になります。
それに対してWindows 98では,メインメモリのディスクキャッシュにロードしたあと,論理アドレスに直接マッピングするように改善されました。これがMapCacheという技術です。ただし,ロードは一定単位(4KB)あたりで行われるので,HDDからロードしたディスクキャッシュ領域のプログラムが4KB単位ごとに始まるように配置されていないと利用できません。
●WinAlign
そこでディスクキャッシュ上のプログラムを4KB単位ごとに始まるように再配置しておくためのプログラムが「WinAlign」です。図4のような動作で再配置をしていきます。このプログラムは常駐式のプログラムでWindows 98リソースキットには完全版が含まれるのですが,実はWindows 98そのものには「WALIGN.EXE」という単体実行方式の簡易版,およびDLL版しか含まれていません。そのせいもありWindows 98のメモリの最適化の手法としては一般的にはなっていません。ただ,図4からも分かるとおり,使用するメモリの量が増えてしまうという欠点もあります。
ちなみに,Walignを実行するには,[スタート]ボタン→[ファイル名を指定して実行]で,名前の欄に「WALIGN」と入力して,[OK]を押せば実行できます。
(坪山博貴)
画面3 「WALIGN.EXE」の実行時。
「アプリケーション チューニングの開始」という窓が出て,一瞬で終わります
図1 MapCacheの構造
図2 WinAlignの動作