The process control block is a data structure that contains process information related to it. Process control blocks are also referred to as task control blocks, process table entries, etc.
- Process State
- Process Number
- Program Counter
- Registers
- List of Open Files
- CPU Scheduling Information
- Memory Management Information
- I/O Status Information
- Accounting information
- Location of the Process Control Block
- Process status
This specifies the status of the process, i.e. new, ready, running, pending or completed.
Process number
This shows the number of a specific process.
Program counter
It contains the address of the next instruction to be executed in the process.
Register
Now this specifies the registers used by the process. They can include accumulators, index registers, stack pointers, general purpose registers, etc.
List of Open file
These are the different files associated with the process.
CPU Scheduling Information
The priority of the process, the pointer to the scheduling queue, etc. is the CPU planning information contained in the PCB. It can also include any other scheduling parameters.
Memory Management
information Memory management information includes page tables or segment tables, depending on the memory system used. It also contains the value of the base register, limit register, etc.
I/O status information
This information includes a list of I/O devices used by the process, a list of files, etc.
Accounting information
Time range, account number, number of CPUs used, process number, etc. It is part of ARB accounting information.
Location of the process control block
The process control block is stored in a storage area which is not protected against access by ordinary users. This is done because it contains important information about the process. Some operating systems place the PCB at the top of the kernel stack because it is a safe location.range, account number, number of CPUs used, process number, etc. It is part of ARB accounting information.