Preface About the Authors Part Ⅰ Overview Chapter 1 History and Goals 1.1 History of the UNIX System Origins Research UNIX AT&T UNIX System Ⅲ and System V Berkeley Software Distributions UNIX in the World 1.2 BSD and Other Systems The Influence of the User Community 1.3 The Transition of BSD to Open Source Networking Release The Lawsuit 4.4BSD 4.4BSD-Lite Release 1.4 The FreeBSD Development Model References Chapter 2 Design Overview of FreeBSD 2.1 FreeBSD Facilities and the Kernel The Kernel 2.2 Kernel Organization 2.3 Kernel Services 2.4 Process Management Signals Process Groups and Sessions 2.5 Memory Management BSD Memory-Management Design Decisions Memory Management Inside the Kernel 2.6 I/O System Descriptors and I/O Descriptor Management Devices Socket IPC Scatter/Gather I/O Multiple Filesystem Support 2.7 Devices 2.8 Filesystems Filestores 2.9 Network Filesystem 2.10 Terminals 2.11 lnterprocess Communication 2.12 Network Communication 2.13 Network Implementation 2.14 System Operation Exercises References Chapter 3 Kernel Services 3.1 Kernel Organization System Processes System Entry Run-Tune Organization Entry to the Kernel Return from the Kernel 3.2 System Calls Result Handling Returning from a System Call 3.3 Traps and Interrupts Traps I/O Device Interrupts Software Interrupts 3.4 Clock Interrupts Statistics and Process Scheduling Timeouts 3.5 Memory-Management Services 3.6 Tuning Services Real Time ... Part Ⅱ Processes Chapter 4 Process Management Chapter 5 Memory Management Part Ⅲ I/0 System Chapter 6 I/O System Overview Chapter 7 Devices Chapter 8 Local Filesystems Chapter 9 The Network Filesystem Chapter 10 Terminal Handling Part Ⅳ Interprocess Communication Chapter 11 Interprocess Communication Chapter 12 Network Commnnication Chapter 13 Network Protocols Part V System Operation Chapter 14 Startup and Shutdown Glossary Index