Process States in Operating System

Previous Article
Next Article
When a computer program runs but only a part of program is running performing a specific task. This smallest unit of program in execution is called a process. Technically, process is not the smallest unit but some programs consists of threads which are smaller than a process.

When there is no process then the state is null. However, when a process is created then it changes many states during it’s lifetime. The state information for a process is kept in a Process Control Block (PCB).


Process States

  1. New State – The process is created recently.
  2. Running State – The process is being executed currently.
  3. Waiting State – Waiting for some Event or Input/Output to finish, etc.
  4. Ready State – Just before being assigned to a processor.
  5. Terminated – The process finished execution.


Process State Diagram

Process State Diagram
Process State Diagram

The figure above shows that process change states due to various reasons and here is a list of transitions that happen between processes. Not necessarily in the same order.

  1. Null -> New
  2. New -> Ready
  3. Ready -> Running
  4. Running -> Terminated
  5. Running -> Blocked
  6. Blocked -> Ready
  7. Running -> Ready
  8. Ready -> Terminated
  9. Waiting -> Terminated


Note – Running – Ready (This happens when process is removed from running due to a scheduling                                    algorithm such as Round Robin, Priority Queue)



Process is program in execution and does specific task. The process changes may states during it’s life time and the final state for a process is Terminated state when it exits and no longer available in memory.


Abraham Silberschatz, Peter B. Galvin, Greg Gagne, A Silberschatz. 2012. Operating System Concepts, 9th Edition. Wiley.


Previous Article
Next Article