FC2ブログ

断片化を防ぐ(デフラグしなくていい)方法

※この記事は2012年9月18日01時45分24秒に書こうと思ったは良いが設定方法を載せるのが面倒だったので下書きにして放置してたら自分でも忘れて3年以上経って発掘された経緯があります(だからなにさ)。ディスク容量不足の通知が消えない症状の記事作成にあたりこっちも公開してついでにWindows 10での設定方法を加筆しました。本文は当時のママに追記をしているので説明はHDDについてのことで、細かい補足(最近の話とか)が当時の話になっています。ただ、SSDの場合も結局HDDと併用したりUSBや他のドライブに分離したほうが良いと思うので(理由は後述)参考にすると良いと思うよ?

 仮想メモリはそのまま(デフォルト)の状態では足りない物理メモリを臨機応変、変幻自在に補完しようとしたり表向きは慈善事業でもやっている用に見えるものの、一方で断片化を促進して影ではコソコソと悪戯を繰り返す邪魔な存在です。(以下断片化と仮想メモリと今からやろうとしてることの説明が続くので、方法だけ見たい人下の方へ)

というかまずは断片化(フラグメンテーション)の説明からです。
断片化の仕組みーゴニョゴニョ・・・
終了w
自分が表現したかったのは断片化の仕組みの”フラグメンテーションの起きる概略図が発生するモデル”まんまです。

真ん中にあったファイルを削除したら空き領域ができた。
             ↓
次にファイルが追加されたら今まで左詰めにしてきたから次もいま削除して一番左になった空き領域に置いておくつもりだった。
             ↓
しかし、次に追加したファイルがデカすぎた。
             ↓
そこでファイルを分割して入れられる分はそこに置いて、あふれた分は他のあいてる場所に置いた。

 これを繰り返すとファイルがさらに分散しさらに細かくばらばらになり、ファイル1つでもHDDがいろんなところを読み込まないといけなくなるのでどんどんシステム(PC)のスピードが下がってすご~くイライラしてきます。そうなってきたらデフラグします。(7では標準で毎週やるようになってますがデフラグ中システムが遅くなるので時間帯に注意。)
※SSDではデフラグの必要は無いどころかやると寿命が縮まります。
ディスクをデフラグするとアクセスが高速化しますが、これは散らばったデータを纏めてアクセスしやすくしているからです。最近のOSはあまりひどいことにはならないみたいですが手遅れのときはOS再インストールかリカバリ。スッキリします。でも結局、断片化した状態もデフラグ中ももっさりしていて再インスコにしろ手間が掛かりまくりなので精神衛生上良ろしくないです。
がそんなめんどくさいことしなくても原因を1つでも排除すれば手間を軽減できます。

 次に、Windowsでは仮想メモリというものが設定されているのは知っている人も多いんじゃないかなと(勝手に)思いますが、仮想メモリとはメモリが不足した時やアプリケーションが要求したときに使用するもの。メモリは色んなアプリ(ソフト)がアクセスして使い終わったら解放し、また別のアプリが使うというようなことをやっています。それに使うファイルとしてページファイル(pagefile.sys)というものが必ず生成されます。ただし、その場所がデフォルトだとCドライブ(つまりWindowsのシステムファイルと一緒の区画に)にあるうえに嫌なことにシステムで容量が自動設定されています。
 つまり常時容量が変化し、無くなっては増えるのでディスクの断片化(フラグメント、フラグメンテーション)の原因となります(どっかのサイトに実際は仮想メモリは原因とならないと書いてあったけど、経験上明らかに断片化しまくるから)。さらにWindowsのシステムフォルダと同じ領域だとこっちまで巻き添え食らってあらゆる読み込みがとろくさ~くなります。

 普通だとここでページファイル(仮想メモリ)のサイズを固定したり、既存のDドライブに移動するように伝授するところでしょう。でもそれでは普通ですしw完全にページファイルが断片化を引き起こさなくなるわけではないようです。これだとCドライブが無駄に大きくなってしまうし結局断片化するときは一緒に巻きこまれてデフラグするときも一緒に処理されます。そもそもシステムが遅くなるからデフラグるわけです。でその手間を省きたい。
 そこでOSのひとつであるLinuxのスワップ領域の如く仮想メモリを独立パーティション(専用の領域)に完全に隔離しようというわけです。Linuxではスワップ領域としてインストール時点ですでに別領域となっています(この辺りの違いもWindowsがあまり好きになれない理由の一つ)。HDDを分ければアクセスが分散するのでさらに高速になります。なお、別領域に設定した状態では一度も断片化したことがありませんし(他にファイルが存在しないので当然)、仮に断片化したとしても他ファイルのアクセスに影響は出ません。


 かなり前置きが長くなりましたが、

 以下、断片化を防ぐ仮想メモリの設定方法の説明を(パーティション分けは省略。ググッて)。
 まづとりあえずCドライブから別のドライブにします。システムファイルがあるようなところでデフォルトのままほったらかしておいたら100%起動がおそくなります。

