Do you want BuboFlash to help you learning these things? Or do you want to add or correct something? Click here to log in or create user.



To illustrate these differences, let’s first consider the UNIX operating system. In UNIX, as we’ve seen, each process is identified by its process identifier, which is a unique integer. A new process is created by the fork() system call. The new process consists of a copy of the address space of the original process. This mechanism allows the parent process to communicate easily with its child process. Both processes (the parent and the child) continue execution at the instruction after the fork(), with one difference: the return code for the fork() is zero for the new (child) process, whereas the (nonzero) process identifier of the child is returned to the parent. After a fork() system call, one of the two processes typically uses the exec() system call to replace the process’s memory space with a new program. The exec() system call loads a binary file into memory (destroying the memory image of the program containing the exec() system call) and starts its execution. In this manner, the two processes are able to communicate and then go their separate ways. The parent can then create more children; or, if it has nothing else to do while the child runs, it can issue a wait() system call to move itself off the ready queue until the termination of the child
If you want to change selection, open document below and click on "Move attachment"

pdfs

  • owner: miller - (no access) - Abraham Silberschatz_ Peter B Galvin_ Greg Gagne -Operating system concepts-Wiley (2012).pdf, p141
  • owner: hughleat - (no access) - Abraham-Silberschatz-Operating-System-Concepts---9th2012.12.pdf, p141


Summary

statusnot read reprioritisations
last reprioritisation on suggested re-reading day
started reading on finished reading on

Details



Discussion

Do you want to join discussion? Click here to log in or create user.