Download Operating System Concepts

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
Operating System
Concepts
Second Edition
leclwische Hcchsehufe Darmstadt
FACHBEREICH INFORMATtK
,
BJ^B L I O TJjiJMC '
Inventa r-Nr.»
Snchqnhifitat
\
Standorti
James L. Peterson
Abraham Silberschatz
University of Texas at Austin
Fachbereichsbibliothek Informatik
TU Darmstadt
• I III • ! • • ! • ! ! II ! •
59465279
'"il?"" Addison-Wesley Publishing Company
Reading, Massachusetts • Menlo Park, California
Don Mills, Ontario • Wokingham, England • Amsterdam
Sydney f Singapore • Tokyo •, Mexico City • Bogota
Santiago • San Juan
Contents
Chapter 1 Introduction
1.1
1.2
1.3
1.4
1.5
1.6
1.7
1.8
1.9
1.10
1.11
What Is an Operating System?
Early Systems
Simple Monitor
Performance
Multiprogramming
Time Sharing
Real-Time Systems
Protection
Different Classes of Computers
Multiprocessor Systems
Summary
Exercises
Bibliographic Notes
1
4
6
9
17
18
21
22
31
33
34
35
37
Chapter 2 Operating System Services
2.1
2.2
2.3
2.4
Types of Services
The User View
The Operating System View
Summary
Bibliographic Notes
39
40
49
54
56
Chapter 3 File Systems
3.1
3.2
3.3
3.4
3.5
3.6
3.7
3.8
File Concept
File Support
Access Methods
Allocation Methods
Directory Systems
File Protection
Implementation Issues
Summary
Exercises
Bibliographic Notes
57
64
68
71
82
93
96
98
99
102
Table of Contents
Chapter 4 CPU Scheduling
4.1
4.2
4.3
4.4
4.5
4.6
Review of Multiprogramming Concepts
Scheduling Concepts
Scheduling Algorithms
< Algorithm Evaluation
Multiple Processor Scheduling
Summary
Exercises
Bibliographic Notes
^
103
105
115
129
135
136
137
141
Chapter 5 Memory Management
5.1
5.2
5.3
5.4
5.5
5.6
5.7
5.8
5.9
Preliminaries
Bare Machine
Resident Monitor
Swapping
Multiple Partitions
Paging
Segmentation
Combined Systems
Summary
Exercises
Bibliographic Notes
143
145
146
152
156
172
183
191
194
196
200
Chapter 6 Virtual Memory
6.1
6.2
6.3
6.4
6.5
6.6
6.7
6.8
6.9
6.10
Overlays
Demand Paging
Performance of Demand Paging
Page Replacement
Virtual Memory Concepts
Page Replacement Algorithms
Allocation Algorithms
Thrashing
Other Considerations
Summary
Exercises
Bibliographic Notes
201
204
210
213
216
217
228
232
238
244
246
254
Table of Contents
xi
Chapter 7 Disk and Drum Scheduling
7.1
7.2
7.3
7.4
7.5
7.6
7.7
Physical Characteristics
First-Come-First-Served Scheduling
Shortest-Seek-Time-First
SCAN
Selecting a Disk Scheduling Algorithm
Sector Queueing
Summary
Exercises
Bibliographic Notes
257
261
262
263
265
266
268
268
270
Chapter 8 Deadlocks
8.1
8.2
8.3
8.4
8.5
8.6
8.7
8.8
The Deadlock Problem
Deadlock Characterization
Deadlock Prevention
Deadlock Avoidance
Deadlock Detection
Recovery from Deadlock
Combined Approach to Deadlock Handling
Summary
Exercises
Bibliographic Notes
271
275
280
283
291
295
298
300
301
305
Chapter 9 Concurrent Processes
9.1
9.2
9.3
9.4
9.5
9.6
9.7
9.8
9.9
Precedence Graphs
Specification
Review of Process Concept
Hierarchy of Processes
The Critical Section Problem
Semaphores
Classical Process Coordination Problems
Interprocess Communication
Summary
Exercises
Bibliographic Notes
307
310
318
320
323
340
344
349
361
361
367
Table of Contents
Chapter 10 Concurrent Programming
10.1
10.2
10.3
10.4
10.5
Motivation
Modularization
Synchronization
Concurrent Languages
Summary
Exercises
Bibliographic Notes
369
370
375
393
400
401
404
Chapter 11 Protection
11.1
11.2
11.3
11.4
11.5
11.6
11.7
11.8
11.9
11.10
11.11
11.12
Goals of Protection
Mechanisms and Policies
Domain of Protection
Access Matrix
Implementation of Access Matrix
Dynamic Protection Structures
Revocation
Existing Systems
Language-Based Protection
Protection Problems
Security
Summary
Exercises
Bibliographic Notes
407
408
409
410
411
415
420
422
427
432
434
436
436
438
Chapter 12 Design Principles
12.1
12.2
12.3
12.4
12.5
12.6
12.7
12.8
Goals
Mechanisms and Policies
Layered Approach
Virtual Machines
Multiprocessors
Implementation
System Generation
Summary
Exercises
Bibliographic Notes
441
442
442
446
449
450
451
453
453
455
Table of Contents
xiii
Chapter 13 Distributed Systems
13.1
13.2
13.3
13.4
13.5
13.6
13.7
13.8
13.9
13.10
13.11
13.12
13.13
Motivation
Topology
Communication
System Type
File Systems
Mode of Computation
Event Ordering
Synchronization
Deadlock Handling
Robustness
Reaching Agreement
Election Algorithms
Summary
Exercises
Bibliographic Notes
457
459
464
471
474
476
478
481
486
494
496
499
502
503
504
Chapter 14 The Unix Operating System
14.1
14.2
14.3
14.4
14.5
14.6
14.7
14.8
14.9
14.10
History
Design Principles
Programmer Interface
User Interface
File System
Process Management
Memory Management
I/O System
Interprocess Communication
Summary
Bibliographic Notes
507
510
512
519
523
532
537
541
545
551
552
Chapter 15 Historical Perspective
15.1
15.2
15.3
15.4
15.5
15.6
15.7
15.8
Atlas
XDS-940
THE
RC4000
CTSS
Multics
OS/360
Other Systems
555
557
557
558
560
561
561
563
xiv
Table of Contents
Bibliography
565
Index
601
Related documents