2017年10月26日Windowsで大量のファイルの読み書きを行ったり、長時間起動したままにしていたりすると、ソフトを終了させてもタスクマネージャーで確認すると大量の物理メモリが消費されたままになっている場合があります。そのような場合は、「Syncコマンド」を実行するとメモリが解放されるかもしれません。「変更済み」の物理メモリとはWindowsで大量のファイルの読み書きを行ったり、長時間起動したままにしていたりすると、上の画像のように大量のメモリが食いつぶされることがあります。ソフトを終了させても物理メモリ使用率が減らない場合もあります。何にメモリが食われているのでしょうか。その答えは、「リソースモニター」を起動すると分かります。メインメモリ16GB搭載)でリソースモニターを起動したときのスクリーンショットです。このときには様々なソフトを終了させましたが、実にメモリの半分以上が「変更済み」に持って行かれています。物理メモリが5つに色分けされて表示されているので、5つの分類について説明しましょう。上で説明した5つの領域のうち、ソフトを起動してもいない(終了させた)のに物理メモリが食われている原因となっているものは「変更済み」領域です。この領域のデータはディスクへの書き込みが必要であるにもかかわらず、まだ実際には書き込みが行われていません。通常であれば時間が経つとともに書き込みが行われますが、書き込みが行われるまでは他の用途へ転用することができないため、多くなりすぎると厄介です。今回解説する「Sync」は、この「変更済み」領域のデータをユーザーの指令でディスクに書き込ませ、他の用途へ転用できるようにする(物理メモリを解放する)ものです。Sysinternalsから、Syncをダウンロードしましょう。ダウンロードしたら、適当なフォルダにファイルを展開して中身を取り出してください。「sync.exe」と「sync64.exe」の2つが入っていると思います。32bit環境の人は必ず「sync.exe」を使うようにしましょう。64bit環境の人はどちらを使っても大丈夫ですが、「sync64.exe」のほうが64bitネイティブなのでベターかもしれません。OK)にコピーしてください。コピー先のパスは覚えておきましょう。C:\Windows\System32に放り込む場合はアクセス許可を要求されるので一手間かかるのですが。「Sync」は管理者権限のコマンドプロンプトから実行します。スタートメニューに「cmd」と打ち込んでコマンドプロンプトを引っ張り出し、右クリックして「管理者として実行」から起動します。C:\Windows\System32\sync64.exe)を入力し、それから半角スペースを挟んで「-r」と入力し、Enterキーを押します。C:\Windows\System32にsync64.exe(sync.exe)を放り込んだ場合は、上画像のようにいきなりsync64.exe(sync.exe)から入力できます。初回実行時にはライセンス条項が出るので、「Agree」を押します。バッチファイル編いちいちコマンドプロンプト起動するのは面倒くさいぜ!という方は、テキストエディタを起動して以下の文字列を写経(コピペ)し、「hoge.bat」(hogeの部分は任意の文字列)という名前でデスクトップにでも保存してください。部分は各自でsync64.exe(sync.exe)へのフルパスに置き換えること)完成したバッチファイルを右クリックし、「管理者として実行」しましょう。sync64.exe(sync.exe)が実行されます。当方の環境では、メモリ解放は多少促進されました。10GBものデータをいっぺんに書き込んで解放させるというのは流石に無茶振りが過ぎたようです。10GBも変更済みメモリが発生した場合は、素直に再起動したほうが良いと思います。前の記事:人材が必要ならば、他よりも良い条件で人を集めなければならない。「絆」や「やりがい」などの名のもとに劣悪な条件で無理やり人を集めようとしても、そうは問屋が卸さない時代だ。次の記事:新しい働き方が広まりつつある今、「雇われない人間」にも労基法やそれに準ずる法律による保護が必要になってきているのではないか。→このブログを応援する・寄付する当ブログでは暗号通貨による寄付を募っております。