Process Control Block PCB

What is PCB(Process Control Block)?

PCB is a data structure in the OS and it contains all the information about a process. The following information is stored in PCB;

Process ID

When the OS converts a program into the process then OS assign process ID to each process.

State of the process

PCB maintains the record of the state of each process. A process can be in new, waiting, ready, running and can be in the terminated state.

Program counter

Priority of the process

Sometimes we need to assign priority to each process. For example in priority scheduling, OS developers maintain the priority for each process.

Process Privileges

PCB maintains the record of all the privileges assigned to each process. For example privileges of reading, Write, Copy etc.

Memory management information

PCB maintains the record that how much memory is available for use and how much memory is allocated to the processes etc.

I/O status information

Interprocess communication information

Sometimes a process works independently and sometimes some processes work together to achieve a big task.

Accounting information