Here is the tentative schedule of lectures and due dates. The lecture material for future lectures may change.

While the notes and videos published here may help you remember the material discussed, they are not a replacement for attending lectures. Videos for each lecture will be published shortly after the lecture ends; if you do not see a link yet, check this page (Brown login required).

About deadlines: Assignments are generally due according to this schedule:

  • Projects are generally due on Fridays at 8pm
  • Labs are generally due on Tuesdays at 8pm
  • ❓ Post-Lecture Quizzes (PLQs) are due the day before the next lecture at 11:59pm

Code from the lectures is available at github.com/csci1670/cs1670-lectures. See the notes for each lecture for more info.

Seminar entries on Fridays are CS 1690 seminars, which are mandatory for students in CS 1690/2670 to attend.
This view hides the Friday CS 1690 seminars, which students in CS 1670 only do not attend. If you are enrolled in CS 1690 or CS 2670, switch to the OS with lab view above.
MondayTuesdayWednesdayThursdayFriday
sep 7
sep 8
sep 9
First day of classes
sep 10
sep 11
sep 14
LEC 2: Booting
📄Notes
🎥Video
❓PLQ
sep 15
DUE: Project 0 (Setup)
sep 16
sep 17
sep 18
sep 21
sep 22
DUE: Project 1: Bootup
sep 23
LEC 5: Multiprogramming, Context Switches
❓PLQ
sep 24
sep 25
sep 28
LEC 6: Cooperative Concurrency, Interrupts
sep 29
sep 30
LEC 7: Time Sharing, Scheduling
oct 1
oct 2
DUE: Project 2: Processes
Assigned: Project 3: Input/Output
Seminar 4: Scheduling
oct 5
LEC 8: Interactive I/O, Keyboard
oct 6
oct 7
LEC 9: Visual I/O, Framebuffer
oct 8
oct 9
Seminar 5: Graphical UIs
oct 12
Indigenous People's Day
oct 13
oct 14
LEC 10: User/Kernel Split, System Calls
oct 15
oct 16
DUE: Project 3: Input/Output
Assigned: Project 4: System Calls
Seminar 6: Privilege Levels
oct 19
LEC 11: Memory Protection, Virtual Memory
oct 20
oct 21
LEC 12: Page Tables, TLB, Swap
oct 22
oct 23
DUE: Project 4: System Calls
Assigned: Project 5: Virtual Memory
Seminar 7: Page Tables
oct 26
Midterm Quiz: in-class
❓No PLQ
oct 27
oct 28
LEC 13: Shared Memory, Copy-on-Write
oct 29
oct 30
Seminar 8: Superpages, Advanced VM
nov 2
LEC 14: Efficient I/O, DMA
nov 3
Election Day
nov 4
LEC 15: File Systems
nov 5
nov 6
DUE: Project 5: Virtual Memory
Assigned: Project 6: File System
Seminar 9: Special file systems
nov 9
LEC 16: File Systems II
nov 10
nov 11
LEC 17: Crash Consistency, Page Cache
nov 12
nov 13
Seminar 10: Platform security
nov 16
LEC 18: File Permissions, Security
nov 17
nov 18
LEC 19: Synchronization, Multicore
nov 19
nov 20
DUE: Project 6: File System
Assigned: Project 7: Final Project
Seminar 11: Beyond Multicore CPUs
nov 23
LEC 20: Failed OSes
nov 24
nov 25
Thanksgiving Recess
nov 26
Thanksgiving Recess
nov 27
Thanksgiving Recess
nov 30
LEC 21: Multicore II
dec 1
dec 2
LEC 22: Hypervisors, VMMs
dec 3
dec 4
Seminar 12: Containers
dec 7
LEC 23: Kernel extensibility, Kernel bypass
dec 8
dec 9
LEC 24: TBD
dec 10
dec 11
Last day of classes
DUE: Project 7: Final Project
No seminar
dec 14
dec 15
dec 16
dec 17
SATURDAY, dec 19
Final Quiz
Timing: 2:00pm-5:00pm, rooms TBD