USC CSD Home
 

Lectures - CSCI 402, Spring 2017, All Sections

 
Lecture Slides
(Please note that access to lecture notes is restricted.)
MW Section TuTh Sections (AM&DEN)
Lecture 1 (PDF) (6-up PDF) (Jan 9&10, 2017) - administrative
Lecture 2 (PDF) (6-up PDF) (Jan 11&12, 2017) - introduction (Ch 1), a simple OS (Ch 1)
(Jan 16, 2017) - Martin Luther King Day, university holiday TT Lecture 3 (PDF) (6-up PDF) (Jan 17, 2017) - a simple OS (Ch 1)
MW Lecture 4 (PDF) (6-up PDF) (Jan 18, 2017) - a simple OS (Ch 1) TT Lecture 4 (PDF) (6-up PDF) (Jan 19, 2017) - a simple OS (Ch 1), thread creation, termination, synchronization (Ch 2)
MW Lecture 5 (PDF) (6-up PDF) (Jan 23, 2017) - a simple OS (Ch 1), thread creation, termination, synchronization (Ch 2) TT Lecture 5 (PDF) (6-up PDF) (Jan 24, 2017) - thread creation, termination, synchronization (Ch 2)
MW Lecture 6 (PDF) (6-up PDF) (Jan 25, 2017) - thread creation, termination, synchronization (Ch 2) TT Lecture 6 (PDF) (6-up PDF) (Jan 26, 2017) - thread creation, termination, synchronization (Ch 2)
Lecture 7 (PDF) (6-up PDF) (Jan 30&31, 2017) - thread creation, termination, synchronization (Ch 2), thread safety, deviations (Ch 2)
Lecture 8 (PDF) (6-up PDF) (Feb 1&2, 2017) - thread safety, deviations (Ch 2), context switching, I/O (Ch 3)
Lecture 9 (PDF) (6-up PDF) (Feb 6&7, 2017) - context switching, I/O (Ch 3)
Lecture 10 (PDF) (6-up PDF) (Feb 8&9, 2017) - context switching, I/O (Ch 3), dynamic storage allocation (Ch 3)
MW Lecture 11 (PDF) (6-up PDF) (Feb 13, 2017) - dynamic storage allocation (Ch 3), static linking and loading (Ch 3) TT Lecture 11 (PDF) (6-up PDF) (Feb 14, 2017) - dynamic storage allocation (Ch 3), static linking and loading (Ch 3)
MW Lecture 12 (PDF) (6-up PDF) (Feb 15, 2017) - booting (Ch 3), a simple system (Ch 4), threads implementations (Ch 5) TT Lecture 12 (PDF) (6-up PDF) (Feb 16, 2017) - static linking and loading (Ch 3), booting (Ch 3), a simple system (Ch 4)
(Feb 20, 2017) - Presidents' Day, university holiday TT Lecture 13 (PDF) (6-up PDF) (Feb 21, 2017) - a simple system (Ch 4), threads implementations (Ch 5)
MW Lecture 14 (PDF) (6-up PDF) (Feb 22, 2017) - threads implementations (Ch 5), interrupts (Ch 5) TT Lecture 14 (PDF) (6-up PDF) (Feb 23, 2017) - threads implementations (Ch 5), interrupts (Ch 5)
Lecture 15 (PDF) (6-up PDF) (Feb 27&28, 2017) - interrupts (Ch 5), storage management (Ch 4)
Lecture 16 (PDF) (6-up PDF) (Mar 1&2, 2017) - files (Ch 1)
Lecture 17 (PDF) (6-up PDF) (Mar 6&7, 2017) - exams, the basics of file systems (Ch 6), virtual memory (Ch 7)
Lecture 18 (PDF) (6-up PDF) (Mar 8&9, 2017) - virtual memory (Ch 7)
(Mar 13-17, 2017) - Spring recess
Lecture 19 (PDF) (6-up PDF) (Mar 20&21, 2017) - virtual memory (Ch 7)
(Mar 22,23, 2017) - midterm exam
Lecture 21 (PDF) (6-up PDF) (Mar 27&28, 2017) - OS issues (Ch 7)
Lecture 22 (PDF) (6-up PDF) (Mar 29&30, 2017) - OS issues (Ch 7)
Lecture 23 (PDF) (6-up PDF) (Apr 3&4, 2017) - OS issues (Ch 7), performance improvements (Ch 6), crash resiliency (Ch 6)
Lecture 24 (PDF) (6-up PDF) (Apr 5&6, 2017) - crash resiliency (Ch 6), directories and naming (Ch 6)
Lecture 25 (PDF) (6-up PDF) (Apr 10&11, 2017) - directories and naming (Ch 6), RAID, flash memory, case studies (Ch 6), devices (Ch 4)
Lecture 26 (PDF) (6-up PDF) (Apr 12&13, 2017) - devices (Ch 4), virtual machines, microkernels (Ch 4)
Lecture 27 (PDF) (6-up PDF) (Apr 17&18, 2017) - virtual machines, microkernels (Ch 4)
Lecture 28 (PDF) (6-up PDF) (Apr 19&20, 2017) - microkernels (Ch 4), scheduling (Ch 5)
Lecture 29 (PDF) (6-up PDF) (Apr 24&25, 2017) - scheduling (Ch 5)
Lecture 30 (PDF) (6-up PDF) (Apr 26&27, 2017) - scheduling (Ch 5), shared libraries (Ch 3)

