- ベストアンサー
Dドライブだけファイルの削除が異常に遅い
Win95のころから業務でWindowsを使い続けてすでに7年。 市販ソフトのプログラマをしている自分ですが、 どうにも解決できないトラブルに見舞われてしまいまして、 諸先輩方のお知恵を拝借したくこの場をお借りしました。 現在使っているPC(Duron900MHz)はパーティションが CとDに分かれています。 1台のハードディスクがCとDに分かれているだけなのに、 なぜかDドライブのファイルを削除しようとすると 異常に時間がかかってしまうんです。 どれくらい異常かというと、全く同じ容量、数の ファイルをCドライブとDドライブに置き、 それぞれ削除にかかる時間を計測すると、 Cドライブにある方は40秒ほどですむのに対し、 Dドライブの方は45分以上かかってしまうんです。 もう明らかな異常だと思いあれこれ試してみました。 まず市販ソフトでデフラグ(最適化)してみましたし、 エラーチェックもしました。 Windowsがおかしくなった可能性もあると思い、 ためしにDOSでバッチ処理にて前述の削除テストをしてみましたが、 やはり同じ症状が起こるのでWindowsに起因するトラブルではないような気がします。 また、空き容量的にはCもDもほぼ同等(5GB以上)で、 他の作業と平行しているわけでもありません。 考えられる対処法は一通りためしたつもりですが、 何か見落としがあればご指摘いただけないでしょうか。 やはり物理的欠損でしょうか………。 WinXP Pro/NEC Lavie C:OS&主要アプリケーション D:データ&非レジストリ利用系ツール
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
>>物理的欠損かファイルシステム、 >>どちらかが原因なのでしょう……。 一つのフォルダーに大量にファイルがあるならファイルシステムの問題です。 FAT16はフォルダー当たり512個位が限界で32はそれを拡張しています。 しかし、FAT(File Allocation Tabel)のサイズは決まっているので、大量 のファイルを保管する場合、FATをチェーン構造で結びますが、場所がファイルと 混在してアクセス効率が極端に落ちます。 OS付属のDefragではFATまで正規化しないので(追加で作られたFATも ファイル扱い)Defragをしても意味がありません。 対応策は、フォルダーを新規に作り、ファイルを分散させるてからDefragを 掛けてやれば早くなります。NTFSも効果が上がるでしょうが経験がないので 何とも言えません。
その他の回答 (4)
- HAL007
- ベストアンサー率29% (1751/5869)
ファイルシステムはFAT32の前提で・・・(NTFSでは経験したことがない) スピードの違いから(40秒と45分)心当たりがあるのはフォルダー構造の 違いだと思います。 一つのフォルダーに大量のファイルを置くとか、多くのフォルダを作り階層が 深い場合などです。 特にFAT32ではある数(ここの当たりはよく知りません)顕著にスピードが 落ちます。
お礼
アドバイスありがとうございました。 CがNTFS、DがFAT32ということでご指摘いただいた可能性は検証してみる必要がありそうです。 実際、たしかにひとつのフォルダに置いておいた 大量のファイルを削除するとこの現象が顕著です。 市販のエラーチェックツールを試して、 フォーマット(FAT32のまま)しても解消されないようならば NTFSに変換してみて再度検証してみようと思います。 物理的欠損かファイルシステム、 どちらかが原因なのでしょう……。 ありがとうございました。
- feininger
- ベストアンサー率41% (74/180)
HDDメーカーが提供している診断ツールなどは試されましたか? http://www.zdnet.co.jp/help/tips/windows/w0620.html 以前、OS付属のエラーチェックでは不良セクタのスキャンでも異常なしでしたが、 メーカー提供のDiagを使ったところ一発で異常を発見できたことがあります。 とりあえずDドライブはバックアップした方がよい気がします。 そのついでにフォーマットなどを試してみるのも手かと。
お礼
アドバイスありがとうございました。 なるほど、まだ試してない処方でした。 さっそくメーカー(東芝)ページに飛んで くまなく探したんですが………東芝にはそんな気の利いた ツールはないようでした(号泣) ただ、トライしておくべき着眼点だと思います。 明日DiskXToolsを買ってエラーチェックしてみようかと思います。 それでだめなら最終手段フォーマットに手を出してみます……(汗)
- te2hrd
- ベストアンサー率69% (9/13)
どこかの文献で読んだおぼろげな記憶なので、 間違っているかも知れませんが、 ハードディスクにパーティションを切る場合、 外側から取っていくので、円周に近い(=スピードの速い) Cドライブのアクセススピードが早くなるとか・・・ その意味で、ハードディスクが空の段階でパーティションを いくつか切っておいて、スピードを要求するプログラムほど 円周側のドライブに置くのが良いとか・・・ そんなことが書いてあったような・・・ 嘘ついてたらごめんなさい。
お礼
アドバイスありがとうございました。 内周、外周でたしかにアクセスに時間差がありますね。 ですが、ですが…、 40"秒"と45"分"という差は一体…(泣)
- ribisi
- ベストアンサー率28% (247/864)
まったく自信はありませんが、削除=ファイルをゴミ箱に移動すること、 と考えると、 Cドライブにはゴミ箱があるが、Dドライブにはゴミ箱がない。 だからDドライブのファイルを削除する=Dドライブのファイルを Cドライブに移動する。ということになって、時間がかかる。 物理ドライブは1台のようですが、論理ドライブとしては2台なので、 OSの処理として上記のようになる..。 推測ですが。
お礼
アドバイスありがとうございました。 ただ、ゴミ箱に移動というのは、ファイルそのものでなく、 本で言えば目次の部分だけの移動なので それに45分かかるのが謎なんです(泣) とりあえずDドライブは全てバックアップして、 他の手だてを試してみようと思いますm( _ _ )m
お礼
丁寧なご解説ありがとうございました。 おかげさまでこの問題解決しました。 市販ソフトによるエラーチェックやデフラグ、 FAT32でのフォーマット等はたいした効果を発揮しませんでしたが、 NTFSに変換したところ、劇的に症状が改善しました。 FAT32下で45分かかっていたファイルの削除が、 NTFSにしただけでわずか46秒で終了するようになったんです。 ここまで改善すれば、もうあとは誤差の範囲ですね。 すっかり盲点になっていたファイルシステムに 着眼点を誘導してくださってありがとうございました。 勉強になりました。