Vistaのここがもっといやだ!
前回紹介した『Vistaのここが嫌だは』序の口です。
Vistaをインストールした人がまず感じるのは、恐ろしい勢いで、ディスクが減っていくことじゃないでしょうか?
さて、Vistaの内部では何が起こってるのでしょう?
とりあえず、Windowsフォルダを右クリックしてプロパティを見てみてください。
その結果に驚くでしょう。
これは、うちのWin2000のシステムです。約2Gのファイルが WINNTフォルダの中にあります。
では、Vistaは?
なんと、12G!?
ちなみに、余計なソフトは一切入っていません。
ちなみに、Windowsフォルダの中に WinSxSという、サイドバイステップ対応ファイルのフォルダがあるのですが、そこを覗いて見ると・・・・。
なんと、ファイルの半分以上が、ここに集中してることがわかります。
実は、WindowsVistaは 内部に Windows2003/Vista/Vista SP1のバイナリを個別に持っている事が多い(さらに細かいバージョンごとに持っているものもある)ため、実際Windows Side by Side テクノロジーを使用しなくてもいいようなものまで、余分なバイナリがだぶついてる事も少なくないのです。
ちなみに、ファイルアクセスは、フォルダのエントリ数が多いほど遅くなりますが、1つのフォルダに1万近くファイルがある影響ってどうなんでしょうね。
さぁ、皆さんのVistaのWinSxS及びWindowsフォルダの中にはいくつのファイルやフォルダがありましたか?
----------
2009/2/11
さて、WinSxSの中のファイルのほとんどがハードリンクで実際のファイルではないので、ユーザーは気にしなくてもよいという話もあるのですが、
そのハードリンクとはどのくらいあるのか検証してみました。
うちのHDDのVistaパーティションの使用量は 45813301248 バイトなのですが 全てのフォルダで表示されるサイズ(System Volume InformationやRECYCLERの中身も合算)を見ると46618273744 バイトで、およそ800Mが重複リンクしていることが分かります。
問題は、アクセス権限がなくて見れないフォルダをどれだけ見逃してるかなのですが、$Recycle.BinとRECYCLERのハードリンクのような例もあるので、1Gに満たない量がWinSxSフォルダ内でハードリンクしているファイルと考えればいいでしょうか?まぁ、ハードリンクといっても、ほとんど、5.2と6.0のファイルは別々に持っているので、うちの場合1割程度がかぶってるだけって考えるのが妥当でしょうね。(そもそもWindowsUpdateとThinkVantageのアップデートくらいしかしてないので、ハードリンクが増える理由がないのである)
WinSxSの実態がほとんど、ハードリンクだったとしても、ディレクトリエントリが1万近くあるためのパフォーマンス低下は避けられないわけで、それについて言及してない辺りどうなのよ?ってのが本当のところです。
http://d.hatena.ne.jp/NyaRuRu/20081208/p2
のことですか?
(WinSxS の中身の多くはハードリンク)
こんな情報もありますが。
http://blogs.msdn.com/e7jp/archive/2008/12/06/9181705.aspx
というわけで、もう少し突っ込んで検証してみましょう。
圧縮されているだけで、ハードリンクは全くといっていいほどないですよ。