Ubuntu でキャッシュを無効にする方法を教えてください。Ubuntu はより多くの RAM を消費しますか?

Ubuntu でキャッシュを無効にする方法を教えてください。Ubuntu はより多くの RAM を消費しますか?

先ほど見たハッカーニュース次のようなことが言及されている「Linux が RAM を食べてしまった」Linux がより多くの RAM を消費するというのはどの程度本当でしょうか。

アプリケーションのキャッシュを削除するためのガイドを誰かが提供してくれると助かります。

最初は、私の PC は今よりも速く起動していました。多くのプログラムをインストールした後、この問題に直面しています。

答え1

あなたはウェブページを読んでいません。あなたが提供したリンクはあなたが主張していることとはまったく逆なので、ここで情報をお伝えしましょう:

どうしたの?

Linux はディスク キャッシュ用に未使用のメモリを借用しています。これにより、メモリが不足しているように見えますが、実際にはそうではありません。 すべて順調!

なぜこんなことをするのでしょうか?

ディスク キャッシュにより、システムが大幅に高速化されます。 欠点はないただし、初心者を混乱させるだけです。アプリケーションからメモリが奪われることは一切ありません。

さらに多くのアプリケーションを実行したい場合はどうすればいいですか?

アプリケーションがより多くのメモリを必要とする場合、ディスク キャッシュが借りたチャンクを取り戻すだけです。ディスク キャッシュはいつでもすぐにアプリケーションに返すことができます。メモリ不足ではありません!

さらにスワップが必要ですか?

いいえ、ディスク キャッシュは、アプリケーションが現在必要としていない RAM を借りるだけです。スワップは使用しません。アプリケーションがより多くのメモリを必要とする場合は、ディスク キャッシュからメモリを取り戻すだけです。スワップは開始されません。

Linux がこれを行わないようにするにはどうすればいいでしょうか?

ディスク キャッシュを無効にすることはできません。ディスク キャッシュを無効にしたい唯一の理由は、ディスク キャッシュによってアプリケーションからメモリが奪われると考えているからです。しかし、実際にはそうではありません。ディスク キャッシュにより、アプリケーションの読み込みが高速化され、実行がスムーズになりますが、メモリが奪われることは決してありません。したがって、これを無効にする理由はまったくありません。

さて、退屈な説明を始めましょう:

Linuxの哲学は未使用のRAMは無駄なRAMです、したがって、それは何か有用なもので満たされる必要があり、それはキャッシュキャッシュとは、古くて遅い HDD/SSD からファイルを読み取る代わりに、それらの何倍も高速な RAM に読み込まれることを意味します。同時に、プログラムの起動が速くなり、頻繁にアクセスされるデータの操作が速くなり、パフォーマンスが大幅に向上します。

Ubuntu でキャッシュを無効にする方法は?

できない、というか、する必要はありません

Ubuntu はより多くの RAM を消費しますか?

ここで比較しているのは何でしょうか? Linux と Windows でしょうか? Ubuntu と他の Linux ディストリビューションでしょうか? Windows と Linux の場合、Linux は Windows よりもメモリ管理が優れており、メモリ フットプリントも小さくなっています。Ubuntu と他のディストリビューションの場合、オレンジとリンゴを比較しようとしている可能性があります。使用するウィンドウ/デスクトップ マネージャー、カーネル バージョン、適用されたパッチなどを考慮する必要があります。

Linux がより多くの RAM を消費するというのはどの程度本当でしょうか。

もう一度、何と比較しているのでしょうか?

アプリケーションのキャッシュを削除するためのガイドを誰かが提供してくれると助かります。

なぜでしょうか? メモリは、必要なときにすぐに使用できるようにプログラムが用意してあります。Linux カーネルは、「キャッシュされた」メモリを「使用中」であるため「空き」メモリとしてカウントしませんが、キャッシュされたメモリは回復可能であり、破棄されます。すぐに必要なアプリケーション

最初は、私の PC は今よりも速く起動していました。多くのプログラムをインストールした後、この問題に直面しています。

起動時間は非常に主観的なものであり、複数のプログラムがインストールされている可能性があるため、起動時間が遅くなるのは当然です。300MB のデータベースをレビューする Mongo DB を削除したら、起動時間が約 75% 短縮されました。そのプログラムだけで起動時間が約 2 分長くなり、起動時に起動しないように無効にしたところ、システムの起動時間が 1 分を超えました。起動時にどのプログラムが起動するかを確認し、代わりに無効にする必要があります。キャッシュを無効にしても、システムの起動が速くなるわけではなく、逆にシステム全体のパフォーマンスが低下します。

アプリケーションは次回起動が早くなるようにキャッシュを作成しますよね? それらのアプリケーション キャッシュをクリアしたいだけですか?

アプリケーションによって異なりますが、ほとんどのアプリケーションは、特に理由がない限りキャッシュを使用しません。たとえば、ブラウザにはキャッシュがあります。ただし、このキャッシュはインターネットのオブジェクト (画像、JavaScript、CSS、静的コンテンツなど) のキャッシュであり、次回のアクセスでは Web ページの読み込み時間が速くなります。他のアプリケーションは、サムネイルや頻繁にアクセスされるデータなどを保存するためにキャッシュを使用します。これらのアプリケーションは、ディスク内キャッシュを使用します。そのキャッシュは、アプリケーションが起動するまでメモリに読み込まれず、キャッシュされたメモリとしてカウントされません。

通常、アプリケーションはキャッシュされたページをカーネルに送信できません。メモリ キャッシュはカーネルによって完全に制御され、何をキャッシュするかを決定します。

答え2

ディスク キャッシュまたはプログラム キャッシュを無効にすると、コンピューターの速度が低下するだけです。ソースとしてリンクしたサイト全体を読めば、それが事実であることがわかるはずです。そうすれば、この議論は行われないでしょう。

ハード ドライブ キャッシュとプログラム キャッシュは、データをメモリに保存します。これにより、プログラムの起動、使用、ファイルのオープンが高速化されます。これが必要な理由です。

ここでの誤解は(私が思うに)、メモリが割り当てられるため、使用可能な RAM の量が制限されると考えていることです。これはまったく事実ではありません。キャッシュされた RAM をクリアして、ロードされたプログラムで埋めるのには、まったく時間がかかりません。

したがって、この機能を無効にする理由はありません。これは Linux のコアに統合されており、Ubuntu の機能ではないため、無効にできるかどうかもわかりません。

キャッシュは良いもので、多くのプログラムや操作を高速化します。この機能を備えているのは Ubuntu や Linux だけではありません。私の Windows 7 ゲーム用コンピューターにも同じ機能があります。

何もしていないメモリをコンピューター上に置くのはハードウェアの無駄であり、望ましいことではありません。そのため、キャッシュは良いことです。

関連情報