Preview:

  • Lecture 30 will cover scheduling (Ch 5) and shared libraries (Ch 3). You can get a preview by looking at slides from Fall 2016.
  • (May 5, 2017) - MW section final exam, 11am - 1pm (firm)
  • (May 9, 2017) - AM section final exam, 8am - 11am (firm)
  • (May 9, 2017) - DEN section final exam, 11am - 1pm (firm)
 
Tentative Slides
The following are tentative slides (in PDF format) for this semester.
 
Rough Schedule (subject to change without notice)

Week # Dates Topics Comments
1 1/9-1/12 administrative, introduction (Ch 1), a simple OS (Ch 1) (warmup #1 starts)
2 1/16
1/17-1/19
(Martin Luther King Day holiday)
a simple OS (Ch 1), thread creation, termination, synchronization (Ch 2)
 
3 1/23-1/26 thread creation, termination, synchronization (Ch 2)  
4 1/30-2/2 thread safety, deviations (Ch 2), context switching, I/O (Ch 3) (warmup #2 starts)
5 2/6-2/9 context switching, I/O (Ch 3), dynamic storage allocation (Ch 3)  
6 2/13-2/16 static linking and loading, booting (Ch 3), a simple system (Ch 4)  
7 2/20
2/21-2/23
(Presidents' Day holiday)
a simple system (Ch 4), threads implementations (Ch 5), interrupts (Ch 5)
(kenel #1 starts)
8 2/27-3/2 interrupts (Ch 5), storage management (Ch 4), files (Ch 1)  
9 3/6-3/9 the basics of file systems (Ch 6), directories and naming (Ch 6)  
- 3/13-3/17 (Spring Recess)  
10 3/20-3/21
3/22-3/23
virtual memory (Ch 7)
midterm exam
(kenel #2 starts)
11 3/27-3/30 virtual memory (Ch 7), OS issues (Ch 7)  
12 4/3-4/6 OS issues (Ch 7), crash resiliency (Ch 6)  
13 4/10-4/13 RAID, flash memory, case studies (Ch 6), devices (Ch 4) (kenel #3 starts)
14 4/17-4/20 virtual machines, microkernels (Ch 4)  
15 4/24-4/27 scheduling (Ch 5), shared libraries (Ch 3)  
 

[Last updated Sat Sep 19 2020]    [Please see copyright regarding copying.]