INSTRUCTOR’S MANUAL
TO ACCOMPANY
APPLIED
OPERATING-
SYSTEM
CONCEPTS
ABRAHAM SILBERSCHATZ
Bell Laboratories
PETER BAER GALVIN
Corporate Technologies
GREG GAGNE
Westminster College
PREFACE
This volume is an instructor’s manual for the First Edition of Applied Operating-System Concepts
by Abraham Silberschatz, Peter Baer Galvin, and Greg Gagne. It consists of answers to the
exercises in the parent text. In cases where the answer to a question involves a long program,
algorithm development, or an essay, no answer is given, but simply the keywords “No Answer”
are added.
Although we have tried to produce an instructor’s manual that will aid all of the users of
our book asmuch as possible, therecan always be improvements (improvedanswers, additional
questions, sampletest questions, programming projects, alternative orders ofpresentation of the
material, additional references, and so on). We invite you, both instructors and students, to help
us in improving this manual. If you have better solutions to the exercises or other items which
would be of use with Applied Operating-System Concepts, we invite you to send them to us for
consideration in later editions of this manual. All contributions will, of course, be properly
credited to their contributor.
Internet electronic mail should be addressed to
avi@bell-labs.com.
Physical mail may be sent
to Avi Silberschatz, Information Sciences Research Center, MH 2T-310, Bell Laboratories, 600
Mountain Avenue, Murray Hill, NJ 07974, USA.
A. S.
P. B. G
G. G.
iii
CONTENTS
Chapter 1 Introduction................................................................... 1
Chapter 2 Computer-System Structures.................................................. 5
Chapter 3 Operating-System Structures.................................................. 9
Chapter 4 Processes..................................................................... 13
Chapter 5 Threads ...................................................................... 15
Chapter 6 CPU Scheduling ............................................................. 17
Chapter 7 Process Synchronization ..................................................... 23
Chapter 8 Deadlocks.................................................................... 27
Chapter 9 Memory Management........................................................31
Chapter 10 Virtual Memory ............................................................. 37
Chapter 11 File-Systems ................................................................. 45
Chapter 12 I/O Systems ................................................................. 53
Chapter 13 Mass Storage Structure ...................................................... 57
Chapter 14 Network Structures.......................................................... 69
Chapter 15 Distributed Communication.................................................73
Chapter 16 Distributed Coordination....................................................75
Chapter 17 Distributed-File Systems .................................................... 77
Chapter 18 Protection ................................................................... 79
Chapter 19 Security......................................................................81
Chapter 20 The UNIX System ........................................................... 83
Chapter 21 The Linux System ........................................................... 87
Chapter 22 Windows/NT ................................................................ 97
v