❖
Information for signal processing
❖
Process planning information
❖
About files and directories floor ' related to the process
❖
Data structure for managing memory subsystems
The task _ struct field data can be shared by several special purpose
processes, in which case these processes are actually threads. The control
units of the process are stored in the kernel in a special data structure. Prior
to the release of kernel 2.4, this structure was called a system process
table; it was an array whose maximum length could not exceed 4K. In the
core processes, it has been replaced by two dynamic data structures that do
not have such a restriction:
❖
A hash table (where the pid of the process acts as a hash ), this
structure allows you to quickly find the process by its ID
❖
Ring list, this structure ensures the implementation of actions in the
loop for all system processe s
Now the limit on the maximum number of processes is checked only within
the implementation of the fork () function and depends on the amount of
available memory (for example, there is information that on a system with
512 MB of memory it is possible to create about 32000 processes).
The implementation of a control unit in Linux is different from its
traditional implementation in UNIX systems. In most versions
of UNIX (System V, BSD), the process control block consists of two data
layers - a process structure ( proc ) and a user structure ( u ).