Most books on operating systems are strong on theory and weak on practice. This one aims to provide a better balance between the two. It covers all the fundamental principles in great detail, including processes, interprocess communication, semaphores, monitors, message passing, scheduling algorithms, input/output, deadlocks, device drivers, memory management, paging algorithms, file system design, security, and protection mechanisms. But it also discusses one particular systemMINIX 3a UNIX-compatible operating system in detail, and even provides a source code listing for study. This arrangement allows the reader not only to learn the principles, but also to see how they are applied in a real operating system. When the first edition of this book appeared in 1987, it caused something of a small revolution in the way operating systems courses were taught. Until then, most courses just covered theory. With the appearance of MINIX, many schools began to have laboratory courses in which students examined a real operating system to see how it worked inside. We consider this trend highly desirable and hope it continues. It its first 10 years, MINIX underwent many changes. The original code was designed for a 256K 8088-based IBM PC with two diskette drives and no hard disk. It was also based on UNIX Version 7 As time went on, MINIX evolved in many ways: it supported 32-bit protected mode machines with large memories and hard disks. It also changed from being based on Version 7, to being based on the international POSIX standard (IEEE 1003.1 and ISO 9945-1). Finally, many new features were added, perhaps too many in our view, but too few in the view of some other people, which led to the creation of Linux. In addition, MINIX was ported to many other platforms, including the Macintosh, Amiga, Atari, and SPARC. A second edition of the book, covering this system, was published in 1997 and was widely used at universities.
Table of Content
Chapter 1. Introduction
. What Is an Operating System?
History of Operating Systems
Operating System Concepts
System Calls 26
Operating System Structure
Chapter 2. Processes 55 Section 2.1
. Introduction to Processes
. Interprocess Communication
Classical IPC Problems 88
Overview of Processes in MINIX 3 112
Implementation of Processes in MINIX 3 125
The System Task in MINIX 3 192 Section 2.8.
The Clock Task in MINIX 3 204 Section 2.9.
Chapter 3. Input/Output 221
. Principles of I/O Hardware 222
. Principles of I/O Software 229 Section 3.3
Overview of I/O in MINIX.
Block Devices in MINIX
Chapter 4. Memory Management
ection 4.1. Basic Memory Management
. Page Replacement Algorithms 39
Design Issues for Paging Systems
. Segmentation 410 Section 4.7.
Overview of the MINIX 3 Process Manager
Implementation of the MINIX 3 Process Manager
Chapter 5. File Systems
File System Implementation
. Overview of the MINIX 3 File System
. Implementation of the MINIX 3 File System
Chapter 6. Reading List and Bibliography
Suggestions for Further Reading
Installing MINIX 3 629 Section A.1. Preparation
. Booting Installing to the Hard Disk 632 Section. Using a Simulator The MINIX Source Code
Tags: #Explain Operating System Design And Implementation #Introduction To Operating System Design And Implementation pdf #Modern Operating Systems Tanenbaum pdf 3th edition #Operating System Design And Implementation notes #Operating Systems Design And Implementation Download