Process management (computing): Difference between revisions

Content deleted Content added
restore helpful word
AtQor (talk | contribs)
m Process creation: Explanation of Changes | 1. "Another" is replaced with "An alternative" , 2. "to accept an incoming request" is changed to "to accept incoming requests", 3."waking up when a request arrives" is modified to "waking up only when a request arrives"
Line 46:
* A user request to create a new process.
* Initiation of a batch job.
When an operating system is booted, typically several processes are created. 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. AnotherAn alternative background process maycould be designed to accept an incoming requestrequests for web pages hosted on the machine, waking up only when a request arrives to service that requestit.
 
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>