こんにちは、阿久津です。新年明けましておめでとうございます。「Windowsスマートチューニング」も無事、2011年を迎えることができました。今年はWindows 8の発表を控えていますが、関係者からの情報によると同OSの開発は順調に進んでおり、現在Milestone(マイルストーン:距離標識の一つ。開発の進捗状況を指す) 2をクリア。続くMilestone 3に取りかかっているとのこと。Windows 7の安定性はWindows XP以来のものであるため、コンシューマ的には新しいOSが登場しなくとも困りませんが、一OSマニアとしては一日千秋の思いが募るほど、Microsoftの公式発表が楽しみです。
さて、Windows OSに長らく搭載されているコンテキストメニューの「送る」機能は、文字どおり選択したファイルやフォルダーを特定のアプリケーションやフォルダーに"送る"ために用意されました。しかし、低スペックのコンピューターを使用中の場合、同機能を使いますと"ガリガリ……"とHDDへのアクセスが発生していることにお気付きでしょうか。
これは、ファイルやフォルダーを右クリックした時点で、コンテキストメニューの項目と連動するファイルやレジストリエントリを呼び出しているためです。今回の「送る」機能に限定すれば、ショートカットファイルと実ファイル(実行ファイルやフォルダー)の存在をチェックしています。
図01は新規テキストファイルを右クリックし、コンテキストメニューが表示されるまでの状態をProcess Monitorで監視したものですが、ショートカットファイルの実体である拡張子「.lnk」ファイル、および実行ファイル(拡張子「.exe」)へのアクセスを確認できました(図01)。
このように、ファイルやフォルダーを右クリックするだけで、<送る>メニューに登録したショートカットファイルのチェックが行われるため、前述のような遅延が発生するのです。もちろん同機能を多用する方であれば、初回のチェックが済めば、その大部分はキャッシュされるため、さほど待たされることはありません(それでも図01のようなチェックロジックは発生します)。
しかし、<送る>メニューは必要ながらも多用するほどではない、という方は同メニューを選択した時点でアクセスが発生するように、Windows 7をチューニングした方が良いでしょう。今回は<送る>メニューの振る舞いを変更し、システムへの負荷を軽減するレジストリチューニングをお送りします。
1.[Win]+[R]キーを押して「ファイル名を指定して実行」を起動し、テキストボックスに「regedit」と入力してから<OK>ボタンをクリックします。
2.レジストリエディターが起動したら、HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Explorerキーまでたどって開きます。
3.右ペインの何もないところを右クリックし、メニューから<新規>→<DWORD値>と選択します。
4.値名を「DelaySendToMenuBuild」に変更したら、同値をダブルクリックします。
5.値のデータを「1」に変更してから<OK>ボタンをクリックします。
6.[F5]キーを一度押してからレジストリエディターを終了します。
これでチューニングが終了しました(図02~07)。
図03: レジストリエディターが起動したら、HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows\CurrentVersion \ Explorerキーまでたどって開きます |
それでは結果を確認……と言っても目に見える部分はチューニング前とまったく変わりません。そこでProcess Monitorを再度使ってみましょう、先ほどはコンテキストメニューの必要な情報を読み込んでから、<送る>メニューの関連情報にアクセスしていましたが、チューニング後はコンテキストメニューに並ぶMicrosoft Security Essentialに関連するDLLファイルの読み込みで終了し、ショートカットファイルへのチェックが行われなくなりました。もちろん<送る>メニューを開く際は、前述した動作が加わります(図08)。
今回のチューニングは一度に行われていた処理の一部分を後回しにする、というものですので、最近の高スペックなコンピューターでは、さほど意味をなしません。それでもモバイルコンピューターにWindows 7を導入している方や、無駄なロジックは極力避けたいと考える方には有益なチューニングとなると思い、紹介いたしました。お役にたてば幸いです。
それでは、また次号でお会いしましょう。
阿久津良和(Cactus)