Chapter 1 Computer System Overview
1.1 Basic Elements
1.2 Processor Registers
1.3 Instruction Execution
1.4 Interrupts
1.5 The Memory Hierarchy
1.6 Cache Memory
1.7 I/O Communication Techniques
1.8 Recommended Reading and Web Sites
1.9 KeyTerms, Review Questions, and Problems
Appendix 1A Performance Characteristics of Two-Level Memory
Appendix 1B Procedure Control
Chapter 2 Operating System Overview
2.1 Operating System Objectives and Functions
2.2 The Evolution of Operating Systems
2.3 Major Achievements
2.4 Developments Leading to Modern Operating Systems
2.5 Microsoft Windows Overview
2.6 Traditional UNIX Systems
2.7 Modern UNIX Systems
2.8 Linux
2.9 Recommended Reading and Web Sites
2.10 Key Terms, Review Questions, and Problems
Chapter 3 Process Description and Control
3.1 What is a Process?
3.2 Process States
3.3 Process Description
3.4 Process Control
3.5 Execution of the Operating System
3.6 Security Issues
3.7 UNIX SVR4 Process Management
3.8 Summary
3.9 Recommended Reading
3.10 KeyTerms, Review Questions, and Problems
Programming Project One Developing a Shell
Chapter 4 Threads, SMP, and Microkernels
4.1 Processes andThreads
4.2 Symmetric Multiprocessing (SMP)
4.3 Microkernels
4.4 WindowsVista Thread and SMP Management
4.5 Solaris Thread and SMP Management
4.6 Linux Process andThread Management
4.7 Summary
4.8 Recommended Reading
4.9 KeyTerms, Review Questions, and Problems
Chapter 5 Concurrency: Mutual Exclusion and Synchronization
5.1 Principles of Concurrency
5.2 Mutual Exclusion: Hardware Support
5.3 Semaphores
5.4 Monitors
5.5 Message Passing
5.6 Readers/Writers Problem
5.7 Summary
5.8 Recommended Reading
5.9 Key Terms, Review Questions, and Problems
Chapter 6 Concurrency: Deadlock and Starvation
6.1 Principles of Deadlock
6.2 Deadlock Prevention
6.3 Deadlock Avoidance
6.4 Deadlock Detection
6.5 An Integrated Deadlock Strategy
6.6 Dining Philosophers Problem
6.7 UNIX Concurrency Mechanisms
6.8 Linux Kernel Concurrency Mechanisms
6.9 Solaris Thread Synchronization Primitives
6.10 Windows Vista Concurrency Mechanisms
6.11 Summary
6.12 Recommended Reading
6.13 Key Terms, Review Questions, and Problems
Chapter 7 Memory Management
7.1 Memory Management Requirements
7.2 Memory Partitioning
7.3 Paging
7.4 Segmentation
7.5 Security Issues
7.6 Summary
7.7 Recommended Reading
7.8 Key Terms, Review Questions, and Problems
Appendix 7A Loading and Linking
Chapter 8 Virtual Memory 328
Chapter 9 Uniprocessor Scheduling 386
Chapter 10 Multiprocessor and Real-Time Scheduling
Chapter 11 I/O Management and Disk Scheduling
Chapter 12 File Management
Glossary
References