- Mastering Linux Kernel Development
- Raghu Bharadwaj
- 267字
- 2021-07-08 09:47:13
state
A process right from the time it is spawned until it exits may exist in various states, referred to as process states--they define the process’s current state:
- TASK_RUNNING (0): The task is either executing or contending for CPU in the scheduler run-queue.
- TASK_INTERRUPTIBLE (1): The task is in an interruptible wait state; it remains in wait until an awaited condition becomes true, such as the availability of mutual exclusion locks, device ready for I/O, lapse of sleep time, or an exclusive wake-up call. While in this wait state, any signals generated for the process are delivered, causing it to wake up before the wait condition is met.
- TASK_KILLABLE: This is similar to TASK_INTERRUPTIBLE, with the exception that interruptions can only occur on fatal signals, which makes it a better alternative to TASK_INTERRUPTIBLE.
- TASK_UNINTERRUTPIBLE (2): The task is in uninterruptible wait state similar to TASK_INTERRUPTIBLE, except that generated signals to the sleeping process do not cause wake-up. When the event occurs for which it is waiting, the process transitions to TASK_RUNNING. This process state is rarely used.
- TASK_ STOPPED (4): The task has received a STOP signal. It will be back to running on receiving the continue signal (SIGCONT).
- TASK_TRACED (8): A process is said to be in traced state when it is being combed, probably by a debugger.
- EXIT_ZOMBIE (32): The process is terminated, but its resources are not yet reclaimed.
- EXIT_DEAD (16): The child is terminated and all the resources held by it freed, after the parent collects the exit status of the child using wait.
The following figure depicts process states:

推薦閱讀
- 國際大學生程序設計競賽中山大學內部選拔真題解(二)
- JavaScript全程指南
- JavaScript+jQuery網頁特效設計任務驅動教程(第2版)
- 實戰Java程序設計
- 面向STEM的Scratch創新課程
- SAP BusinessObjects Dashboards 4.1 Cookbook
- SQL基礎教程(第2版)
- .NET Standard 2.0 Cookbook
- Arduino可穿戴設備開發
- JavaScript編程精解(原書第2版)
- Learning D3.js 5 Mapping(Second Edition)
- JavaScript高級程序設計(第4版)
- 精通Rust(第2版)
- 3ds Max瘋狂設計學院
- Programming MapReduce with Scalding