Ubuntu'da belirli bir işlem için ayrılan toplam belleği nasıl bulabilirim?
Ubuntu'da belirli bir işlem için ayrılan toplam belleği nasıl bulabilirim?
Yanıtlar:
Deneyin:
pidof bash | xargs ps -o rss,sz,vsz
Geçerli bash
kabuğ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 man
sayfa seçeneği ps
ile 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,sz
BSD stili v
seçeneğini (tire yok) kullanabilirsiniz.
pmap
Bir işlemin bellek haritasını gösteren hangisini kullanabilirsiniz :
pmap -p pid
Bu konuda daha fazla bilgi için man sayfasına bakınız man pmap
veya pmap (1) 'e bakınız: işlemin bellek haritasını rapor edin - Linux man sayfası .
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
, htop
vb ....). 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/maps
vb ... 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/status
vb.
Ayrıca bkz . LinuxAteMyRam .