同じプログラムの異なるインスタンスが異なる量のメモリを使用するのはなぜですか?

同じプログラムの異なるインスタンスが異なる量のメモリを使用するのはなぜですか?

私は5つのデフォルトのxtermインスタンスを起動しましたが、何もしませんでした。

htopの出力を見ると、インスタンスは異なる量のRAMを使用しているようです。

VIRT        RES       SHR       Command
12632       8528      4916       xterm
12632       8528      4920       xterm
12616       8496      4900       xterm
12616       8464      4868       xterm
12616       8452      4856       xterm

その差が小さいことはわかりましたが、本当に好奇心を刺激しました。 Googleは役に立ちません。なぜこんなに小さな違いがあるのか​​知っている人はいますか?

ベストアンサー1

ほとんどのプログラムは、実行中に必要に応じてメモリを割り当てます(オペレーティングシステムに追加のメモリ要求)。メモリをほとんど返しません(ほとんどの場合、しばらく実行した後、メモリはさまざまなサイズの使用済みフラグメントと現在使用可能なフラグメントのモザイクになり、返すことができる連続領域を確保するために圧縮することはほとんど価値のない追加作業です。です)それ)。したがって、メモリ使用量が異なります。

おすすめ記事