スタート(Windowsロゴ)をクリック>右の列にあるコンピューターを右クリックしてプロパティを選択(>Windows 7は開いたシステムの左側にある”システムの詳細設定”)>詳細設定タブのパフォーマンスの所の”設定”>詳細設定タブの仮想メモリの所の”変更”>で
設定クリックしたらOKクリック。

※Windows 10での仮想メモリの設定方法(といっても1.以外Win7でも一緒)

1.まず、スタート(Windowsマーク)を右クリックし、「システム」を左クリックする。
仮想メモリ設定方法1

2.詳細設定タブを表示し、パフォーマンスの「設定」をクリック。
仮想メモリ設定方法2

3.詳細設定タブを選択し、仮想メモリの「変更」をクリック。
仮想メモリ設定方法3

4.”すべてのドライブのページングファイルのサイズを自動的に管理する”のチェックが外れていることを確認して、C:ドライブを選択。”ページングファイルなし”にチェックを入れ、設定を押す。
仮想メモリ設定方法4_補足

5.さいごに用意したドライブにページングファイルを設置する。用意したドライブ(という名前だが実際にはパーティション)を選択する(できれば別のHDDにあるパーティションが良いが、同一のHDD内で分けてもCドライブの断片化とデフラグに掛かる時間を軽減できる)。パーティション内に他ファイルが無いならシステム管理サイズでも良いが、おそらくサイズを可変にするのはディスクの節約のためだと思われる。仮想メモリのために隔離した領域内でサイズをいちいち変化させていても無意味なので、ここは”カスタムサイズ”にしたほうが良い。”初期サイズ”と”最大サイズ”はずらすとサイズが変化するので同じにする。なお、表示されている空き領域より5MB以上小さくしないと設定できない。
 「設定」を押さないと反映されないので、必ず「設定」を押してから「OK」をクリックする。
仮想メモリ設定方法5_補足

仮想メモリの設定は以上。


 さらに外周部(先頭、グラフ左側)のほうが転送速度が早いので、そこに領域を作成すればより高速化が見込めます。また「ページファイルはストライピングが行われるので複数のハードディスクドライブに小分けにしてページファイルを作成すると、ページング速度が向上する。」(引用元)そうです。

