私は最近、Ubuntu Linuxファイルシステムが検索、ソート、makeなどのビルドコマンドなどの特定のコマンドの結果をキャッシュできることを知りました。
私は仮想マシンでUbuntuを実行しており、ほぼ4Gのメモリを割り当てたにもかかわらず、1日間効率的に再構築して処理した後、仮想マシンが非常に遅いようです。ある環境から別の環境、Windowsに切り替えることはできません。
だからここに投稿する理由は、毎回VMを再起動せずにこれらのキャッシュを消去する方法を知りたいからです。つまり、実際に速度低下の原因はキャッシュされた項目です。
答え1
Linuxのファイルシステムは、最近アクセスしたファイルをキャッシュします。これらのキャッシュはメモリが必要な場合は無効になる可能性があるため、パフォーマンスには影響しません。利用可能なすべてのページをディスクキャッシュとして使用すると、システムの全体的なパフォーマンスが向上します。
検索結果はキャッシュされません(たとえば、入力が変更されていない場合は、コマンドの実行を省略できるように、コマンドをいくつかのキャッシュされた出力に関連付けます)。これらは存在しますが、Ubuntuに統合されていません。
あなたの経験は異常であり、多くのメモリを使用したり、活動を引き起こすいくつかのバックグラウンドプロセスに非常に似ています。次のような場合は、top
コマンドを実行して実行中の内容を確認してください。
ディスクアクティビティの定期的なソースは、updatedb
より高速な検索のためにファイルシステムをインデックス化するプログラムです(これはlocate
コマンドと共に使用されます)。このパッケージはUbuntuシステムに付属しており、cron
毎日実行される予定です。