【Linux 内核】进程管理 ( Linux 内核中的进程状态 | TASK_RUNNING | TASK_INTERRUPTIBLE | __TASK_STOPPED | EXIT_ZOMBIE )
文章目錄
- 一、Linux 內核中的進程狀態(tài)
- 二、TASK_RUNNING 狀態(tài)
- 三、TASK_RUNNING 狀態(tài)
- 四、TASK_UNINTERRUPTIBLE 狀態(tài)
- 五、__TASK_STOPPED 狀態(tài)
- 六、EXIT_ZOMBIE 狀態(tài)
一、Linux 內核中的進程狀態(tài)
Linux 內核 為 進程管理 提供了一系列的 API , 如
- TASK_RUNNING
- TASK_INTERRUPTIBLE
- TASK_UNINTERRUPTIBLE
- __TASK_STOPPED
- EXIT_ZOMBIE
二、TASK_RUNNING 狀態(tài)
TASK_RUNNING : 表示 執(zhí)行狀態(tài) 或 就緒狀態(tài) ;
該進程 可以執(zhí)行 , 或者已經(jīng)準備就緒 , 隨時開始執(zhí)行 ;
Linux 內核中 , 沒有對 執(zhí)行狀態(tài) / 就緒狀態(tài) 進行 明確的區(qū)分 ;
三、TASK_RUNNING 狀態(tài)
TASK_INTERRUPTIBLE : 表示 可中斷睡眠狀態(tài) ;
進程進入到該狀態(tài)進行阻塞 , 一旦 執(zhí)行條件達成 , 立刻 中斷阻塞 , 開始執(zhí)行進程 , 進入 TASK_RUNNING 狀態(tài) ;
該狀態(tài)又稱為 " 淺睡眠狀態(tài) " ;
四、TASK_UNINTERRUPTIBLE 狀態(tài)
TASK_UNINTERRUPTIBLE : 表示 不可中斷睡眠狀態(tài) ;
該狀態(tài)與 TASK_INTERRUPTIBLE 狀態(tài)唯一區(qū)別是 , 在阻塞狀態(tài)太下 , 不受干擾 , 不接收任何外部信號 ;
使用 ps aux 命令查看進程時 , 標記為 D 的狀態(tài) 是該 TASK_UNINTERRUPTIBLE 狀態(tài) , 該狀態(tài)下的進程不能被殺死 ;
該狀態(tài)又稱為 " 深度睡眠狀態(tài) "
五、__TASK_STOPPED 狀態(tài)
__TASK_STOPPED : 表示 終止狀態(tài) , 該狀態(tài)下 進程停止運行 ;
六、EXIT_ZOMBIE 狀態(tài)
EXIT_ZOMBIE : 表示 僵尸狀態(tài) ;
此時進程 已經(jīng)消亡 , 但是還 沒有釋放相關資源 ;
每個進程在聲明周期中 , 都要經(jīng)過該狀態(tài) ;
總結
以上是生活随笔為你收集整理的【Linux 内核】进程管理 ( Linux 内核中的进程状态 | TASK_RUNNING | TASK_INTERRUPTIBLE | __TASK_STOPPED | EXIT_ZOMBIE )的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【Linux 内核】进程管理 ( Lin
- 下一篇: 【Linux 内核】进程管理 task_