CS 471 Tentative Schedule, Spring 2020

1 Programming Assignments

All programming assignments will be posted and announced as early as we have them prepared.
These dates will be populated when the assignments are given.

  • PA 0: Monday, January 27 - Monday, February 10 (11:59pm)
  • PA 1: Thursday, February 19th - Friday, March 27
  • PA 2: Friday, April 3rd - Friday, May 8th

2 Test Schedule

Tests are bigger milestones, and their dates are announced ahead of time.
The Midterm date is tentative and will be confirmed by the Professor at least two weeks before the date.

  • Midterm 1: Mar 4 (W) in your normal classroom. 
    • Covers Chapters 1-6 (Processes and Threads), 26-33 (Synchronization and Concurrency)
  • Midterm 2: Apr 27 (M) Online; Details TBD. 
    • Covers Chapters 7-11 (Scheduling), 13-23 (Memory Management and Virtual Memory)
  • Final Exam: See Exam Schedule. The format is TBD, however, once the format is set, you will have a window of time to start the exam and the normal amount of time to complete once started. (Accommodations will be Applied to Time)

3 Topics and Readings

Below is a tentative schedule, which is subject to change as needed.

  • This is the Planned Schedule of Topics.  Individual lectures may vary, but this this the plan.
  • Note: Monday Jan 20 is a Holiday, so the M/W section will be off by one lecture relative to the T/Th or the F sections.
Week of Topic Lecture Topics       
Text Readings
Monday    
(For this Week)
1/20
Intro to OS
Course Intro

1-2 (Operating Systems Overview)
   


1/27
 
History and Overview of OS

1-2 (Operating Systems Overview)
  Processes and Threads
Processes and Threads

5-6 (Processes), 26 (Threads)
2/3

Processes and Threads


5-6 (Processes), 26 (Threads)
2/10

Synchronization
Processes and Threads
Synchronization

5-6 (Processes), 26 (Threads)
27-33 (Synchronization)
2/17
Synchronization
27-33 (Synchronization)
 



2/24
Scheduling
Scheduling

7-10 (Scheduling)
 



3/2

Scheduling
7-10 (Scheduling)
 
Midterm (All Sections)

Covers: Processes, Threads, Synchronization
3/9
Spring Break


 



3/16
Spring Break

 
Part 2


3/23 Scheduling
Non-Preemptive Scheduling

7-10 (Scheduling)
 
Preemptive Scheduling


3/30

Real-Time Scheduling


  Memory Overview

13-21 (Memory Management)
4/6

Contiguous and Segmentation


 
Paging and TLB


4/13
Virtual Memory Page Tables / Demand Paging

21-23 (Virtual Memory)
 
Page Replacement, Working Sets


4/20
File System
Overview and Tree Structures

36-45 (File Systems)
 
Disk Scheduling / ZFS


4/27

Midterm 2




NAND and Flash Storage


5/4
Security
Buffer Overflow, ASLR

Slides





5/11
Virtualization
Virtualization Overview

Slides