13.6. Examples from classical UNIX

The UNIX process structure was described briefly in Section 9.3. Each process runs in a separate address space, but the UNIX kernel occupies part of every process's address space. When a process makes a system call and enters the kernel its status changes from user mode to system mode and it begins to execute kernel code, as shown in Figure 13.4. A process is quite likely to wait for an event while in the kernel or to access some system data structure. At any time a number of (system mode) processes may have entered the kernel. The shared memory methods of IPC discussed in Chapters 10, 11 and 12 are relevant here; that is, UNIX processes cannot share data when they are in user mode but they can share data when ...

Get Operating Systems: Concurrent and Distributed Software Design now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.