CSCI 4320 (Principles of Operating Systems), Fall 2002:
Review for Exam 2
The exam will be in class December 3. You will have 75 minutes.
You may use your textbook and any notes or papers you care to bring,
but you may not use other books, a computer, or each other's papers.
(You may use a calculator, but you should not need one.)
Questions will focus on material not covered in the first exam,
but observe that some topics require a basic understanding of
earlier material (e.g., to understand deadlocks you must know
something about the process abstraction).
Most questions will likely be similar in form to those on the
first exam and those in the homework assignments.
You are responsible for all material presented during lecture,
but the following is a list of topics I consider most important.
- Deadlocks -- what they are, how to prevent them.
- Memory management:
- Address space abstraction;
virtual (program) addresses versus physical addresses.
- Schemes for managing memory -- monoprogramming,
multiprogramming with variable partitions,
paging, segmentation (very briefly); advantages and
disadvantages of each; implementation details at the
level of the homework problems.
- ``Page faults'' -- what they are, how they're handled.
- I/O:
- Basics about I/O hardware -- devices, device controllers,
I/O ports versus memory-mapped I/O, DMA.
- Goals of I/O software.
- Basics about I/O software --
programmed I/O versus interrupt-driven I/O versus I/O
using DMA.
- I/O software layers and how they work together.
- Basics of I/O software for specific types of devices
(disks, character-oriented terminals, GUI and network
terminals) -- what the device sends/expects,
what functionality the software typically provides.
- Files and file systems:
- View from user / application program side -- file
and directory abstractions.
- View from implementation side -- ways of allocating
space for files, disk-space management,
reliability issues.
You should have read all of chapters 3, 4, 5, and 6; the following
is a list of sections to read or review more carefully.
You might also review the last (summary) section of each chapter.
- Chapter 3: Sections 3.1, 3.2, 3.3, and 3.6.
- Chapter 4: Sections 4.1, 4.2, 4.3, 4.4, and 4.7.
- Chapter 5: Sections 5.1, 5.2, and 5.3. Also skim sections
5.4 through 5.8.
- Chapter 6: Sections 6.1, 6.2, and 6.3 (except 6.3.8).
Berna Massingill
2002-11-26