Operating Systems Design & Implementation 3rd Edition(操作系统设计与实现)
Copyright Preface xv Chapter 1. Introduction 1 Section 1.1. What Is an Operating System? 4 Section 1.2. History of Operating Systems 6 Section 1.3. Operating System Concepts 19 Section 1.4. System Calls 26 Section 1.5. Operating System Structure 42 Section 1.6. Outline of the Rest of This Book 51 Section 1.7. Summary 51 Problems 52 Chapter 2. Processes 55 Section 2.1. Introduction to Processes 55 Section 2.2. Interprocess Communication 68 Section 2.3. Classical IPC Problems 88 Section 2.4. Scheduling 93 Section 2.5. Overview of Processes in MINIX 3 112 Section 2.6. Implementation of Processes in MINIX 3 125 Section 2.7. The System Task in MINIX 3 192 Section 2.8. The Clock Task in MINIX 3 204 Section 2.9. Summary 214 Problems 215 Chapter 3. Input/Output 221 Section 3.1. Principles of I/O Hardware 222 Section 3.2. Principles of I/O Software 229 Section 3.3. Deadlocks 237 Section 3.4. Overview of I/O in MINIX 3 252 Section 3.5. Block Devices in MINIX 3 261 Section 3.6. RAM Disks 271 Section 3.7. Disks 278 Section 3.8. Terminals 302 Section 3.9. Summary 366 Problems 367 Chapter 4. Memory Management 373 Section 4.1. Basic Memory Management 374 Section 4.2. Swapping 378 Section 4.3. Virtual Memory 383 Section 4.4. Page Replacement Algorithms 396 Section 4.5. Design Issues for Paging Systems 404 Section 4.6. Segmentation 410 Section 4.7. Overview of the MINIX 3 Process Manager 420 Section 4.8. Implementation of the MINIX 3 Process Manager447 Section 4.9. Summary 475 Problems 476 Chapter 5. File Systems 481 Section 5.1. Files 482 Section 5.2. Directories 491 Section 5.3. File System Implementation 497 Section 5.4. Security 526 Section 5.5. Protection Mechanisms 537 Section 5.6. Overview of the MINIX 3 File System 548 Section 5.7. Implementation of the MINIX 3 File System 566 Section 5.8. Summary 606 Problems 607 Chapter 6. Reading List and Bibliography 611 Section 6.1. Suggestions for Further Reading 611 Section 6.2. Alphabetical Bibliography 618 Appendix A. Installing MINIX 3 629 Section A.1. Preparation 629 Section A.2. Booting 631 Section A.3. Installing to the Hard Disk 632 Section A.4. Testing 634 Section A.5. Using a Simulator 636 Appendix B. The MINIX Source Code 637 Appendix C. Index to Files 1033 About the Authors 1053 About the MINIX 3 CD InsideBackCover System Requirements InsideBackCover Hardware InsideBackCover Software InsideBackCover Installation InsideBackCover Product Support InsideBackCover Index