Process management (computing)Process management (computing)Process management is an integral part of any modern day operating system (OS). The OS must allocate resourcesto processes, enable processes to share and exchange information, protect the resources of each process from otherprocesses and enable synchronisation among processes. To meet these requirements, the OS must maintain a datastructure for each process, which describes the state and resource ownership of that process, and which enables theOS to exert control over each process.MultiprogrammingIn many modern operating systems, there can be more than one instance of a program loaded in memory at the sametime; for example, more than one user could be executing the same program, each user having separate copies of theprogram loaded into memory. With some programs, it is possible to have one copy loaded into memory, whileseveral users have shared access to it so that they each can execute the same program-code. Such a program is said tobe re-entrant. The processor at any instant can only be executing one instruction from one program but severalprocesses can be sustained over a period of time by assigning each process to the processor at intervals while theremainder become temporarily inactive. A number of processes being executed over a period of time instead of at thesame time is called [concurrent execution].A multiprogramming or multitasking OS is a system executing many processes concurrently.