デフラグる←流行るといいなぁ(* ´ω`*) w

※以下、SSDに関して
 SSDではWindows標準のデフラグは必要ありません(そもそもフラッシュメモリなのでHDDのような影響は受けない)が、Cドライブに仮想メモリがあればアクセスを遅くしてパフォーマンスを悪くします。しかも、仮想メモリは上記の通り読み書きがメモリ並みに頻繁なので寿命を考えると間違えなく別の媒体に移動したほうが良いです。(ぶっちゃけSSDは自分のPCでは使用したことが無いんで仮想メモリの設定がどの程度影響を与えるかはわかりかねますが。)
 よくメモリを多く積んでおけば仮想メモリは不要なので削除(ページングファイルなし)して良いよ^^とか高速化するぜ。と書いてあるサイトが有りますが、仮想メモリを利用するソフトも有るらしく場合によってはクラッシュします(参考)。 実際にやってみればいいと思いますが(ゲス) あとあと面倒なことになるかもしれないので安物買いの銭失いみたいなことになりたくない場合は場所を移動して容量を極力少なくする程度にしておいたほうが良いと思います。

Windows 10にしたらディスク領域不足の通知が消えなくなった

 X61にいきなり入れるのはちょっと気が引けたので、今月に入って試しに自宅PC(デスクトップ)のOSをWindows10にアップグレードしました。そこでいろいろと苦戦を強いられ(IMEのインストールがなかなか独占仕様だったり)時間を食わされたのですが、解決してない問題でも特に気になることが。

 タイトルでもう書いちゃってますが、タスクバーの片隅にはディスク領域不足の通知を知らせるアイコンがありました。オフにしたにも関わらず。ノ( ( ゜) o ( ゜) )\キャー
 なんでディスク領域不足に陥っているかというと仮想メモリを別領域(パーティション)にしているから。
何故そうしたかについては下記参照(仮想メモリのパーティション分離に関する記事)。

断片化を防ぐ(デフラグしなくていい)方法

それで他にファイルを保存していないし勿体無いのでパーティションサイズは仮想メモリサイズギリギリに設定しています。だから、普段からディスク容量不足上等です。

 でも今回はそれ自体が問題では無いんですよ。

 Windows 7時代からディスク領域不足の通知はしないように設定していました。当たり前ですが通知はされません(そのせいでCドライブのパンクに気づかなかったのは内緒)。

オフにしている

Windows 10でも同じように設定をしてと。これで・・・
……おや!?Windows 10の ようすが……!



img1448793300748.png

なにぃっ!?


証拠1

いや、オフにしたし。


証拠2

ファッ!?
さっきオフにしたじゃん。

そうです。何回オフにしてもいつの間にかONになって出てくるんです。コイツ。

おまけに、Win10では通知があるとタスクバーを自動的に隠す設定をしていてもタスクバーが隠れない。設定してる人には致命傷です。設定してない人には関係ないけど。

 因みにアイコンをクリックすると、
ディスク クリーンアップ

ディスク クリーンアップが出てきますが、ご覧のとおり0バイトが削除されて0バイトが増加するようです。ちょっと良くわかんないですね。俺はお前をクリーンアップする方法が知りてえよ。
ページファイルしか置いてないんだから削除するものなんてあるわけ無いないんだけど気付いてくれないか。
(実行してもしばらくするとまた出てきます。消すと増えます

 もしかしたら別に理由があるかもしれないし、設定がおかしいのかも知れない?です。解決した人とか間違ってたりしたら教えていただけると当方少し気持ちが穏やかになります。

進展があれば報告したいと思います。

(12月8日追記)
不満がある場合はスタート → すべてのアプリ → Windows フィードバック から報告できるようになっているので、Windows 10を使い続けるつもりだという人はどんどん報告していきましょう。
(12月21日追記)
続きの記事を公開しました。

スポンサードリンク

ブログ内検索

プロフィール

ふじこlp

Author:ふじこlp
はてなブログへ移行しました。https://higechira.hatenablog.com/

ゆとりの大学生です。どれくらいゆとりかというと土曜日に通常授業を受けたことがただの一度もありません。

IBM時代のT43は観賞用となりましたが、X61は現役。
スクエアThinkPad X Series 最高です。
MacBook Pro 始めました。がやはりThinkPadに勝る打ち心地は存在しませんね。

カレンダー

11 | 2019/12 | 01
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31 - - - -

天気予報


-天気予報コム- -FC2-

フリーエリア

ブロとも申請フォーム

QRコード

QR

アクセスカウンター