Contents

PART ONE   images   OVERVIEW

Chapter 1 Introduction

1.1 What Operating Systems Do

1.2 Computer-System Organization

1.3 Computer-System Architecture

1.4 Operating-System Structure

1.5 Operating-System Operations

1.6 Process Management

1.7 Memory Management

1.8 Storage Management

1.9 Protection and Security

1.10 Kernel Data Structures

1.11 Computing Environments

1.12 Open-Source Operating Systems

1.13 Summary

Exercises

Bibliographical Notes

Chapter 2 Operating-System Structures

2.1 Operating-System Services

2.2 User and Operating-System Interface

2.3 System Calls

2.4 Types of System Calls

2.5 System Programs

2.6 Operating-System Design and Implementation

2.7 Operating-System Structure

2.8 Operating-System Debugging

2.9 Operating-System Generation

2.10 System Boot

2.11 Summary

Exercises

Bibliographical Notes

PART TWO   images   PROCESS MANAGEMENT

Chapter 3 Processes

3.1 Process Concept

3.2 Process Scheduling

3.3 Operations on Processes

3.4 Interprocess Communication

3.5 Examples of IPC Systems

3.6 Communication in Client–Server Systems

3.7 Summary

Exercises

Bibliographical Notes

Chapter 4 Threads

4.1 Overview

4.2 Multicore Programming

4.3 Multithreading Models

4.4 Thread Libraries

4.5 Implicit Threading

4.6 Threading Issues

4.7 Operating-System Examples

4.8 Summary

Exercises

Bibliographical Notes

Chapter 5 Process Synchronization

5.1 Background

5.2 The Critical-Section Problem

5.3 Peterson's Solution

5.4 Synchronization Hardware

5.5 Mutex Locks

5.6 Semaphores

5.7 Classic Problems of Synchronization

5.8 Monitors

5.9 Synchronization Examples

5.10 Alternative Approaches

5.11 Deadlocks

5.12 Summary

Exercises

Bibliographical Notes

Chapter 6 CPU Scheduling

6.1 Basic Concepts

6.2 Scheduling Criteria

6.3 Scheduling Algorithms

6.4 Thread Scheduling

6.5 Multiple-Processor Scheduling

6.6 Real-Time CPU Scheduling

6.7 Operating-System Examples

6.8 Algorithm Evaluation

6.9 Summary

Exercises

Bibliographical Notes

PART THREE   images   MEMORY MANAGEMENT

Chapter 7 Main Memory

7.1 Background

7.2 Swapping

7.3 Contiguous Memory Allocation

7.4 Segmentation

7.5 Paging

7.6 Structure of the Page Table

7.7 Example: Intel 32 and 64-bit Architectures

7.8 Example: ARM Architecture

7.9 Summary

Exercises

Bibliographical Notes

Chapter 8 Virtual Memory

8.1 Background

8.2 Demand Paging

8.3 Copy-on-Write

8.4 Page Replacement

8.5 Allocation of Frames

8.6 Thrashing

8.7 Memory-Mapped Files

8.8 Allocating Kernel Memory

8.9 Other Considerations

8.10 Operating-System Examples

8.11 Summary

Exercises

Bibliographical Notes

PART FOUR   images   STORAGE MANAGEMENT

Chapter 9 Mass-Storage Structure

9.1 Overview of Mass-Storage Structure

9.2 Disk Structure

9.3 Disk Attachment

9.4 Disk Scheduling

9.5 Disk Management

9.6 Swap-Space Management

9.7 RAID Structure

9.8 Stable-Storage Implementation

9.9 Summary

Exercises

Bibliographical Notes

Chapter 10 File-System Interface

10.1 File Concept

10.2 Access Methods

10.3 Directory and Disk Structure

10.4 File-System Mounting

10.5 File Sharing

10.6 Protection

10.7 Summary

Exercises

Bibliographical Notes

Chapter 11 File-System Implementation

11.1 File-System Structure

11.2 File-System Implementation

11.3 Directory Implementation

11.4 Allocation Methods

11.5 Free-Space Management

11.6 Efficiency and Performance

11.7 Recovery

11.8 NFS

11.9 Example: The WAFL File System

11.10 Summary

Exercises

Bibliographical Notes

Chapter 12 I/O Systems

12.1 Overview

12.2 I/O Hardware

12.3 Application I/O Interface

12.4 Kernel I/O Subsystem

12.5 Transforming I/O Requests to Hardware Operations

12.6 STREAMS

12.7 Performance

12.8 Summary

Exercises

Bibliographical Notes

PART FIVE   images   PROTECTION AND SECURITY

Chapter 13 Protection

13.1 Goals of Protection

13.2 Principles of Protection

13.3 Domain of Protection

13.4 Access Matrix

13.5 Implementation of the Access Matrix

13.6 Access Control

13.7 Revocation of Access Rights

13.8 Capability-Based Systems

13.9 Language-Based Protection

13.10 Summary

Exercises

Bibliographical Notes

Chapter 14 Security

14.1 The Security Problem

14.2 Program Threats

14.3 System and Network Threats

14.4 Cryptography as a Security Tool

14.5 User Authentication

14.6 Implementing Security Defenses

14.7 Firewalling to Protect Systems and Networks

14.8 Computer-Security Classifications

14.9 An Example: Windows 7

14.10 Summary

Exercises

Bibliographical Notes

PART SIX   images   CASE STUDIES

Chapter 15 The Linux System

15.1 Linux History

15.2 Design Principles

15.3 Kernel Modules

15.4 Process Management

15.5 Scheduling

15.6 Memory Management

15.7 File Systems

15.8 Input and Output

15.9 Interprocess Communication

15.10 Network Structure

15.11 Security

15.12 Summary

Exercises

Bibliographical Notes

Index

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset