CS 3733 Operating Systems Final Exam Review: Spring 1999
Listed here are the major topics covered on the final exam.
Warning: This is not for the current semester.
1. Introduction: what is an operating system?
buffering, spooling, multiprogramming, time sharing, distributed systems.
2. Processes
process state, process control block, concurrent processes,
independent and cooperating processes,
3. C programming
storage and linkage classes, the meaning of the word static.
4. Process scheduling
job queue, ready queue, device queues, schedulers, performance criteria,
FCFS, SJF, SJFA, round robin, priorities, preemptive scheduling,
multilevel queues, multilevel feedback queues,
process scheduling simulator experiments
5. Using fork, wait, and exec
chains, fans, and trees of processes
6. Unix system calls
open, close, read, write, pipe dup2, getpid, getppid.
7. Unix directory structure
directories, inodes, hard links, symbolic links,
8. I/O in Unix and C
file descriptors and file pointers, file descriptor table,
system file table, redirection.
9. Rings of processes
10. Synchronization
producer-consumer problem, critical sections, critical section problem,
mutual exclusion, progress, bounded waiting, busy waiting, Peterson's solution
11. More Synchronization
synchronization hardware, semaphores
12. Classical problems in synchronization
bounded buffer problem, monitors, dining philosophers
13. Signals
Using the signal mask, catching and ignoring signals,
waiting for signals, interrupted system calls
14. Network Communication
client-server model, connectionless and connection-oriented,
UICI, sockets
15. Memory Management
partitions, paging, virtual memory, page replacement
(FIFO, LRU, optimal, second chance, clock), calculation of
effective memory access time.