29 Aug: C for C++ programmers.
31 Aug: Unix system calls.
4 Sep: Unix system calls, cont'd.
6 Sep: x86 assembly - arithmetic and control (handout)
10 Sep: x86 assembly - data movement, logic, and interrupts (handout)
12 Sep: x86 assembly - sequence manipulation and directives. Process introduction (Section 2.1).
14 Sep: Process switching and synchronization (Section 2.2).
18 Sep: Synchronization with shared memory (Section 2.2).
20 Sep: Semaphores (Sections 2.2 and 2.3).
24 Sep: Process scheduling (Section 2.4).
26 Sep: Minix and messages.
28 Sep: Minix and messages, cont'd.
2 Oct: Switching processes in Minix.
10 Oct: I/O devices in Minix.
12 Oct: Disk scheduling.
16 Oct: Terminals.
22 Oct: Memory segments.
26 Oct: Virtual memory.
30 Oct: Industrial-strength memory management.
5 Nov: Threads.
7 Nov: Threads, cont'd.
9 Nov: Networking.
15 Nov: Files. (Sections 5.1 and 5.2)
19 Nov: ** Filesystem structure. (Sections 5.3.1, 5.3.2, and 5.3.3)
26 Nov: * Filesystem efficiency and security (Section 5.3.5)
28 Nov: * Passwords and viruses (Section 5.4.3 and 5.4.5)
30 Nov: * Permissions and network filesystems (Section 5.5.2)
4 Dec: * Filesystem research (Section 5.3.6)
6 Dec: Remote procedures
10 Dec: Overview
* A large portion of these notes are complete - the portion that's not complete is covered in the textbook similarly to what I did in class. You may have to hit Reload on the notes in order to get the most up-to-date version.
** The notes are very incomplete, but the textbook followed what I was saying pretty closely.