ps 報告當前系統的程序狀態

2022-07-21 03:24:07 字數 1904 閱讀 9353

ps aux最初用到unix style中,而ps -ef被用在system v style中,兩者輸出略有不同。現在的大部分linux系統都是可以同時使用這兩種方式的。

linux上程序有5種狀態:

執行(正在執行或在執行佇列中等待)

中斷(休眠中, 受阻, 在等待某個條件的形成或接受到訊號)

不可中斷(收到訊號不喚醒和不可執行, 程序必須等待直到有中斷發生)

僵死(程序已終止, 但程序描述符存在, 直到父程序呼叫wait4()系統呼叫後釋放)

停止(程序收到sigstop, sigstp, sigtin, sigtou訊號後停止執行執行)

ps工具標識程序的5種狀態碼:

d 不可中斷 uninterruptible sleep (usually io)

r 執行 runnable (on run queue)

s 中斷 sleeping

t 停止 traced or stopped

z 僵死 a defunct (」zombie」) process

-a:顯示所有終端機下執行的程式,除了階段作業領導者之外。

a:顯示現行終端機下的所有程式,包括其他使用者的程式。

-e:此選項的效果和指定"a"選項相同。
-a:顯示所有程式。
e:列出程式時,顯示每個程式所使用的環境變數。

-f:顯示uid,ppip,c與stime欄位。

f:用ascii字元顯示樹狀結構,表達程式間的相互關係。

-u《使用者識別碼》:此選項的效果和指定"-u"選項相同。

u:以使用者為主的格式來顯示程式狀況。

-u《使用者識別碼》:列出屬於該使用者的程式的狀況,也可使用使用者名稱來指定。

x:顯示所有程式,不以終端機來區分。

說明:user:該 process 屬於那個使用者賬號的

pid :該 process 的號碼

%cpu:該 process 使用掉的 cpu 資源百分比

%mem:該 process 所占用的物理記憶體百分比

vsz :該 process 使用掉的虛擬記憶體量 (kbytes)

rss :該 process 占用的固定的記憶體量 (kbytes)

tty :該 process 是在那個終端機上面運作,若與終端機無關,則顯示 ?,另外, tty1-tty6 是本機上面的登入者程式,若為 pts/0 等等的,則表示為由網路連線進主機的程式。

stat:該程式目前的狀態,主要的狀態有

r :該程式目前正在運作,或者是可被運作

s :該程式目前正在睡眠當中 (可說是 idle 狀態),但可被某些訊號 (signal) 喚醒。

t :該程式目前正在偵測或者是停止了

z :該程式應該已經終止,但是其父程式卻無法正常的終止他,造成 zombie (疆屍) 程式的狀態

start:該 process 被觸發啟動的時間

time :該 process 實際使用 cpu 運作的時間

command:該程式的實際指令

1) 程序使用者id(uid),

2) 程序id(pid)

3)父程序id(ppid)

4) 0

cpu排程情況(c)

cpu用於計算執行優先順序的因子。

5)程序啟動的時間(stime)

6) pts/0 啟動程序的終端名

7)程序共占用cpu的時間(time)

8)啟動程序的命令(cmd)

ps 命令檢視程序狀態

linux上程序有5種狀態 1.執行 正在執行或在執行佇列中等待 2.中斷 休眠中,受阻,在等待某個條件的形成或接受到訊號 3.不可中斷 收到訊號不喚醒和不可執行,程序必須等待直到有中斷發生 4.僵死 程序已終止,但程序描述符存在,直到父程序呼叫wait4 系統呼叫後釋放 5.停止 程序收到sigs...

linux程序狀態查詢 ps

系統維護的時候難免會遇到程序的狀態的查詢和管理,到底 什麼是r,有的是s,有的還是s 呢?一直有些混沌的問題,今天細細的來總結一下 ps是用來報告系統中程式執行狀況的命令這個是無可厚非的,linux程序的狀態 d 不可中斷睡眠 通常是在io操作 收到訊號不喚醒和不可執行,程序必須等待直到有中斷發生 ...

ps命令檢視程序狀態

在linux下程序有5種狀態 執行狀態 r 正在執行或在執行佇列中等待 睡眠狀態 s 休眠中,程序在等待事件的完成 不可中斷睡眠狀態 d 指的並不是cpu不影響外部硬體中斷,而是指程序不影響非同步訊號。程序通常會等 待io的結束 殭屍狀態 z 程序已經終止,但程序的描述符存在,直到父程序呼叫wait...