Home CS439



CS439: Principles of Computer Systems

Dr. Alison N. Norman

Schedule for Spring 2023

This schedule, and the links contained in it, are subject to change during the semester. Exam dates, however, are final.

Reading assignments are generally from one of the required textbooks:

Readings from additional sources are linked from the schedule. All reading assignments are recommended and are most beneficial when completed before class on the schedule day.

 Date

 

Topic

Suggested Readings


Mon Jan 9 Introduction & Themes Reading: OSTEP: Chapter 2, except 2.6
Wed Jan 11 History of Operating Systems
Fri Jan 13 Attend discussion section
Problem Set 0 due 10:59p
(Electronic Submission through Canvas)

Mon Jan 16 Martin Luther King Jr. Day
Wed Jan 18 Processes
Reading: OSTEP: The Process, Process API, and Limited Direct Execution up to 6.3
Project 0 available
Fri Jan 20 Section 1 Problem Set due in section
Shell Group Planning and Reflections document due at 11:59p

Mon Jan 23 More Processes and CPU Scheduling Reading: OSTEP: CPU Scheduling
and The Multi-Level Feedback Queue
Wed Jan 25 Threads and Too Much Milk!
Reading: OSTEP: Concurrency and Threads API (up to 27.3)
Fri Jan 27 Project 0 Design Doc rough draft due in section
Project 0 Code due at 5:59p
Project 0 Design Doc due at 10:59p
Shell Group Evaluation document due at 11:59p

Mon Jan 30 Locks and Semaphores Reading: OSTEP: Locks (skip 28.8-28.11) and
Semaphores (up to 31.5)
Project 1 available
Project 1 group registration due 10:59p
Wed Feb 1 Deadlock and Monitors
Reading: OSTEP: Common Concurrency Problems, pages 1-11 (stop at "Deadlock Avoidance via Scheduling"), and
Monitors
Fri Feb 3 Section 3 Problem Set due in section
Threads Group Planning and Reflections document due at 11:59p

Mon Feb 6 More Synchronization
Reading: MH: Atomic Transactions: Intro and Durability (5.1 and 5.4)
Wed Feb 8 The Importance of Safety
  1. Read the Therac-25 paper, following these tips.
    If you are off-campus, this link through the UT libraries Web proxy may be useful.
  2. Read this New York Times article and at least the first two pages of this one
    (make sure you see the pictures).
Fri Feb 10 Project 1 Design Doc rough draft due in section
Project 1 Code due at 5:59p
Project 1 Design Doc due at 10:59p
Threads Group Evaluation document due at 11:59p
Project 2 available

Mon Feb 13 Synch Review
Project 2 group registration due 10:59p
Wed Feb 15 Exam 1 7p-9p in UTC 2.102A
Fri Feb 17 Discussion Section Special Event
Userprog Group Planning and Reflections document due at 11:59p

Mon Feb 20 Memory: Overview
Reading: OSTEP: Address Spaces and
Mechanism: Address Translation
Project 2 Stack Check Due
Wed Feb 22 Virtual Memory: Mechanisms Reading: OSTEP: Paging: An Introduction
Fri Feb 24 Section 5 Problem Set due in section
Userprog Group Reflections document due at 11:59p

Mon Feb 27 Virtual Memory: Policies
Reading: OSTEP: Paging: Smaller Tables and Swapping: Policies
Wed Mar 1 Virtual Memory: More Policies Project 3 available
Fri Mar 3 Section 6 Problem Set due in section
Project 2 Code due at 5:59p
Userprog Group Evaluation document due at 11:59p

Mon Mar 6 Heap Memory Management
Reading: OSTEP: Memory:API
Project 2 Code Reviews begin
Project 3 group registration due 10:59p
Wed Mar 8 Garbage Collection
Fri Mar 10 No discussion sections
Project 3 Data Structures due at 10:59p
VM Group Planning and Reflections document due at 11:59p

Mon-Fri Mar 13-Mar 17 Spring Break!

Mon Mar 20 Secondary Storage
Reading: OSTEP: I/O Devices, Hard Disk Drives, and SSDs
Wed Mar 22 File System Fundamentals and Design
Reading: OSTEP: Files and Directories,
File System Implementation,
and Locality and The Fast File System
Fri Mar 24 Section 7 Problem Set due in section
VM Group Reflections document due at 11:59p

Mon Mar 27 File System Consistency Reading: OSTEP: Crash Consistency: FSCK and Journaling
Wed Mar 29 Exam 2 7p-9p in UTC 2.102A
Fri Mar 31 No Discussion Sections Project 3 Code due at 5:59p
Project 3 Design Doc due at 10:59p
VM Group Evaluation document due at 11:59p
Project 4 available

Mon Apr 3 Networks and Their Abstractions Reading: An Introduction to Computer Networks, Chapter 1, sections 1-1.3, 1.9-1.14, by Peter L. Dordal
Project 4 group registration due 10:59p
Wed Apr 5 Sockets and Parallel Programming
Fri Apr 7 Section 8 Problem Set due in section
Filesys Group Planning and Reflections document due at 11:59p

Mon Apr 10 Parallel and Distributed Computing
Reading: OSTEP: Multiprocessor Scheduling
Distributed Systems for Fun and Profit, by Mikito Takada, Chapter 2 and Chapter 3
Wed Apr 12 Fancy File Systems
Reading: NFS
The Google File System
Fri Apr 14 Section 9 Problem Set due in section
Filesys Group Reflections document due at 11:59p

Mon Apr 17 The Security Mindset Reading: OSTEP: Why Security,
Introduction to OS Security, and
Authentication
Wed Apr 19 Putting It All Together
Fri Apr 21 No discussion sections
Project 4 Code due at 5:59p
Project 4 Design Doc due at 10:59p
Filesys Evaluation document due at 11:59p
No slip days!

Mon Apr 24 Something Different
Final Exam is at the time and location scheduled by the registrar
NOT at the time given on the registrar's tentative schedule, but at a uniform time with my other sections of CS439.
The registrar typically publishes the final exam schedule in early April.

The exam may be as late as Monday, May 1st.