Free Trial

Safari Books Online is a digital library providing on-demand subscription access to thousands of learning resources.


  • Create BookmarkCreate Bookmark
  • Create Note or TagCreate Note or Tag
  • DownloadDownload
  • PrintPrint
Share this Page URL
Help

Chapter 24. Classical UNIX > Process creation, termination and scheduling

24.6. Process creation, termination and scheduling

In this section we will describe how processes are managed in UNIX, including the mechanisms for their creation and the way in which the CPU scheduler selects which process to run at any particular instant. As with any operating system, a basic requirement that a user places on it is to load some specified program and have it executed by a process. The code may be the binary file resulting from compilation of a user's program or be a system utility.

Figure 24.10 shows the address space that is set up for a process by UNIX. Each process has its own logical address space, meaning that the translation from virtual addresses to physical addresses is changed upon each context switch. Typically this address space is divided into two portions. The UNIX kernel is resident in one and is mapped at the same logical addresses into each process's address space. The memory management unit (MMU) would be configured to only allow access to these addresses while executing in kernel mode, for example during a system call. The remainder of the address space contains per-process information. The address translation mappings for this region are changed upon each context switch and the entire contents of the region can be swapped out of physical memory (as described in Section 24.6.6) to make room for other processes.


  

You are currently reading a PREVIEW of this book.

                                                                                        

Get instant access to over
$1 million worth of books and videos.

  

Start a Free Trial