
Process Control Block

A process in an operating system is represented by a data structure known as
a process control block (PCB) or process descriptor. The PCB contains important
information about the specific process including
- The current state of the process i.e., whether it is ready, running,
waiting, or whatever.
- Unique identification of the process in order to track "which is which"
information.
- A pointer to parent process.
- Similarly, a pointer to child process (if it exists).
- The priority of process (a part of CPU scheduling information).
- Pointers to locate memory of processes.
- A register save area.
- The processor it is running on.
The PCB is a certain store that allows the operating systems to locate key
information about a process. Thus, the PCB is the data structure that defines a
process to the operating systems.

