Prof. Quynh Dinh
Tuesdays 2:00-3:15pm, Pierce 116.
Thursdays 2:00-3:15pm, Pierce 120.
Office Hours: Tuesdays 3:30-5pm, Lieb Building rm.302. All other times by appointment.
TA: Alam Bakr (alambakr@hotmail.com)
Office Hours: Thursdays 3:30-5pm, Burchard rm.127 (NetBSD lab). All other times by appointment.
All assignments are due at 11:59pm (midnight) on the due date. Assignments are to be submitted using the submit Unix command. You will be allowed to submit the assignment up to 4 times until the due date/time. Directions on how to submit assignments can be found at the submission procedure.
10 points (out of 100) will be taken off for each day that an assignment is turned in late. In other words, 10 points will be taken off if the assignment is turned in before midnight the day after the due date, and so on. Assignments may be turned in late up to 5 days after the due date/time.
Please see policy
on collaboration.
Warning: The links below are to MS Powerpoint slides which can augment your notes. These slides do not completely cover topics discussed in class or in reading assignments. Solutions to exam questions and programming assignments may not appear in the slides.
The following is a tentative schedule and is subject to change.
|
|
|
|
|
| Introduction | Ch.1 | ||
| System Calls, Processes, Threads | Ch.2.1-2.2, Assignment 1 | ||
| Interprocess Communication | p.864-866, Ch.2.3 | ||
| Critical Section, Mutual Exclusion, Producer-Consumer | Ch.2.3-2.4 | ||
| Hardware-enabled Locking, Semaphores, Mutexes | Assignment 1 due Sept. 13 | ||
| Monitors, Message Passing, Remote Procedure Call (RPC) | Ch.8.2.3-8.2.4 | ||
| Scheduling | Ch.2.5, Assignment 2 | ||
| Deadlocks | Ch.3 | ||
| Deadlocks | |||
| Memory Management | |||
| Swapping, Variable Partitions | Ch.4.1-4.3, Assignment 2 due Oct. 6 | ||
| Virtual Memory, Paging, Review | Ch.4.3 | ||
| NO CLASS | |||
| Midterm | Assignment 3 | ||
| Page Replacement Strategies | Ch.4.4-4.5 | ||
| Page Replacement Strategies | |||
| Page Allocation, Page Size, Page Faults, Backing Store | Ch.4.6-4.7 | ||
| Memory Segmentation, I/O, Devices | Ch.4.8, Assignment 3 due Oct. 29 | ||
| I/O, Devices | Ch.5.1-5.4, 5.6, 5.8, Assignment 4 | ||
| Device Drivers, Plug-n-Play, Streams | Ch.10.5.3-10.5.4, Ch.11.6.4 | ||
| Disks | |||
| Network Terminals, File Systems | Ch.5.8 | ||
| File Systems | Ch.6.1-Ch.6.2, Assignment 4 due Nov. 17, | ||
| File System Implementation | Ch.6.3.1, 6.3.2, 6.3.5, 6.3.6 (file system consistency), 6.3.7 | ||
| NetBSD, OpenBSD & Security Issues | Ch.6.4.2-6.4.5, Assignment 5 | ||
| NO CLASS | |||
| Example File Systems | Ch.10.6.3, Ch.11.7 (up to 11.7.3 File Compression) | ||
| Mac OS 9 & X, OS for Multi-processor Systems | |||
| Reiser 4 File System, Network File System | Assignment 5 due Dec. 13 | ||
| Final Exam |
| Programming Assignment #1 | grades | Partial Solution: parent.c child.c |
| Programming Assignment #2 | grades | |
| Programming Assignment #3 | grades | |
| Programming Assignment #4 | grades | |
| Programming Assignment #5 | grades |
You will be using C or C++ under Unix (netBSD machines or guinness). Burchard 127 has
Unix terminals availabel for CS students. You may develop and debug all your
code on any machine you like, but before you submit your homework make sure it compiles and runs on NetBSD. If you don't
already have a computer account, make sure you get one, by contacting the CS system administrator.