Linux bellek sistemi, bellek optimizasyonu yardımcı programları ve bellek paylaşımının birçok rutini ile doludur, bu da belleğin nasıl paylaşıldığı ve tüketildiği, hantal bir yaklaşım fikrini oluşturur. Ps ve diğer ps ile ilgili komutların çıktıları veriden çıktılarını işler /proc
dosya sistemi altında . Özellikleps
, RSS (yerleşik boyut belleği) ve VSIZE (Sanal bellek boyutu) her ikisi de önemlidir, ancak VSIZE belleğin doğru kullanımını göstermez ve VSIZE ve rss arasındaki fark, başlatma sırasında programa gerçekte amaçlanan ve tahsis edilen şeydir, ancak henüz referans verilmemiş olabilir. Program gibi birçok kitaplık bağlı olabilir, ancak gerçek program çalışma zamanında henüz başvurulmadığı için henüz yüklenmezler. RSS, program tarafından kullanılan toplam belleği verir, ancak bellek tüketiminin gerçek bir resmini vermeyebilir, çünkü ayrılan belleğin çoğu aynı işlemin veya diğer işlemlerin diğer örnekleriyle paylaşılabilir. Altına bakmak /proc/<processid>/maps
hafızanın nasıl kullanıldığına dair kaba bir fikir verebilir, ancak sessizce bazen yanıltıcı olabilir. kullanımpmap -x <pid>
komut satırından yayılmayı görmek faydalıdır.
Genellikle daha iyi araçlar free
ve vmstat
. free
genel olarak geçerli bellek tüketimi ayrıntılarını verir ve vmstat, ne sıklıkta güncellendiğini görmek için kullanılabilir.