Process management (computing): Difference between revisions

Content deleted Content added
Snemmik (talk | contribs)
m Some typos and minor language improvements.
m A bit more detailed overview of the processes involved in the booting of an operating system.
Line 45:
* A user request to create a new process.
* Initiation of a batch job.
When an operating system is booted, typically several essential processes are createdtypically initiated to prepare the system for operation. Some of these are foreground processes, that interact with a (human) user and perform work for them. Others are [[background process]]es, which are not associated with particular users, but instead have some specific function. For example, one background process may be designed to accept incoming e-mails, sleeping most of the day but suddenly springing to life when an incoming e-mail arrives. An alternative background process could be designed to accept incoming requests for web pages hosted on the machine, waking up only when a request arrives to service it.
 
Process creation in UNIX and Linux is done through [[fork (system call)|fork()]] or clone() system calls. There are several steps involved in process creation. The first step is the validation of whether the [[parent process]] has sufficient authorization to create a process. Upon successful validation, the parent process is copied almost entirely, with changes only to the unique process id, parent process, and user-space. Each new process gets its own user space.<ref>[http://sunnyeves.blogspot.com/2010/09/sneak-peek-into-linux-kernel-chapter-2.html "A Sneak-Peek into Linux Kernel - Chapter 2: Process Creation"]</ref>