CS 471 Planned Schedule, Fall 2021

1 Programming Assignments (Projects) and Homeworks

Programming Assignments:

  • All programming assignments will be posted and announced as early as we have them prepared, generally with at least two weeks to complete.
  • These dates are subject to change as needed during the semester.
    • Programming Assignment 0: Aug 30 - Sep 14
    • Programming Assignment 1: Sep 29 - Oct 14 (Part 1) and Oct 28th (Part 2)
    • Programming Assignment 2: Nov 1 - Nov 17 (Part 1) and Dec 3 (Part 2)
Homeworks:
  • There will be approximately six homeworks, which will be assigned through Blackboard.
  • You will have about a week to work on each homework assignment.

2 Exam Schedule

Tests are bigger milestones, and their dates are announced ahead of time.
Only severe scheduling anomalies would force a delay in test dates.

  • Midterms:
    1. October 7th (Thursday)
      • OS Structures, Processes/Threads, Synchronization
    2. November 11th (Thursday)i
      • Scheduling, Memory Management, and Virtual Memory
    • More information will be provided as the date closes in.
    • The exams will be taken in-class.

  • Final Exam: See Exam Schedule for the Date and Times.

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 Sep 6 is a Holiday
  • Note: Monday, Oct 11 is a Holiday. All Monday Classes will meet on Tuesday, Oct 13. Our Classes will not meet on Tuesday.
  • Note: Wednesday, Nov 24 - Friday, Nov 26 is Thanksgiving Break
Week Topic Lecture Topics Text Readings Homework
1 Intro to OS
Course Intro 1-2 OS Overview

(Aug 23-27) OS Structures
History and Overview of OS
1-2 OS Overview

2 Processes and
Processes 4-6 (Processes)
Intro to OS
(Aug 30-Sep 3) Threads
Process Communications
4-6 (Processes)
(*Revised Due Sep 10th by 11:59pm)
Monday (Sep 6) is a Holiday. Tuesday - Friday are Normal Classes
3
Process Graphs and States
4-6 (Processes)

(Sep 7-10)
Examples and Signals
4-6 (Processes)

4
IPC and Threads
26 (Threads)
Processes
(Sep 13-17) Synchronization Concepts 26-27 (Synchronization)
Due Sep 23 by 23:59pm on Gradescope
5
Locks and Primitives
28-29 (Locks)

(Sep 20-24)
Mutexes and Semaphores
29-31 (Mutex/Semaphore)

6
Semaphore Problems / Monitors
30-32 (Semaphores/Problems)
Synchronization
(Sep 27-Oct 1) Scheduling MCS, Scheduling Metrics
7 (Scheduling)
HW3: Sep 28 - Oct 5, due by 11:59pm
7
Non-Preemptive Algorithms
7 (Scheduling)

(Oct 4-8)
Midterm  1 (Oct 7): Beginning - Synchronization

Monday (Oct 11) is a Holiday. Monday Classes WILL MEET on Tuesday Oct 12!
8
(No Class on Tuesday)

(Oct 12-15)
Pre-emptive Algorithms
7-8 (Scheduling)

9
Real-Time Scheduling and Multi-Core
9-10 and Slides (Multi-Core)
Scheduling
(Oct 18-22) Memory Mgmt Overview Ch 13-21 (Memory Mgmt)
HW4: Due Nov 2 by 11:59pm
10
Contiguous Allocation
Ch 13-21 (Memory Mgmt)
(Oct 25-29)
Segmentation Ch 13-21 (Memory Mgmt)
11
Paging
Ch 13-21 (Memory Mgmt) Memory
(Nov 1-5)
Page Tables and Paged Segmentation
Ch 13-21 (Memory Mgmt) HW5: Due Nov 9 by 11:59pm
12 Virtual Memory
Page Faults and Effective Access Times
Slides
(Nov 8-12)
Midterm 2: Scheduling and Memory Mgmt


13
Page Replacement
Ch 13-21 (Memory Mgmt) Virtual Memory
(Nov 15-19)
Working Sets
Ch 13-21 (Memory Mgmt) HW6: Due Nov 30 by 11:59pm
Wed (Nov 24) through Fri (Nov 26) is a Holiday.
14 File Systems
FS Overview
Slides

(Nov 22-23)
(No Class on Thursday)

15
FS Management, RAID and SSDs Slides File Systems
(Nov 29-Dec 3) Security OS Security Topics Slides Security (No Due)