Linux中進程有哪幾種狀態?在ps顯示出來的信息中,分別用什么符號表示的?


答:

(1)不可中斷狀態:進程處於睡眠狀態,但是此刻進程是不可中斷的。不可中斷,指進程不響應異步信號。

(2)暫停狀態/跟蹤狀態:向進程發送一個SIGSTOP信號,它就會因響應該信號而進入TASK_STOPPED狀態;當進程正在被跟蹤時,它處於 TASK_TRACED這個特殊的狀態。正被跟蹤”指的是進程暫停下來,等待跟蹤它的進程對它進行操作。

(3)就緒狀態:在run_queue隊列里的狀態。

(4)運行狀態:在run_queue隊列里的狀態。

(5)可中斷睡眠狀態:處於這個狀態的進程因為等待某某事件的發生(比如等待socket 連接、等待信號量),而被掛起。

(6)zombie 狀態(僵屍):父親沒有通過 wait 系列的系統調用會順便將子進程的屍體(task_struct)也釋放掉。

(7)退出狀態 :D 不可中斷Uninterruptible(usually IO);R 正在運行,或在隊列中的進程 ;S 處於休眠狀態;T 停止或被追蹤;Z 僵屍進程;W 進入內存交換(從內核 2.6 開始無效);X 死掉的進程。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM