ScheduleΒΆ

  • The schedule will change as the course progresses, in part based on student interests. If you are particularly interested in some topic not covered here, send mail to the course staff.
  • Submit your answers (and questions) of each lecture via T-square, and post your questions to colleagues (and staffs) on Piazza.
Monday Tuesday Wednesday Thursday Friday
Aug 22
First day of class (No class)
Aug 23
LEC 1: Operating systems (xv6, code and book)
Preparation: Watch "Perspectives on OS Foundations" (Question)
Assignment: Lab 1: Booting a PC
Aug 24 Aug 25
TUT 1: Tools
Preparation: Watch Linus's talk on git (Question)
Aug 26
ADD DATE
Aug 29 Aug 30
LEC 2: Booting and x86 (minboot)
Preparation: Read Appendix A/B (Question)
Aug 31 Sep 1
TUT 2: C and gdb
Preparation: Read (Bitwise operators), (Pointers) and (Pointers to structures) (Question)
Assignment: Lab 2: Memory management
Sep 2
Sep 5
DUE: Lab 1
Labor Day
Sep 6
LEC 3: Shell & OS organization
Preparation: Read Chapter 0, UNIX (Question)
Sep 7 Sep 8
TUT 3: Elephant in memory
Preparation: Read "man 5 proc" (Question)
Sep 9
Sep 12 Sep 13
LEC 4: Isolation mechanisms
Preparation: Read Chapter 1 (Question)
Sep 14 Sep 15
TUT 4: Booting on your laptop
Preparation: Read (Kernel boot process) (Question)
Assignment: Lab 3: User environments
Sep 16
Sep 19
DUE: Lab 2
Sep 20
LEC 5: Virtual memory
Preparation: Read Chapter 2 (Question)
Sep 21 Sep 22
TUT 5: The weird machine
Preparation: Read about The Weird Machine (Question)
Sep 23
Sep 26
DUE: Lab 3 (Part A)
Sep 27
LEC 6: Virtual memory applications
Preparation: Read Chapter 2 (Question)
Sep 28 Sep 29
TUT 6: Lazy allocation
Preparation: Read "man 2 sbrk" (Question)
Sep 30
Oct 3 Oct 4
Quiz #1. Lab1-2, Ch 0-2, Appendix A/B
Oct 5 Oct 6
LEC 7: Quiz Discussion
Oct 7
Oct 10
Fall 2016 Student Recess
Oct 11
Fall 2016 Student Recess
Oct 12 Oct 13
LEC 8: System calls, interrupts, exceptions
Preparation: Read Chapter 3 (Question)
Oct 14
Oct 17
DUE: Lab 3 (Parts A & B)
Oct 18
LEC 9: Pre-proposal
Preparation: Submit one-page pre-proposal (Question)
Oct 19 Oct 20
LEC 10: Multiprocessors and locking
Preparation: Read Chapter 4 (Question)
Assignment: Lab 4: Preemptive multitasking
Oct 21
Oct 24 Oct 25
TUT 7: Threads and Spinlocks
Preparation: Read Chapter 5 (upto "Context switching", p57-60)
Oct 26 Oct 27
LEC 11: Processes and switching
Preparation: Read Chapter 5 (upto "Sleep and wakeup") (Question)
Oct 28
DROP DATE (Oct 29 (sic))
Oct 31
DUE: Lab 4 (Part A)
Nov 1
LEC 12: Team Proposal (slides)
Nov 2 Nov 3
LEC 13: Coordination
Preparation: Read Chapter 5 (Question)
Assignment: Lab 5: File system and shell
Assignment: Lab 6: Networking
Nov 4
Nov 7
DUE: Lab 4 (Part B)
Nov 8
TUT 8: Competition: a concurrent key value store
Preparation: Read and understand the provided code (Question)
Nov 9 Nov 10
LEC 14: File systems
Preparation: Read Chapter 6 (except "Logging") (Question)
Nov 11
Nov 14
DUE: Lab 4 (Part C)
Nov 15
TUT 9: fsck
Preparation: Understand mkfs (Question)
Nov 16 Nov 17
LEC 15: Crash consistency
Preparation: Read Chapter 6 ("Logging") (Question)
Nov 18
Nov 21
DUE: Lab 5
Nov 22 Nov 23
Thanksgiving Student Recess
Nov 24
Thanksgiving Student Recess
Nov 25
Thanksgiving Student Recess
Nov 28 Nov 29
Quiz #2. Lab 3-5, Ch 3-6
Nov 30 Dec 1
LEC 16: Quiz Review
Dec 2
Dec 5 Dec 6
LEC 17: Demo Day slides
Dec 7 Dec 8
Final exam week
(No final!)
Dec 9
DUE: Final project
Final exam week
(No final!)
Dec 12
Final exam week
(No final!)
Dec 13
Final exam week
(No final!)
Dec 14
Final exam week
(No final!)
Dec 15
Final exam week
(No final!)
Dec 16
DUE: Lab 6 (optional)