CS 3733 Operating Systems Final Exam Review: Fall 1999
Warning: This is not for the current semester.
Listed here are the major topics covered on the final exam.
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,
Test-and-Set, Swap, semaphores
11. Classical problems in synchronization
bounded buffer problem, monitors, dining philosophers
12. Signals
Using the signal mask, catching and ignoring signals,
waiting for signals, interrupted system calls
13. Network Communication
client-server model, connectionless and connection-oriented,
UICI, sockets
14. Memory Management
partitions, paging, virtual memory, page replacement
(FIFO, LRU, optimal, second chance, clock), calculation of
effective memory access time.