動態檢視乙個程序的記憶體使用
複製** **如下:
1、top命令
top -d 1 -p pid [,pid ...] //設定為delay 1s,預設是delay 3s
如果想根據程式設計客棧記憶體使用量進行排序,可以shift + m(sort by memory usage)
靜態檢視乙個程序的記憶體使用
複製** **如下:
1、pmap命令
pmap pid
2、ps命令
ps aux|grep process_name
3、檢視/proc/process_id/資料夾下的status檔案
name: php
state: r (running)
sleep**g: 0%
tgid: 21574
pid: 21574
ppid: 10005
tracerpid: 0
uid: 1000 1000 1000 1000
gid: 100 100 100 100
fdsize: 256
groups: 16 100
vmpeak: 161740 kb
vmsize: 161740 kb
vmlck: 0 kb
vmhwm: 107144 kb
vmrss: 107144 kb
vmdata: 106192 kb
vmstk: &www.cppcns.comnbsp; 84 kb
vmexe: 5588 kb
vmlib: 7884 kb
vmpte: 268 kb
threads: 1
sigq: 0/69632
sigpnd: 0000000000000000
shdpnd: 0000000000000000
sigblk: 程式設計客棧0000000000000000
sigign: 0000000000001000
sigcgt: 00000001818040a7
capinh: 0000000000000000
capprm: 0000000000000000
capefffzezfnrq: 0000000000000000
cpus_allowed: 00000000,00000000,00000000,0000000f
mems_allowed: 1
任務虛擬位址空間的大小 vmsize
應用程式正在使用的物理程式設計客棧記憶體的大小 vmrss
本文標題: 深入理解linux下檢視程序記憶體的使用情況
本文位址:
深入理解Linux核心 程序
1 程序的靜態特性 程序 程式執行時的乙個例項 程序描述符 task struct 程序的基本資訊 thread info 指向記憶體區描述符的指標 mm struct 程序相關的tty tty struct 當前目錄 fs struct 指向 檔案描述符的指標 files struct 所接收的訊...
深入理解 linux swapper 程序
對於父程序已經終止的所有程序,他們的父程序都改變為init。在乙個程序終止時,核心逐個檢查所有活動的程序,以判斷他是否是正要終止程序的子程序,如果是,則將該程序id更改為1,這種方法保證了每個程序都有乙個父程序。如果子程序在父程序終止之前終止,父程序如何能做相應檢驗得到子程序的終止狀態呢?對此的回答...
深入理解Linux核心 程序位址空間
給核心分配記憶體和給使用者態程序分配記憶體是有區別的 1 核心的優先順序最高,如果某個核心函式請求動態記憶體,不會被延時 2 核心信任自己,不必保護措施 3 使用者態程序對動態記憶體的請求被認為不是緊迫的,總是被盡量推遲分配 4 使用者程序總是不可信任的 程序的位址空間 1 由允許程序使用的全部線性...