COMP 530 -- Introduction to Operating Systems
Fall 2009
MWF 2:00-3:15, Brooks 007
Instructor:
Kevin Jeffay
Office hours by appointment
FB316,
jeffay at cs.unc.edu
Copies of Homework Assignments
Homework 1 --
UNIX Warmup
(Fri 8/26) Due 9/9
Homework 2 --
Building a Simple UNIX Shell
(Wed 9/9) Due 9/23
Homework 3 --
Written Problems on Processes & Scheduling
(Wed 9/23) Due 9/30
Homework 4 --
Implementing Producer/Consumer Systems With Threads
(9/30) Due 10/14
**REVISED 10/4**
Homework 5 --
Some written problems on process synchronization
(10/12) Due 10/21
**REVISED 10/18**
Homework 6 --
Implementing Producer/Consumer Systems With Pipes
(10/28) Due 11/4
Homework 7 --
Some written problems on memory management
(11/4) (Due 11/18)
Class Schedule & Lecture Notes
Aug. 26 --
Administrivia
Aug. 31 --
History of OSs & Basic OS Concepts
Reading:
Chapter 1 -- Introduction
Chapter 2 -- Operating Systems Structures
Sep. 2 --
Processes
Reading:
Chapter 3 -- Processes
Sep. 9 --
Process Implementations & Processor Scheduling
Reading:
Chapter 4 -- Threads
Chapter 5 -- CPU Scheduling
Sep. 14 --
Scheduling Policies
Reading:
Chapter 19 -- Real-Time Systems
Chapter 21 -- The Linux System (section 21.5 on Scheduling)
Sep. 21 --
Process Coordination
Reading:
Chapter 6 -- Process Synchronization
Sep. 23 --
Semaphores
(An animated version of the slides is available
here
.)
Reading:
Chapter 6 -- Process Synchronization
Oct. 5 --
Higher-Level Synchronization Primitives
Reading:
Chapter 6 -- Process Synchronization
Oct. 12 --
Message Passing
Reading:
Chapter 21 -- The Linux Systems (section 21.9 on Inter-Process Communication)
Oct. 19 --
Memory Management
Reading:
Chapter 8 -- Main Memory
Oct. 21 --
Virtual Memory
Reading:
Chapter 9 -- Virtual Memory
Nov. 4 --
Page Replacement Algorithms
Reading:
Chapter 9 -- Virtual Memory
On-Line References
COMP 530 Lab web page
What you have to look forward to when you graduate...
Dilbert du jour.
- Last revised: Mon Aug 31 19:23:23 EDT 2009 by jeffay at cs.unc.edu