Reputation: 4727
This term keeps appearing in my Operating System notes, and I'm not entirely sure what it is/where it's stored and how or why.
Upvotes: 35
Views: 59396
Reputation: 975
The process table in Linux (such as in nearly every other operating system) is simply a data structure in the RAM of a computer. It holds information about the processes that are currently handled by the OS.
This information includes general information about each process
A very important information in the process table is the state in that each process currently is. This information is essential for the OS, because it enables the so called multiprocessing, i.e. the possibility to virtually run several processes on only one processing unit (CPU).
The information whether a process is currently ACTIVE, SLEEPING, RUNNING, etc. is used by the OS in order to handle the execution of processes.
Furthermore there is statistical information such as when was the process RUNNING the last time in order to enable the schedulr of the OS to decide which process should be running next.
So in summary the process table is the central organizational element for the OS to handle all the started processes.
A short introduction can be found in this thread:
And wikipedia also has nice information about processes:
http://en.wikipedia.org/wiki/Process_management_(computing)#Process_description_and_control
http://en.wikipedia.org/wiki/Process_table
Upvotes: 57
Reputation: 20901
Each process is represented in the operating system by a process control block - also known as task control block - which contains the following
Process management
Registers
Program counter
Program status word
Stack pointer
Process state
Priority
Scheduling parameters Process ID
Parent process
Process group
Signals
Time when process started CPU time used
Children’s CPU time
Time of next alarm
Memory management
Pointer to text segment info
Pointer to data segment info
Pointer to stack segment info
File management
Root directory Working directory File descriptors User ID
Group ID
For more, https://www.technologyuk.net/computing/computer-software/operating-systems/
Upvotes: 8
Reputation: 21
Process table is a kernel data structure that describes the state of a process (along with process U Area). It contains fields that must always be available to the kernel.
It contains following fields :
In short, process table gives information about processes to the kernel.
Upvotes: 2
Reputation: 11
Process table is a data structure in Linux kernel, which store information about all currently running process. The process table contains process ID's, memory usage of the process, what are file descriptor used in the process, ect.
The kernel track the created and running process using the process descriptor. Each process descriptor contains,
1. Identifier - process ID, parent and child process ID, user ID
2. State - process state, priority
3. Resource - CUP and Memory
The process table major information is,
ps aux is a Linux command used to list all process status and resource usage(memory, cpu). You can see the process list with owner, PID, CPU, MEM, STAT ect.
Upvotes: 1