Lecture Notes
[an error occurred while processing this directive]
Or browse the lecture notes directory.
See also student-taken notes, Karl's section notes.
Lecture Schedule
This outline is approximate, as to coverage and timing. Because a new topic was sometimes started mid-lecture, boundaries between Prof. Smiths' note sets are also approximate.
Lecture | Notes | Topics |
---|---|---|
1 | Smith.1 | Introduction, processes, multiprogramming. |
2 | EIT, scheduler, CPU scheduling system model, CPU scheduling, goals. | |
3 | CPU scheduling, metrics, constraints, open vs. closed systems, user characteristics, job characteristics, FIFO, round robin, little's formula, CPU Scheduling: SJF, SPT, SRPT, FB, MLFB, Exponential queue. | |
4 | Smith.2 | CPU scheduling: fair share scheduler, countermeasures. Discrete event simulation. Cooperating processes, atomic operations, critical sections, too much milk problem. Synchronization with semaphores. |
5 | Synchronization: producers and consumers, readers and writers, dining philosophers. | |
6 | Smith.3 | Threads. Synchronization with Condition Variables. Unix implementation. Monitors. Semaphore implementation, disabling interrupts. |
7 | Deadlock, deadlock prevention. deadlock avoidance, banker's algorithm, recovery, rollback. Unix file locking. | |
8 | Linkers and loaders. Dynamic storage allocation: stacks, heaps, fragmention (external/internal), first fit, best fit, next fit, bit map, reference counts, garbage collection, buddy system. | |
9 | Smith.4 | Memory management - flat memory, relocation (static, dynamic), base and bounds, swapping. |
10 | Multiple variable length segments, address translation, processes vs. threads, managing segments, paging (intro) | |
11 | Paging: translation, PTBR, pros/cons, page tables, page table implementation, wired down pages, paging and segmentation combined, sharing, paging vs. segmentation. | |
12 | Smith.5 | Paging: copy on write, address space communication, I/O in paging system, sharing, 370 implementation, VAX implementation, TLB, principle of locality, translator. |
13 | Demand paging, principle of locality, page faults. paging fetch algorithms, page replacement algorithms (RAND, FIFO, LRU, MIN/OPT), real vs. virtual time. | |
14 | Evaluation of paging algorithms, stack algorithms. implementing LRU, clock algorithm, local vs. global replacement. | |
15 | Thrashing, working sets. page fault frequency, page size, I/O and paging, trace driven simulation, modifying code to minimize paging, algorithm comparison. | |
16 | Smith.6 | I/O device characteristics and device management. |
17 | I/O device characteristics and device management. | |
18 | Smith.7 | File and I/O systems - disk management, file allocation, contiguous allocation, linked files, multilevel indexed file, simple indexed file, dynamic optimized allocation (Demos), free block list. |
19 | I/O optimization: block size, disk arm sked (fcfs, sstf, scan, cscan), rotational scheduling, skip sector allocation, track offset for head switching, file placement, disk caching, prefetching, data replication, ALIS, RAID. | |
20 | File descriptor, tree structured directories, links, symbolic links, root, tree structured directories, working directory, operations on files, file backup and recovery. | |
21 | Smith.8 | Networks and communications protocols, examples, hardware, topologies, performance parameters, protocols, ISO, wide area nets, broadcast nets, ethernet. |
22 | Networks: ring networks, circuit switching, packet switching, names vs. routes, communication problems, datagrams, TCP/IP, NFS, distributed systems, Amdahl's Law. | |
23 | Smith.9 | Protection and security: problems, levels of info protection, design principles, authentication, authorization determination, access lists, capabilities, Multics protection, access enforcement, common problems. |
24 | Protection: examples of penetration, countermeasures, inference controls, confinement problem, viruses. | |
25 | Encryption: substitution, transposition, codes, cryptanalysis, key distribution, DES, public key encryption, safe mail, digital signatures, Clipper Chip. | |
26 | Smith.10 | Virtual Machines, VMM, emulators, implementation, memory mapping, I/O, VM performance. Real Time Systems - deadlines. |
27 | Performance evaluation: measurement, hardware monitoring, software monitoring, multics, GTF, workload characterization, analytic modeling, queueing networks, simulation, back-of-the-envelope calculations. Hints for OS designers. Current research in Operating Systems. | |
Smith.11 | Grad schools |