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 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.
pmapBir 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 pmapveya 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, 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 .