Department of Computer Science 


CS 414/415: Spring 2005

Systems Programming and Operating Systems

 
 
Course Details
 Home
 Overview
 Course Staff/Help
 Academic Integrity
 How to Lose in CS 414
 
Schedule
 Lecture Notes
 CS415 Sections
 
Assignments
 Homework
 Projects
 Exams
 
Resources
 C for Java programmers
 CVS in CSUGLab
 Suggested Readings
   

Date

Topics Covered

Reading (7th Edition)
Italics for 6th Edition

01/24

Course Overview, History

S&G Ch.1
Ch.1

01/25

Architectural Support

S&G Ch.1
Ch.2

01/26

Design of OSes

S&G Ch.2
Ch.3

01/31

Processes
(Process Explorer from Sysinternals)

S&G Ch.3
Ch.4

02/01

Threads

S&G Ch.4
Ch.5

02/02

CPU Scheduling

S&G Ch.5
Ch.6

02/07

CPU Scheduling

S&G Ch.5
Ch.6

02/08

Race Conditions

S&G Ch.6
Ch.7

02/09

Semaphores

S&G Ch.6
Ch.7

02/14

Spinlocks and Atomic Load/Store

S&G Ch.6
Ch.7

02/15

IPCs and Classical Synchronization Problems

S&G Ch.3 & 6
Ch.4 & 7

02/16

Language Support for Synchronization

S&G Ch.6
Ch.7

02/21

Deadlocks: Prevention and Avoidance

S&G Ch.7
Ch.8

02/22

Deadlocks: Detection and Recovery

S&G Ch.7
Ch.8

02/23

Introduction to Distributed Systems & Networking

S&G Ch.16
Ch.17

02/28

Introduction to Distributed Systems & Networking

End-to-End paper

03/01

Networking: Link Layer

 Ethernet paper

03/02

Networking: The Network Layer

 

03/07

The Domain Name System

 DNS basics

03/08

Networking: The Transport Layer

 

03/09

Remote Procedure Calls

 S&G Ch. 3.6
Ch. 4.6

03/14

Midterm

 

03/15

Memory Management

 S&G Ch. 8
Ch. 9

03/16

Virtual Memory

 S&G Ch. 9
Ch. 10

03/23

Spring Break

 

03/24

Spring Break

 

03/25

Spring Break

 

03/28

Thrashing, Dynamic Memory Allocation

S&G Ch. 9
Ch. 10
malloc Implementation

03/29

Disks

S&G Ch. 12
Ch. 13

03/30

More on Disks, RAID

S&G Ch. 12
Ch. 13

04/04

File Systems: Introduction

S&G Ch. 10
Ch. 11

04/05

File Systems: Implementation

S&G Ch. 11
Ch. 12

04/06

File Systems: Directories, Sharing, Free Space

S&G Ch. 11
Ch. 12

04/11

File Systems: Backups, Consistency, Performance

S&G Ch. 11
Ch. 12

04/12

File Systems Examples: DOS, NTFS, UFS, ext2fs

S&G Ch. 21.7, 22.5
Ch. 20.7, 22.5

04/13

LFS and NFS

S&G Ch. 11.8, 11.9
Ch. 12.8, 12.9

04/18

P2P File Systems

 

04/19

AFS and Napster

S&G Ch. 17.6
Ch. 16.6

04/20

Security Basics, Authentication

S&G Ch. 15
Ch. 19

04/25

OS Support for Databases

 

04/26

Security: Attacks

S&G Ch. 15
Ch. 19

04/27

Security: Defense, Mobile Code

S&G Ch. 15
Ch. 19

05/02

Security: Protection Mechanisms, Trusted Systems

S&G Ch. 14
Ch. 18

05/03

Overview of Distributed Systems

S&G Ch. 18
Ch. 17

05/04

Course Review

 

Some lecture slides adapted from Gun's slides from previous year's CS414 and Mendel Rosenblum's slides from an OS course