常用
-
top
進(jìn)程模式 -
top –H
線程模式
輸出
第一行
** top - 23:57:58 up 9 days, 2:12, 4 users, load average: 0.38, 0.47, 0.43 **
- 第一行描述的是系統(tǒng)負(fù)載的整體情況
- load average(系統(tǒng)負(fù)載)刺彩,用Linux內(nèi)核的任務(wù)隊(duì)列的平均長(zhǎng)度表示向胡。0.38, 0.47, 0.43這三個(gè)數(shù)值分別是系統(tǒng)1分鐘前,5分鐘前投队、15分鐘前到現(xiàn)在的平均值。當(dāng)load average的數(shù)值/CPU邏輯核心數(shù)==1.0時(shí)闷沥,表示系統(tǒng)滿(mǎn)載運(yùn)行描焰。超過(guò)1.0時(shí),表示系統(tǒng)已經(jīng)超載運(yùn)行特恬,不堪重負(fù)员辩。
- 下面一段話引用自man page:
System load averages is the average number of processes that are either in a runnable or uninterruptable state. A process in a runnable state is either using the CPU or waiting to use the CPU. A process in uninterruptable state is waiting for some I/O access, eg waiting for disk.
第二行
** Tasks: 205 total, 2 running, 203 sleeping, 0 stopped, 0 zombie **
- 第二行描述了系統(tǒng)進(jìn)程/線程的基本情況。當(dāng)使用top是鸵鸥,task表示進(jìn)程奠滑;當(dāng)使用top –H時(shí),task表示線程妒穴。
- running – 狀態(tài)為T(mén)ASK_RUNNING的task數(shù)量宋税。
- sleeping – 狀態(tài)為T(mén)ASK_INTERRUPTIBLE或TASK_UNINTERRUPTIBLE的task數(shù)量。
- stopped – 狀態(tài)為_(kāi)_TASK_STOPPED的task數(shù)量讼油,正常的系統(tǒng)這種進(jìn)程狀態(tài)應(yīng)該很少杰赛。在收到一些“致命”的signal時(shí),task會(huì)進(jìn)入這種狀態(tài)矮台。
- zombie – 狀態(tài)為EXIT_ZOMBIE的task乏屯。在Linux中根时,一個(gè)task退出后,會(huì)進(jìn)入EXIST_ZOMBIE辰晕,需要由父task調(diào)用wait系列的函數(shù)對(duì)其進(jìn)行回收蛤迎。如果系統(tǒng)出現(xiàn)大量zombie的task,則很有可能是父task沒(méi)有對(duì)子task調(diào)用wait進(jìn)行回收或者產(chǎn)生太多task含友,父task還來(lái)不及回收替裆。(如果父task在子task之前退出了,則由init task回收zombie task)窘问。
第三行
** %Cpu(s): 4.3 us, 1.2 sy, 0.0 ni, 94.4 id, 0.0 wa, 0.0 hi, 0.1 si, 0.0 st **
- %Cpu(s)描述了多核CPU使用情況辆童。在top命令的交互界面輸入左上角的1可以看到不同CPU核的使用情況。
- us, user: time running un-niced user processes
- sy, system: time running kernel processes
- ni, nice: time running niced user processes
- id, idle: time spent in the kernel idel handler
- wa, IO-wait: time waiting for I/O completion
- hi: time spent servicing hardware interrupts
- si: time spent servicing software interrupts
- st: time stolen from this vm by the hypervisor
第四行
** KiB Mem: 3856200 total, 3201784 used, 654416 free, 221532 buffers **
- 第四行Mem是從OS的角度描述物理內(nèi)存的使用情況惠赫。具體見(jiàn)Linux命令:free把鉴。
第五行
** KiB Swap: 3999740 total, 485604 used, 3514136 free. 1374532 cached Mem **
- 第五行Swap顯示了虛擬內(nèi)存的使用情況。
- Cached Mem – 緩沖的交換區(qū)總量儿咱。內(nèi)存中的內(nèi)容被交換到Swap纸镊,而后又被換入到內(nèi)存。內(nèi)存中和Swap中的內(nèi)容都未被修改概疆,則相應(yīng)的內(nèi)存再次被換出時(shí)可不必再對(duì)Swap寫(xiě)入逗威。
第六行
** PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND **
- 這一行是下面描述各個(gè)進(jìn)程/線程的情況的標(biāo)題。