
Process State

The process state consist of everything necessary to resume the process
execution if it is somehow put aside temporarily. The process state consists of at least following:
- Code for the program.
- Program's static data.
- Program's dynamic data.
- Program's procedure call stack.
- Contents of general purpose registers.
- Contents of program counter (PC)
- Contents of program status word (PSW).
- Operating Systems resource in use.

A process goes through a series of discrete process states.
- New State:
The process being created.
- Running State:
A process is said to be running if it has the CPU,
that is, process actually using the CPU at that particular instant.
- Blocked (or waiting) State: A process is said to be blocked if it
is waiting for some event to happen such that as an I/O completion before it
can proceed. Note that a process is unable to run until some external event
happens.
- Ready State: A process is said to be ready if it use a CPU if one
were available. A ready state process is runable but temporarily stopped
running to let another process run.
- Terminated state: The process has finished execution.

