解放RAMユーティリティはどのようにしてRAMを解放しますか?


14

プログラムが使用していたRAMを破棄するか、ハードディスク上のページファイルに転送しますか?または、アドレス指定されていないRAMをクリーンアップするだけですか?

回答:


18

RAM free'ersは、他のプログラムにほとんどのページをディスクにスワップさせます(多くの場合、多くのメモリを割り当てます)。これらのプログラムがしばらくこれらのページを必要としない場合(たとえば、最小化されたウィンドウであり、何も実行していない場合)、これによりRAMが解放されます。通常、ディスクにプッシュされるものを制御することはできないことに注意してください-それだけです。

問題は、RAMを空のままにすると、それ自体がまったく役に立たないことです。別の実行中のプログラムがそのRAMを必要とする場合、RAMを無料で実行したときではなく、その時点でページングが発生していました。そして、何かをするためにディスクにプッシュされたプログラムが欲しい瞬間に(たとえば、Facebookでステータスを確認するために5分ごとに起動する場合)、それを実行するためにスワップインするだけです。

本当にRAMの問題がある場合は、いくつかのオプションがあります。

1)RAMを増やします。シンプル、直接、おそらく高価であるか(OSとハードウェアの構成によって異なります)。

2)より少ないプログラムを実行します。実行しているものが少ないほど、実行しているものにより多くのRAMを使用できます。これには、リソースをあまり消費しないユーティリティの選択も含まれます。たとえば、IMユーティリティを常に開いたままにしておく場合、すべての派手な機能を備えたものではなく、メモリフットプリントの小さいものを選択します。

3)より高速なディスクを入手します。これにより実際にRAMが増えるわけではありませんが(明らかに)、ページングファイルに高速なディスクを使用すると、メモリのページのスワップにかかる時間が短くなり、目立たなくなります。

他の本当のオプションはありません。


「RAMを解放すること自体は、まったく役に立ちません。」しかし、ユーザーがよくアクセスするプリフェッチされた情報であるため、Windows Vista / 7が最小限の空きRAMを残す方法について人々が泣き言を言うのを防ぎます。
ニックT

@Nickの人々は、Windowsのプリフェッチが原因で、多くのRAMがインストールされているマシンにWin7またはVistaに空きRAMがないことを嘆いていることは、ユーザー教育の問題です。これは、プリフェッチャーが使用していたメモリを割り当ててから解放すると、プリフェッチされたすべてのデータが正当な理由なしにフラッシュさ、新しいアプリケーションを実行するときにキャッシュされないため、システムが遅くなるという引数で対抗する必要があるものですまた、プリフェッチャーが時間とリソースを無駄にして新しく空になったRAMを補充することも意味します。プログラムがとにかくそれを必要とする場合、RAMは解放されます...
木梅

また、WindowsはRAMをファイルキャッシュとして使用します。これにより、効果的なディスクアクセス速度が向上するためです。これについても、さまざまな情報不足の泣き言が表示されます。多くのWindowsシステムでは、RAMがほとんどないように見える理由は、通常、「RAMディスク」キャッシュとして膨大な量が使用されているためです。プログラムがより多くのメモリを必要とするため、これに使用される量は動的です。ファイルキャッシュに使用される量は削減されます。OSを書いた人たちは、一部の人が私たちに考えて欲しいほど無知ではありませんでした。
すぐに

11

基本的に、RAM解放者が行うことは、Windowsが他のプログラムをディスクに強制的にスワップし、確保したRAMを解放するために大量のRAMを予約することです。これを行うためのさまざまな戦略があるかもしれませんが、私は内部を恐れていません。

スワップされたプログラムがそのメモリのシェアを取り戻す必要があるとき来るので、それ可能な場合、より多くの物理RAMを取得することをお勧めします...


Windowsは、すべてのアプリケーションに未使用のキャッシュを解放するように求める「Low_MEMORY」メッセージを送信します。SQLサーバーとファイルキャッシュが消去されるため、余分な空き領域ができます。
Barfieldmv

8

オペレーティングシステムをだまそうとすることで、何かが行われているような印象を与えます。このようなアプローチは、ほとんどの場合、ピーターに盗んでポールにお金を払うというケースです。

または...長い目で見れば何も得ようとしないなら...何も得られません。

言い換えれば、私はこの種のことを欠点と見なします。RAMが不足している場合、長期的な最善の技術的解決策は、購入することです。


2

Windowsは、「LOW_MEMORY」メッセージを送信して、すべてのアプリケーションに未使用データを解放するように要求します。SQLサーバーとファイルキャッシュがクリアされるため、多くの余分な空き領域ができます。これにより、起動時に1ギガの領域を簡単に取得できるWindowsファイルキャッシュもクリアされます。

大量のメモリを割り当てることは、LOW MEMORYメッセージをトリガーする簡単な方法ですが、よりスマートなシステムが存在する可能性があります。


2

他の回答とともに、RAMDoublerのような古いツールはメモリ内のRAMを圧縮するために使用され、アクセス時のCPUコストは明らかでした。そのアクセスコストのために、これを誰ももうやらないと思います。

編集:誰も .. Appleの外には誰もいない 。より具体的には、CPU速度とメモリテクノロジ(特にディスク)の速度の差は非常に大きいため、特にディスクにヒットするための電気(読み取り:バッテリー)コストでは、これがより良いオプションになっています。


1
メモリ圧縮は、SoftRAM詐欺から受けた悪い評判を実際に上回ることはありませんでした。RAMDoublerとMagnaRamは両方とも正当な製品でした。技術はまだ存在しています。IBMはハードウェアMTXとソフトウェアAMEベースのメモリ圧縮の両方を開発し、VMWareはほとんどの製品ラインでメモリ圧縮を使用しています。
ケネスコクラン

1
これは賢明な設計であり、ある時点でカーネルに入る可能性があります:lwn.net/Articles/397574
東武

1

通常、システムはより多くのページングファイルと少ないRAMを使用するように強制します。RAMはハードディスクよりも速いため、最悪の場合、速度が低下します。せいぜい、より多くのRAMが利用可能ですが、追加の速度はありません。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.