見出し画像

20040620 ハードディスクの最適化

 ハードディスクの最適化は無駄$${^{*1}}$$らしい。今まで私はこのハードディスクの最適化は必須だと思ってきた。

 この記事$${^{*2}}$$を読むと如何に無駄であるかがよく判る。データがハードディスク$${^{*3}}$$上に記録される時、物理的にデータが分断されることがあるらしい。ハードディスクの中の円盤にデータが書き込まれる$${^{*4}}$$とき、書き込める領域の状態によって書き込むデータが分断される。100MBのデータを記録しようとする場合、100MB分の空いた領域が物理的に連続していないと100MBのデータを分割してハードディスクに書き込む。

 このデータを読み出す時、データが連続していれば、ディスクの読み出しヘッド$${^{*5}}$$をディスク上で単純に滑らせるだけである。データが分散していれば、その分散したデータをつないで読み出すためにハードディスク上に分散したデータがある場所にヘッドを動かさなければならない。ヘッドやディスクは機械部品なので動くのにある程度時間が必要である。従ってデータの分断化が進むと読み出す時に頻繁にヘッドを動かさなければならなくなるので、コンピュータの動作速度が遅くなる。

 コンピュータの動作速度が遅くなるとなれば損をした気分になる。だが、よく考えてみるとあるデータを読み出すのに、分断されていなければ0.1秒で済むところが、分断されていると1秒かかったとする。時間は10倍だが、余分な時間は1秒程度なので全く問題ない。このために何か対処する方が余程時間の無駄になる。

 オペレーションシステム$${^{*6}}$$のファイルが分断しているとどうなるだろう。オペレーションシステムはコンピュータのシステム全体を管理しているのでしょっちゅう読み出しを行っている。これが分断されていれば時間が掛かって仕方がなくなるのではないだろうか。

 そうではない。オペレーションシステムは沢山のデータから成り立っている。このデータは決められた手順によって読み出されるが、常にその順番が決まっている訳ではない。個々のデータが分断されていなくても読み出しの順番が決まっていない複数のデータの読み出しをしなければならないヘッドは頻繁に動かなければならない。つまりもともと断片化しているようなものなので、これも大して問題は発生しないということである。

 ではなぜハードディスクのデータの最適化をやってしまうのか。分断されたデータが整理されていく様子$${^{*7}}$$を見ると清々しい。耳掻きと同じ*8である。不必要であると知る前は、必要であるということと気持ちがいいということとが理由であった。それを知ってからは気持ちがいいことだけが理由になってしまった。ほどほどにすべきなのであろう。

*1 TidBITS 日本語版 #686 /30-Jun-03
*2 ディスクの最適化は時間の無駄
*3 パソコンの仕組み パソコンの基礎知識 > ハードディスクドライブ > ハードディスクドライブの構造
*4 新・イラストで読むパソコン入門 パソコン・ハードディスク
*5 情報処理概論 ハードディスク
*6 IT用語辞典 e-Words : OS 【オペレーティングシステム】 (Operating System)
*7 Review: Disk Utility Shoot-Out speeddisk.gif
*8 19991108  究極の耳掻き

この記事が気に入ったらサポートをしてみませんか?