Nota di contenuto |
Cover -- Operating Systems -- Contents -- Online Resources -- Preface -- About the Author -- Reader's and Instructor's Guide -- Outline of this Book -- Example Systems -- A Roadmap for Readers and Instructors -- Internet and Web Resources -- Part 1 Background -- Computer System Overview -- Basic Elements -- Evolution of the Microprocessor -- Instruction Execution -- Interrupts -- The Memory Hierarchy -- Cache Memory -- Direct Memory Access -- Multiprocessor and Multicore Organization -- Recommended Reading and Web Sites -- Key Terms, Review Questions, and Problems -- Appendix 1A Performance Characteristics of Two-level Memories -- Operating System Overview -- Operating System Objectives and Functions -- The Evolution of Operating Systems -- Major Achievements -- Developments Leading to Modern Operating Systems -- Virtual Machines -- OS Design Considerations for Multiprocessor and Multicore -- Microsoft Windows Overview -- Traditional UNIX Systems -- Modern UNIX Systems -- Linux -- Linux Vserver Virtual Machine Architecture -- Recommended Reading and Web Sites -- Key Terms, Review Questions, and Problems -- Part 2 Processes -- Process Description and Control -- What Is a Process? -- Process States -- Process Description -- Process Control -- Execution of the Operating System -- Security Issues -- UNIX SVR4 Process Management -- Summary -- Recommended Reading -- Key Terms, Review Questions, and Problems -- Threads -- Processes and Threads -- Types of Threads -- Multicore and Multithreading -- Windows 7 Thread and SMP Management -- Solaris Thread and SMP Management -- Linux Process and Thread Management -- Mac OS X Grand Central Dispatch -- Summary -- Recommended Reading -- Key Terms, Review Questions, and Problems -- Concurrency: Mutual Exclusion and Synchronization -- Principles of Concurrency -- Mutual Exclusion: Hardware Support -- Semaphores.
Monitors -- Message Passing -- Readers/Writers Problem -- Summary -- Recommended Reading -- Key Terms, Review Questions, and Problems -- Concurrency: Deadlock and Starvation -- Principles of Deadlock -- Deadlock Prevention -- Deadlock Avoidance -- Deadlock Detection -- An Integrated Deadlock Strategy -- Dining Philosophers Problem -- UNIX Concurrency Mechanisms -- Linux Kernel Concurrency Mechanisms -- Solaris Thread Synchronization Primitives -- Windows 7 Concurrency Mechanisms -- Summary -- Recommended Reading -- Key Terms, Review Questions, and Problems -- Part 3 Memory -- Memory Management -- Memory Management Requirements -- Memory Partitioning -- Paging -- Segmentation -- Security Issues -- Summary -- Recommended Reading -- Key Terms, Review Questions, and Problems -- Appendix 7A Loading and Linking -- Virtual Memory -- Hardware and Control Structures -- Operating System Software -- UNIX and Solaris Memory Management -- Linux Memory Management -- Windows Memory Management -- Summary -- Recommended Reading and Web Sites -- Key Terms, Review Questions, and Problems -- Part 4 Scheduling -- Uniprocessor Scheduling -- Types of Processor Scheduling -- Scheduling Algorithms -- Traditional UNIX Scheduling -- Summary -- Recommended Reading -- Key Terms, Review Questions, and Problems -- Multiprocessor and Real-Time Scheduling -- Multiprocessor Scheduling -- Real-time Scheduling -- Linux Scheduling -- UNIX SVR4 Scheduling -- UNIX FreeBSD Scheduling -- Windows Scheduling -- Linux Virtual Machine Process Scheduling -- Summary -- Recommended Reading -- Key Terms, Review Questions, and Problems -- Part 5 Input/Output and Files -- I/O Management and Disk Scheduling -- I/O Devices -- Organization of the I/O Function -- Operating System Design Issues -- I/O Buffering -- Disk Scheduling -- RAID -- Disk Cache -- UNIX SVR4 I/O -- Linux I/O -- Windows I/O.
Summary -- Recommended Reading -- Key Terms, Review Questions, and Problems -- File Management -- Overview -- File Organization and Access -- B-Trees -- File Directories -- File Sharing -- Record Blocking -- Secondary Storage Management -- File System Security -- UNIX File Management -- Linux Virtual File System -- Windows File System -- Summary -- Recommended Reading -- Key Terms, Review Questions, and Problems -- Part 6 Embedded Systems -- Embedded Operating Systems -- Embedded Systems -- Characteristics of Embedded Operating Systems -- eCos -- TinyOS -- Recommended Reading and Web Sites -- Key Terms, Review Questions, and Problems -- Part 7 Computer Security -- Computer Security Threats -- Computer Security Concepts -- Threats, Attacks, and Assets -- Intruders -- Malicious Software Overview -- Viruses, Worms, and Bots -- Rootkits -- Recommended Reading and Web Sites -- Key Terms, Review Questions, and Problems -- Computer Security Techniques -- Authentication -- Access Control -- Intrusion Detection -- Malware Defense -- Dealing with Buffer Overflow Attacks -- Windows 7 Security -- Recommended Reading and Web Sites -- Key Terms, Review Questions, and Problems -- Part 8 Distributed Systems -- Distributed Processing, Client/Server, and Clusters -- Client/Server Computing -- Service-Oriented Architecture -- Distributed Message Passing -- Remote Procedure Calls -- Clusters -- Windows Cluster Server -- Beowulf and Linux Clusters -- Summary -- Recommended Reading and Web Sites -- Key Terms, Review Questions, and Problems -- Appendix A Topics in Concurrency -- Mutual Exclusion: Software Approaches -- Race Conditions and Semaphores -- A Barbershop Problem -- Problems -- Appendix B Programming and Operating System Projects -- OS/161 -- Simulations -- Programming Projects -- Research Projects -- Reading/Report Assignments -- Writing Assignments.
Discussion Topics -- BACI -- Glossary -- References -- Index.
|