Click on each date for detailed notes (if available). As always, the future is uncertain, so you should take parts of the schedule that haven't happened yet with a grain of salt.

<<- <-  January 2007 ->  ->>
Sun Mon Tue Wed Thu Fri Sat
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31      

<<- <-  March 2007 ->  ->>
Sun Mon Tue Wed Thu Fri Sat
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31

<<- <-  February 2007 ->  ->>
Sun Mon Tue Wed Thu Fri Sat
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28      

<<- <-  April 2007 ->  ->>
Sun Mon Tue Wed Thu Fri Sat
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30          

2007-01-17

Introduction. What the course is about. CS422/Assignments/HW0. Readings: OperatingSystemsOverview, SGG Chapter 1.

2007-01-22

Operating system structure, the boot process, and real-mode IA-32 assembly programming. Readings: SGG Chapter 2, OperatingSystemStructure, BootProcess, IntelAssemblyProgramming. The USB missile launcher mentioned in class can be found here.

2007-01-24

Processes and threads (mostly processes). Readings: Processes, SGG Sections 3.1–3.3 and 4.1–4.2, BirrellThreads.

2007-01-29

Threads: implementation, user vs system threads, examples, (start of) ConcurrencyControl. Readings: SGG Chapter 4.

2007-01-31

ConcurrencyControl. Readings: SGG Chapter 6.

2007-02-05

More ConcurrencyControl: Deadlock detection, recovery, and avoidance. Readings: SGG Chapter 7.

2007-02-07

ProcessorScheduling algorithms and their properties. CS422/Assignments/HW2. Readings: SGG Chapter 5 (you may also want to go back and look at the overview in Section 3.2).

2007-02-12

InterProcessCommunication. Readings: SGG §3.4–3.6.

2007-02-14

Start of MemoryManagement: relocation, logical vs physical addresses, segmentation, (start of) paging. Readings: SGG Chapter 8.

2007-02-19

More MemoryManagement: Paging. Readings: SGG §8.4–8.5, 8.7.

2007-02-21

Caching and VirtualMemory. Readings: SGG Chapter 9.

2007-02-26

InputOutput. Today we covered the basics of what the I/O system looks from the user's perspective (block devices vs character devices, asynchronous vs synchronous I/O) and the hardware perspective (I/O instructions vs memory-mapped I/O, device controllers, DMA). We also spent a while talking about condition variables, which were mostly skipped over in previous lectures but which play a big role in CS422/Assignments/HW3. Readings: SGG Chapter 13.

2007-02-28

More InputOutput: device driver examples. Readings: SGG Chapter 13.

2007-03-05

BlockDevices: low-level disk stuff. Readings: SGG Chapter 12.

2007-03-07

FileSystems: interface. Readings: SGG Chapter 10.

2007-03-26

FileSystems: implementation. Readings: SGG Chapter 11.

2007-03-28

FileSystems: integrity. Consistency checking, journaling, LogStructuredFilesystem. Readings: SGG §§11.7-11.8.

2007-04-02

Networking: transports, routing, and protocols. Readings: SGG §§16.3–16.6, 16.9.

2007-04-04

More Networking: TCP details, operating system support, and user interface.

2007-04-09

No lecture due to sudden illness.

2007-04-11

NetworkFileSystems. Readings: SGG Chapter 17, nfs-design.pdf

2007-04-16

DistributedSystems: examples of popular distributed systems that don't use any coordination mechanisms. Basic coordination mechanisms: logical time and mutual exclusion. Readings: SGG Chapter 18.

2007-04-18

More DistributedSystems: transactions, two-phase commit, agreement protocols, Paxos. Readings: rest of Chapter 18.

2007-04-23

ComputerSecurity: protection mechanisms. Readings: SGG Chapter 14.

2007-04-25

ComputerSecurity: implementation issues; practical attacks and defenses. Readings: SGG Chapter 15.

2007-04-30

Virtualization.

2007-05-11

Final exam: CS422/Assignments/FinalExam

CS422/Schedule (last edited 2007-12-25 23:42:14 by localhost)