• ベストアンサー

断片化を防止するには

初歩的な質問かもしれませんが 断片化が起きないようにするにはどうしたらいいのでしょうか? 使い方次第で防止はできると思うのですが、 100%起きないようにすることは無理なのかな ? メモリーを増設すれば防止できるのかな? Windows XP (SP3)

質問者が選んだベストアンサー

  • ベストアンサー
  • O-Gon
  • ベストアンサー率22% (1024/4610)
回答No.5

>使い方次第で防止はできると思うのですが、 仮想メモリの最大値と最小値を同じにすると断片化しにくくなりますねー。 あと、フォーマット時のアロケーションユニットサイズを大きくするのも効果的です。 >100%起きないようにすることは無理なのかな ? それは現時点では無理です。 >メモリーを増設すれば防止できるのかな? 多いほうがいいですが、xpで1GB~1.256GB。7やVistaの重いOSでも2~4GB程度(64ビットのほうがメモリを多く使います)程度しか使用しませんよ。 つまりこれ以上積んでも無駄かもです。 自分の使用メモリの量は、一番下のタスクバー右クリックして、タスクマネージャー開いて、パフォーマンスタブから確認できますよー。

TX-1000
質問者

補足

>仮想メモリの最大値と最小値を同じにすると断片化しにくくなりますねー。 それはどういうことでしょうか? パソコンの知識が不足していてすみなせんが、おしえてくれたら助かります

その他の回答 (5)

  • nijjin
  • ベストアンサー率27% (4811/17776)
回答No.6

メモリーを増設しても無理です。 断片化はどうやっても発生します。 SSDでも無理です。 まあ、SSDなら断片化しても速度的に気にならないでしょう。 どうしてもデータの書き換えが発生するからです。 データの書き換えが無いROM化された状態なら発生しません。 しかし、そうなると保存も出来ないしOSに不具合が合っても簡単には修正不可能です。 あるいはファイルごとにデーターレコーダーでカセットテープ(あるいはテープドライブでDAT)にでも保存しますか? となります。 ちなみにカセットテープは60分片面(30分)で容量が32KB(キロバイト)、標準速度で32分かかります。 (最後にリードエラーが出て再読み込みで30分待たされたのが懐かしいですね・・・)

TX-1000
質問者

お礼

ありがとうございます。 >ちなみにカセットテープは60分片面(30分)で容量が32KB(キロバイト)、標準速度で32分かかります。 (最後にリードエラーが出て再読み込みで30分待たされたのが懐かしいですね・・・) 懐かしいですね。ドット絵だった頃を思い出しました。

回答No.4

>断片化が起きないようにするにはどうしたらいいのでしょうか? 「パソコンを起動しない」が唯一の方法。 >使い方次第で防止はできると思うのですが、 起動した瞬間に不揮発性レジストリが書き換わる、つまり、システムドライブにファイルが上書き保存されるので、必ず断片化が起きます。 >100%起きないようにすることは無理なのかな ? パソコンを起動しないなら可能。 >メモリーを増設すれば防止できるのかな? メモリー増設は無意味。 -------- 断片化が起きる仕組みは、以下の通りです。 A、Bのファイルが記録されている状態で、C、D、Eの3つのファイルが保存されると、以下のように記憶媒体の空いている場所に順に記録されます。 AAAABBBB空空空空空空空空空空空空空空 ↓ AAAABBBBCCCCDDDE空空空空空空空空 この時、Cのファイルの末尾にデータを書き足すと、以下のようになります。 AAAABBBBCCCCDDDE空空空空空空空空 ↓ AAAABBBBCCCCDDDECC空空空空空空 Cの後ろに書き足そうと思っても、そこには既にDが居るので、仕方なく、もっと後ろにある「空き」を使います。 このようにして、Cが断片化します。 書き足しする場合、どこまで書き足すか事前に判っていれば、書き足し後の長くなったCが連続で1ヶ所に収まる場所を探して、そこに書き移せば良いですが、残念ながら、書き足し開始時にはどこまで書き足すかは判らないので、移動は出来ません。 このように、断片化は「ファイルを上書き保存」したり「ファイルに追加書き込み」したり「ファイルを新規作成」したりすれば、必ず発生します。 パソコン起動時には、必ずファイルに書き込む動作をするので、起動のたびに断片化が発生する可能性があります。 なので、断片化を100%防ぐには「パソコンを起動しない」しかないのです。

TX-1000
質問者

お礼

わかりやすい回答ありがとうございます。 >断片化を100%防ぐには「パソコンを起動しない」しかないのです。 避けられないことなのか

回答No.3

Windowsは、使用している限り断片化(フラグメンテーション)は避ける事が出来ません。 定期的にデフラグを実行するしか対処法はありません。 少しでも断片化を防ぐには、出来る限りメモリを増設して、仮想メモリ(ページングファイル) を最適な値に設定する事です。 (メモリを増設する事で、HDDへのメモリスワップが減りますから多少改善されます) (仮想メモリを最適な値にすると、仮想メモリの断片化が防げます) いずれにしろ、100%断片化を防止する事は出来ません。 仮想メモリの最適化についての参考 http://www.atmarkit.co.jp/fwin2k/win2ktips/076pgfilesize/076pgfilesize.html

TX-1000
質問者

補足

Macなら、断片化しないのかな?

  • violet430
  • ベストアンサー率36% (27472/75001)
回答No.2

防止は無理です。 ですので、定期的に最適化(デフラグ)を実行するのが、快適さを保つこつです。 Diskeeperという市販ソフトなら、デフラグをスケジュールできます。 http://www.sohei.co.jp/software/diskeeper/

TX-1000
質問者

お礼

ありがとうございます。

  • RTO
  • ベストアンサー率21% (1650/7787)
回答No.1

・パソコンを起動しない ・断片化しても気にならないよう SSDに換装する

TX-1000
質問者

お礼

ありがとうございます。

関連するQ&A