COP 6611: Graduate Operating Systems
Spring 2008

Professor: Adriana Iamnitchi (Anda)
Class time and location: Tu, Th 3:30pm-4:45pm, ENB113

Office Hours: Wednesdays 2-4pm and by email appointment
Office: ENB 334
Email: anda at cse usf edu

Teaching Assistant: Alex Lagor
Office Hours/Tutorials: TBD.
Office:  TBD
Email: alagor at cse usf edu

Announcements:

syllabus schedule projects

Overview

This course will cover an exciting range of materials from the broad field of operating systems, including basic operating system structure, communication, memory management, reliability, file systems and storage, virtual machines, security, and manageability. We will examine influential historical systems and important current efforts, extracting lessons both on how to build systems as well as how to evaluate them.

Textbook: Operating System Concepts, 7th Edition, Silberschatz. Galvin and Gagne (ISBN 0-471-69466-5)

Syllabus

top


Schedule

Week
Topics
Reading
Notes Assignments
1
Overview Ch. 1, 2, 23 E. W. Dijkstra. The Structure of the "THE" Multiprogramming System. Communications of the ACM 11(5), 1968.
D. M. Ritchie and K. Thompson. The UNIX Timesharing System. Communications of the ACM 17(7), 1974.
lec1.ppt
lec2.ppt
fork vs. threads
Due 01/22.
2
Process Management. Threads. Scheduling Ch. 3, 4, 5 C. Waldspurger and W. Weihl. Lottery Scheduling: Flexible Proportional-Share Resource Management in Proceedings of  1st USENIX Symposium on Operating System Design and Implementation, 1994. lec3.ppt
lec4.ppt

3
Process Synchronization.
Ch. 6
P. J. Courtois, F. Heymans, D. L. Parnas. Concurrent control with “readers” and “writers”, Communications of the ACM,  14(10), 1971 lec5.ppt
lec6.ppt

4
Deadlocks. 
Invited Talk (BlueGene)
Ch 7
Thursday: Invited talk by Dr. Florin Isaila on "Scalable Operating Systems for Blue Gene Supercomputers"
Suggested reading: Moreira et. al. Designing a highly-scalable operating system: the Blue Gene/L story
lec7.ppt
lec8.ppt
readers/writers
Due 02/10
5
Memory Management Ch. 8, 9 C. Waldspurger. Memory Resource Management in VMware ESX Server in Proceedings of the 5th Symposium on Operating Systems Design and Implementation, 2002 lec9.ppt
lect10.ppt

6
File Systems Ch. 10, 11 M. Rosenblum and J. K. Ousterhout. The Design and Implementation of a Log-Structured File System. ACM Trans. on Computer Systems 10(1), 1992, pp. 26-52.
W. Vogels. File system usage in Windows NT, Proceedings of the 17th ACM Symposium on Operating Systems Principles
lec11.ppt

7
Distributed File Systems Ch. 16, 17
E. Nightingale, P. Chen, J. Flinn. Speculative Execution in a Distributed File System, in Proceedings of the 20th ACM Symposium on Operating Systems Principles
(optional) J. Howard et. al. Scale and Performance in a Distributed File System, ACM Transactions on Computer Systems, 6(1) ,  1988.
lec14.ppt

8
Examples of File Systems. File-sharing.


S. Ghemawat, H. Gobioff and S-T Leung. The Google File System, in Proceedings of the 19th ACM Symposium on Operating Systems Principles, 2003


9
Mass Storage Structures.
Midterm exam (Thursday)
Ch. 12 (due Tuesday) D. A. Patterson, G. Gibson, and R. H. Katz. A Case for Redundant Arrays of Inexpensive Disks (RAID) Proceedings of the 1988 ACM SIGMOD Conference on Management of Data, 1988.
lec17.ppt

Spring Break
10
Distributed Storage
G. Gibson, D. Nagle, K. Amiri, F. Chang, E. Feinberg, H. Gobioff, C. Lee, B. Ozceri, E. Riedel, D. Rochberg, and J. Zelenka. File Server Scaling with Network-Attached Secure Disks, in Proceedings of Proc. of the ACM International Conference on Measurement and Modeling of Computer Systems (Sigmetrics), 1997.
Project
Progress Reports
Due 03/24
11
Protection and Security Ch. 14, 15
lect22.ppt
lec23.ppt

12
Security Issues on the Internet
BotNets Worshop summaries (no summaries to be submitted)
lec24.ppt
Assignment 3
Due 04/06
13
Distributed Systems.
Distributed Coordination
Ch. 18 L. Lamport, Time, Clocks, and the Ordering of Events in a Distributed System, Communications of the ACM, July 1978, pages 558-564.  lec25.ppt

14 More on Distributed Systems.
K. M. Chandy and L. Lamport, Distributed Snapshots: Determining Global States of Distributed Systems, ACM Transactions on Computer Systems, February 1985, pages 63-75. 
Assignment 5
Due 04/20
15
Final project presentations [schedule]
Assignment 4
Due 04/27
Final Exam: May 1, 3:30--5:30 pm

top



Final Projects

nProjects (timeline):


The projects selected are below. In some cases, multiple groups selected the same project.

  1. System measurements of Google Android
  2. Temperature-aware CPU Scheduler
  3. Data Aware Job Scheduling
  4. Improving Operating System Support for Multi-core Processors
  5. Security Exploits in Virtual Machines
  6. Android Contact Sync
  7. A Linux Cluster Monitoring Tool
  8. Overhead Evaluation of Virtual Machines
  9. Performance Evaluation of Amazon’s EC2 system co-working with the S3
  10. A Comparison of Virtual Machine Performance Using Intel VT
  11. Moving jobs to the cloud with data mining techniques
  12. Threading Issues on the IBM CELL Processor
  13. Lottery Scheduling in MINIX
top

Adriana Iamnitchi (anda at cse usf edu)