Ubuntu'da belirli bir işlem için ayrılan toplam belleği öğrenin


15

Ubuntu'da belirli bir işlem için ayrılan toplam belleği nasıl bulabilirim?


1
Ps-aefl'i denediniz ve SZ sütununa baktınız mı?
mdpc

2
“Ayrılan belleği bulmak” ile ne demek istiyorsun? Sürecin ne kadar bellek kullandığını bilmek ister misiniz?
Gilles 'SO- kötü olmayı bırak'

Yanıtlar:


14

Deneyin:

pidof bash | xargs ps -o rss,sz,vsz

Geçerli bashkabuğunuzun bellek kullanımını bulmak için (kullandığınız varsayılarak bash). Araştırdığın bashşeyi değiştir . Belirli bir sürecin peşindeyseniz, kendi başına kullanın:

ps -o rss,sz,vsz <process id>

Sayfadan man:

RSS: yerleşik ayar boyutu, bir görevin kullandığı değiştirilmemiş fiziksel bellek (kiloBay cinsinden).

SZ: sürecin ana görüntüsünün fiziksel sayfalarındaki boyut. Buna metin, veri ve yığın alanı da dahildir.

VSZ: KiB cinsinden işlemin sanal bellek boyutu (1024 bayt birim).

İçin mansayfa seçeneği psile ilgili tüm olası argümanları listeleyecektir -o(aralarından seçim yapabileceğiniz çok az şey vardır). Bunun yerine, alternatif bir bellek düzeni gösteren -o rss,szBSD stili vseçeneğini (tire yok) kullanabilirsiniz.


Teşekkürler gareth ... SZ'nin bu işlem için ayrılan bellek olduğunu mu söylüyorsunuz?
Anjali

4
Burada , ve arasındaki ilişkiyi açıklayan iyi bir KG var . RSSSZVSZ
garethTheRed


0

Ubuntu'da belirli bir işlem için ayrılan toplam belleği nasıl bulabilirim?

Bir işlem için ayrılan belleğin ne olduğunu tanımlamıyorsunuz ve aslında bu oldukça karmaşık bir soru (paylaşılan bellek eşlemeleri hakkında - ayrıntılar için bkz. Mmap ( 2) ; POSIX paylaşılan belleği hakkında - daha fazla bilgi için shm_overview (7) ; sayfa önbelleğindeki açık dosyalar için kullanılan bazı sayfalara ne dersiniz ; vb ...)

Sen kullanabilirsiniz /proc/(BTW tarafından kullanılan dosya sistemi ps, pmap, top, htopvb ....). Daha fazla bilgi için proc (5) bölümünü okuyun . Eğer kullanabilirsiniz pid 1234 süreci için özellikle /proc/1234/status, /proc/1234/statm, /proc/1234/mapsvb ... Onlar ile bütün görebildiğim metinsel sözde dosyaları (borular gibi bir bit) vardır cat(veya okumak sırayla bazı programı içinde). BTW, kullanabileceğiniz bir programın içinden /proc/self (sözde bir symlink), örneğin sıralı olarak okuyun /proc/self/statusvb.

Ayrıca bkz . LinuxAteMyRam .

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.