CSCI 4320 (Principles of Operating Systems), Fall 2003:
Review for Exam 2
The exam will be in class December 2.
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., one of the questions in Homework 5 required
you to understand context switches).
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.
- 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.
- Page replacement algorithms -- what they're for,
which ones work well and why.
- 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 4, 5, and 6.
Probably the best way to approach reviewing the reading is
to skim all of it, paying more attention to topics I covered
in class, and (re)read the last (summary) section of each chapter.
Chapters 5 and 6 in particular contain a lot of details I don't
expect you to remember; if it wasn't mentioned in class,
it's probably not something you need to review in detail.
Berna Massingill
2003-11-25