-2

私は Linux について研究する必要があります。質問の1つは次のとおりです。

実行中のシステムで、free 列の free コマンドの出力が最初の 2 行で同じになる可能性はありますか? どうすればこれを強制できますか?

私はググって、これらの値の意味を見つけたと思います。バッファとキャッシュを一緒に追加し、それを free に追加すると、バッファとキャッシュの free の値が得られます。つまり、必要に応じてアプリケーションが使用できるメモリです。

したがって、これらの2行の値は同じである可能性があると思いますが、それは使用法によって異なります。しかし、どうすればいいのかわかりません

4

1 に答える 1

5

最初の行と 2 番目の行の違いは、最初の行では空き列の下のキャッシュとバッファーがカウントされないのに対し、2 番目の行ではカウントされることです。次に例を示します。

                    total       used       free     shared    buffers     cached
[1]    Mem:       4028712    2972388    1056324          0     315056     835360
[2]    -/+ buffers/cache:    1821972    2206740


used[2] = used[1] - buffers - cached
free[2] = free[1] + buffers + cached

したがって、あなたの質問に対する答えは次のとおりです。これらの 2 つの行が同一である (または少なくとも互いに非常に近い) 可能性はありますが、すべてのキャッシュを解放/使い果たす必要があるため、実際のシステムではそうではありません。試してみたい場合は、キャッシュを削除する方法や、使用可能なすべての RAM を消費するプログラムを作成する方法からいくつかの提案を試してください。

于 2013-02-14T14:26:15.443 に答える