2020年7月10日 星期五

top的S欄位:程序狀態

使用top看程序的執行狀態,在VIRT RES SHR和%CPU %MEM中間會有一個叫做S的欄位,這個欄位顯示的是程序狀態(Process Status)。由於每個處理器核心一次只能夠執行一個程序(process),故當程序數目超過處理器核心的時,勢必有些程序會暫時不被CPU處理(睡眠中),因此才會出現程序的執行狀態。一般而言,某個程序的狀態只會是下面5種的其中一種:
  • Rrunning,程序正在CPU裡面處理
  • Ssleeping,程序睡眠中、但可以用傳送signal去中斷程序
  • Duninterruptible sleep,睡眠中但無法用傳送signal來中斷程序
    常見於程序等待硬碟的時候
  • T:traced or stopped,程序暫停中
    常出現於Ctrl-Z將程序放置於背景中執行
  • Zzombie,程序死惹,它執行完成卻遲遲等不到父行程來抓exit code

參考資料

_EOF_

沒有留言:

張貼留言