Fig. 16.4c: exec overlays the child’s text and data segments.
Fig. 16.4d: When the child dies, the parent resumes processing.
Fig. 16.5: The possible contents of memory on a system supporting four concurrent users.
Fig. 16.6: The process table contains one entry per process.
Events and Signals Event generated by death of a process Event produces signal event-wait routine activated –awaken all processes waiting for event –start highest priority ready process
Time-slicing and Interrupts Time-slicing –programs limited to a single time slice –exceeding time slice generates an event –event-wait starts highest priority process Interrupts –interrupt handling routines in kernel
Fig. 16.7: The swapping process is part of the kernel.
The File System Data treated as strings of bytes Device types –block devices hold files –character devices File types –ordinary files –special files
Fig. 16.9: A configuration table lists all the device drivers.
Fig. 16.10: A UNIX disk is divided into four regions.
Fig. 16.11: Associated with the file name is an i-number that points to a specific i-node.
Fig. 16.12: The process file table points to the system file table, which points to the file on disk.
The Buffer Pool All block I/O through buffer pool Read implies a buffer search Write –mark appropriate buffer dirty –transfer to disk when buffer reassigned Physical I/O asynchronous
Fig. 16.13: A summary of key UNIX system tables.
Linux The Linux kernel –deals directly with hardware –load/unload specific modules Linux processes –call fork or clone to create –personality identifier The Linux file system (ex2fs) –virtual file system (VFS)
Fig. 16.14: The virtual file system allows processes to access all file systems uniformly.