1

メモリリークがあると言うとき、それは仮想メモリまたは物理メモリのリークを意味しますか?とにかく未使用のページを交換することで物理メモリが節約されるため、仮想メモリスペースのみが無駄になるという意味で、実際にはVMのリークのように感じます。しかし、それでもVMスペースを浪費します。どうか明らかにしてください。

コマンドを使用してlinux top、メモリリークが発生している可能性があることを通知することはできますか?

4

1 に答える 1

0

仮想メモリは本質的に (実用的な意味で) 物理メモリと同じで、キャッシュの目的でシステムのディスク ドライブに拡張されているだけです (ページング ファイルを参照)。ディスク上にあるため、データを読み取る前にディスクから物理メモリに「スワップ」する必要があるため、アクセスがはるかに遅くなります。プログラムにメモリ リークがある場合、両方がいっぱいになります (または、少なくともプログラムで使用できるメモリの制限まで)。

top を使用して、多くのメモリを消費しているプロセスを確認できます。プログラム内のメモリ量が異常な速度で増加し続ける場合は、メモリ リークが発生している可能性があります。valgrind のようなプログラムを使用すると、より簡単に識別できます: http://en.wikipedia.org/wiki/Valgrind

于 2012-05-31T18:53:16.647 に答える