Ramez Elmasri,得克萨斯大学阿灵顿分校教授。他于1980年在美国斯坦福大学获得计算机科学硕士和博士学位。其研究兴趣是传感器网络和RFID、生物信息介质、查询个性化和系统集成。 A. Gil Carrick,曾执教于得克萨斯大学阿灵顿分校。他是计算机科学荣誉协会Upsilon Pi Epsilon的成员。 David Levine,一直讲授操作系统、软件工程、网络和计算体系结构等课程。他的研究兴趣包括移动计算、移动对象和分布式计算。
内页插图
目录
Preface vi Part 1 Operating Systems Overview and Background Chapter 1 Getting Started 1.1 Introduction 1.2 What Are Operating Systems All about? 1.3 User veusus System View of an OS 1.4 Some OS Terms. Basic Concepts, and Illustrations 1.5 A Small Historical Diversion 1.6 Summary
Chapter 2 Operating System Concepts, Components and Architectures 2.1 Introduction:What Does the OS DSs 2.2 Resources Managed by the OS and Major OS Modules 2.3 The Process Concept and OS Process Information 2.4 Functional Classes of OSs 2.5 Architectural Approaches to Building an OS 2.6 Some OS Implement Techniques and Issues 2.7 Minimalist versus Maximalist Approaches to OS Functionality and Back ward Compatibility 2.8 Summary Part 2 Building Operating Systems Incrementally:A Breadth-Oriented Spiral Approach
Chapter 3 A Simple,Single-Process Operating System 3.1 Introduction:Monitors and CP 3.2 Characteristics of a Simple PC System 3.3 Input Output Management 3.4 Disk Management and the File System 3.5 Process and Memory Manage me 3.6 Summary
Chapter 4 A Single-User Multitasking Operating System 4.1 Introduction:A Simple Multitasking System 4.2 The Palm OS Environment and System Layout 4.3 Process Scheduling and System Layout 4.6 Basic Input and Output 4.7 Display Management 4.8 Event-Driven Programs 4.9 Summary
Chapter 5 A Single-User Multitasking/Multithreading Operating System 5.1 Introduction 89 5.2 The Origin of the Macintosh Computer 5.3 The Macintosh OS——System 5.4 System2 5.5 System3 5.6 System4 5.7 System5 5.8 System6 5.9 System7 5.10 System8 5.11 System9 5.12 Mac OS X 5.13 Summary
Chapter 6 A Multiple-User Operating System 6.1 Introduction 6.2 The Multiuser OS Envtronment 6.3 Processes and Threads 6.4 Summary
Chapter 7 Parallel and Distributed Computing, Clusters, and Grids 7.1 Introduction 7.2 Key Concepts 7.3 Parallel Distributed Processing 7.4 Distributed System Architectures 7.5 How Operating System Concepts Differ in SMPs, Cluster, and Grids 7.6 Examples 7.7 Summary Part 3 CPU and Memory Management
Chapter 8 Process Management: Concepts, Threads, and Scheduling 8.1 Introduction to Processes 8.2 Process Descriptor-Processes Control Block 8.3 Process States and 8.4 Process Scheduling 8.8 0ne Good Process Deserves Another 8.6 Threads 8.7 Case Studies 8.7 Summary
Chapter 9 Mere Process Management : Interprocess Communication, Synchronization, and Deadlocks 9.1 Why Have Cooperating Processes? 9.2 Interprocess Communication 9.3 Synchronization 9.4 Deadlocks 9.5 Summary
Chapter 10 Basic Memory Management 10.1 Introduction: Why Manage Primary Memory? 10.2 Binding Model: Steps in Development Cycle 10.3 A Single Process 10.4 Multiple Processes with a Fixed Number of Processes 10.5 Multiple Processes with a Variable Number of Processes 10.6 Summary
Chapter 11 Advanced Memory Management 11.1 Why Do We Need Hardware Help? 11.2 Paging 11.3 Segmentation 11.4 Segmentation with Paging 11.5 Demand Paging 11.6 Special Memory Management Topics 11.7 Summary Part 4 A Depth-Oriented Presentation of OS Concepts: Files Systems and Input/Output
Chapter 13 File Systems-Examples and Mom Features 13.1 Introduction 13.2 Case Studies 13.3 Mounting 13.4 Multiple Pile Systems and Redirection 13.5 Memory Mapped Files 13.6 Pile System Utilities 13.7 Log-Based File Systems 13.8 Summary
Chapter 14 Disk Scheduling and input/Output Management 14.1 Introduction 14.2 Device Characteristies 14.3 I/O Technology 14.4 Physical Disk Organization 14.5 Logical Disk Organization 14.6 RAID 309 14.7 Disk Operation Scheduling 14.8 DMA and Disk Hardware Features 14.9 Summary Part 5 Networks, Distributed Systems, and Security
Chapter 15 Introduction to Computer Networks 15.1 Why Do We Want to Network Computers? 15.2 The Basics 15.3 Spplication Layer Protocols 15.4 TCP/IP 15.5 The Data Link Layer 15.6 WANs 15.7 The Physical Layer 15.8 Network Management 15.9 Summary
Chapter 16 16.1 Introduction: Problems and Threats 16.2 OS Protection 16.3 Policies,Mechanisms , and Techniques 16.4 Communication Security 16.8 Security Administration 16.6 Summary
Chapter 17 Distributed Operating Systems 17.1 Introduction 17.2 Distributed Application Models 17.3 Abstractions:Processes, Threads, and Machines 17.4 Naming 17.8 Other Distributed Models 17.6 Synchronization 17.7 Fault Tolerance 17.8 Summary Part 6 Case Studies
Chapter 18 Windows NT through Vista 18.1 Introduction:Windows NT Family History 18.2 The User OS Environment 18.3 Process Scheduling 18.4MemoryManngelaent 18.5 File Support 18.6 Basic Input and Output 18.7 GUI Programming 18.8 Networking 18.9 Symmetric Multiprocessing 18.10 Startup Speed of XP 18.11 Summary
Chapter 19 Linux:A Case Study 19.1 Introduction 19.2 Process Scheduling 19.3 Memory Management 19.4 File Support 19.5 Basic Input and Output 19.6 GUI Programming 19.7 Networking 19.8 Security 19.9 Symmetric Multiprocessing 19.10 Other Linux Variants 19.11 Summary
Chapter 20 Palm OS:A Class Case Study 20.1 Overview 20.2 The Multi-Process OS Environment 20.3 Palm Process Scheduling 20.4 Palm Memory Management 20.5 File Support 20.6 Input/Output Subsystems 20.7 GUI Programming 20.8 Network Programming 20.9 Programming Environment 20.10 Similar Systems and Current Developments 20.11 Summary Appendix Overview of Computer System and Architecture Concepts A.1 Typical Computer System Components A.2 The Processor or Central Processing unit A.3 The Memory Unit and Storage Hierarchies A.4 Input and Output A.5 The Network A.6 A More Detailed Picture A.7 Summary
We have long felt that the traditional approach to teaching about Operating Systems(OSsl was not the best approach .The purpose of this book is to support a difrerent approach to this task When studying any complex domaln of knowledge,the order in which one learns the hierarchy Of principles,laws,ideas,and concepts carl make the process easier or more difficult.The most common technique is to partition the subject into major topics and then stody each one in great detail For 0Ss,this has traditionally meant that after a brief in t~oducfion to some terms and an overview,astudent studied isolated topics in depthproeesses and process management.