Hiberfil.Sys と Pagefile.Sys と Swapfile.Sys
小生のPCはMemory24GBの15インチのNotePC(C areaはソリッドステート250GB DはCD ROM Eは500GBのHDD) Windows8.1(Windows10にしたこともあるが)である。 現状ではHiberfil.Sys 19GB(20,470,714,368バイト) Pagefile.Sys 1.5GB(1,610,612,736バイト) Swapfile.Sys 16MB(16,777,216バイト)である。 これらについて、いろいろな説明がなされているが、適宜選択するとすれば、 https://www.partitionwizard.jp/partitionmagic/delete-hibernation-file-windows-10.html https://freesoft.tvbok.com/tips/pc_windows/pagefile-hiberfil-sys.html https://pandaignis.com/wp/47158.html といったところだろうか。 つまり、Swapfile.SysがWindows8以降の新規のファイルであるが、そのほかの2つはWindows7等でも 存在していたものである。細かい役割はWindows8とそれ以前で若干異なる部分があるかもしれないが、 Windows8以降でいうと、概略以下のとおりである。 Hiberfil.Sys 電源管理で「休止状態」にしたときに書き出されるファイル ただし、電源管理で「休止状態」をオフにしてもHiberfil.Sysは存在する。 Hiberfil.Sysをなくするには管理者モードでコマンドプロンプトで次の通り。 Powercfg.exe -h off (または、Poercfg.exe /hibernate off) 復活するには、off をonと変えるだけ。(.exeは要らない) 例えば Powercfg -h on 要するに、Cから他へは移動できないか、なくすだけ。 offにしてみる。==> 休止状態が消える。また、高速起動も電源管理から消える。 つまり、高速起動&休止状態(HDDに状態保持=Hiber.Sys) ーーHiber.Sys必要 Sleep(Memoryに状態保持)-------------------------------------Hiber.Sys不要 休止後の立ち上げとLogon(高速起動) はどちらもほぼ19秒 Sleep後の立ち上げそのものは、3秒ちょっと。 Pagefile.Sys 大量のアプリケーションを起動したりしてメモリが足りなくなった場合、 HDDやSSDをメモリ代わりにするための予約領域 いわゆる仮想メモリー。 メーカーがゲーム機も手掛けている点からかなり多めであることは事実。たしかにSSDより 速度は落ちるものの、仮想メモリー不足が起きにくい状態とも思えるので、なくすのは不味と して、別エリアにおけるのであれば、私の場合、E-areaにおいてもよかろう。 一度E:においてみたが、もとのとおり、C:にシステム管理サイズにしておいてある。 もし、変更するなら、下記の通り。 [コントロールパネル]>[システム]>[詳細設定]>[パフォーマンス]>[詳細設定]> [仮想メモリ]でページファイルの設定が可能 なお、RegistryのMemoryManagementのClearPageFileAtShutDownを1にすると(通常は0) ここに格納されている個人情報などを落とす時に(Shutdown時)クリアするなどで 通常5秒のところ 56秒かかる。再起動でも(高速スタートがOffになることもあり)0だと44秒のところ1にすると 1分44秒ーつまり1分余分にかかる。はっきりいって、メモリを沢山積んでいるので仮想メモリは 不要ともいえるが、なくすのは不味と言われる理由が個人情報などなのかよくわからない。 Swapfile.sysが当Pagefile.Sysを0にするとなくなるということだが、その際には一瞬かもしれないが 0になることもあるわけで、その際は個人情報はメモリに保存されるのだろうか。 Swapfile.Sys ユニバーサルアプリ、Windowsストアアプリ、メトロアプリ、モダンアプリ、 Windows 8アプリ、Windows 8スタイルのUIアプリなどのサスペンド/レジュームを素早く行うため のファイル これを移動する方法は用意されていないが、リンク化してしまう方法があるとか。 ただ、それを行うには一旦ページファイルをゼロにする必要がある。(ページファイルを なしにするとswapfileもなしになる) ページファイルの設定で、すべてのドライブでページファイルを「なし」にして再起動 コマンドプロンプト(管理者権限)から以下のコマンドを実行(移動先がEドライブの場合) mklink e:\swapfile.sys c:\swapfile.sys 最初の図は mklink C E としているが、間違いなりにうまくいっちゃっているようだ。 以下に正しいと思われる図を示しておこう。 再びページファイルの設定で、ページファイルを使用する設定に戻す ![]() 正しい流れは以下の通り。 まず、CからEにうつすというか、シンボリック リンクを作成する前にPagefileを0にする。 そこで、mklink e:\swapfile.Sys c:\swapfile.sysとする。 ![]() そのあと、Pagefile.Sysを0から適当な大きさとし、Eに作成する。 EのSwapfile.Sysはシンボリックリンクである。Cには本体のSwapfile.Sysが存在する。 ![]() なお、これをやめ、また元の状態に戻す時は、いったん、Pagefile.Sysを0にすると、本来のC:¥SwapFile.sys は消える。しかし、シンボリックリンクは消えないので、手動削除可能。rmdirを行う必要はない。 SymbolicLinkの参考例 サンプル1 mklink P:\Options\MyApp.ini %CD%\myopts.ini [拡張構文] カレントディレクトリにある「myopts.ini」を指すファイルシンボリックリンク「MyApp.ini」を「P:\Options」以下に作成します。シンボリックリンクのパスを絶対パスにするため拡張機能が有効になっているときに使用できる「CD」環境変数を用いています 現状 ごちゃついているが、Remark.htmlの纏めを参照されたい。 唯一遅くなったのは、高速起動なしのMemoryManagementのClearPageFileAtShutdownを0から1に したときにShutdownが50秒以上かかる点が気になるくらい(通常は6秒程度)かな (Remark.htmlの下のほうに日々実験結果を記している)
| |