University of Arizona, Department of Computer Science  
 

CSc 552

Advanced Operating Systems, Fall 2008 


[Home]  [Schedule] [Reading List] [Homework] [Grades]

Instructor John H. Hartman 
jhh@cs.arizona.edu
747 Gould Simpson
Office Hours: TW 2:00-3:00 and by appointment
Grader TBD
Lectures TTh 12:30-1:45pm, Gould-Simpson 701 
Prerequisite CSc 452: Principles of Operating Systems, or equivalent. 

You should be comfortable with the following topics: 

  • processes -- management, synchronization, scheduling 
  • virtual memory -- implementation, paging algorithms
  • file systems -- file abstraction, directories, disk layout 
  • security -- ACLs, capabilities 
Course Description This course studies fundamental concepts in modern operating systems, emphasizing the design and implementation of operating systems for distributed systems. Specific topics include: 
  • operating system design
  • concurrency
  • virtual memory
  • interprocess communication 
  • distributed systems 
  • protection and security 
  • local and distributed file systems 
  • virtual machines
The lectures will be based on selected papers from the literature. We will read approximately 30 journal and conference papers describing the history and state of the art in operating systems. The papers are listed in the course reading list in the approximate order in which we will be reading them (the reading list is subject to change). I will hand out specific reading assignments a few lectures in advance. We will cover about two papers each week, which means about six hours of reading per week. It is essential that you read the material before class. I recommend that you read them at least twice, and far enough in advance so the material has time to sink in. Class time will be spent providing background material and discussing the important points and more controversial features of the papers, not simply rehashing their contents. I expect everyone to participate in these discussions, and your class participation grade will depend on that. 

You will be required to turn in a brief homework assignment for each paper prior to the class in which we discuss it.  The homework is intended to help stimulate the discussion, and will not necessarily reflect the types of questions that will be asked on the midterm and the final exam.  There may also be quizzes on the papers throughout the semester.

In addition to the readings, there will be two or three programming assignments that will explore some of the topics discussed in the lectures. There will be a substantial amount of programming.

Reading materials
  • Reading list. Papers will be handed out in class.
  • Texts(optional): 
    • A. Tanenbaum. Modern Operating Systems. Prentice Hall (1992).
    • W. Richard Stevens. Advanced Programming in the UNIX Environment. Addison Wesley, 1992.
Schedule
Please check the schedule regularly.
Grading
  • Programming Assignments  40%
  • Midterm 10%
  • Final exam 30% 
  • Homework/Quizzes 10%
  • Participation 10%
  • Current grades

Exams
  • Midterm: Thursday October 16, 2008, in class
  • Final: Tuesday December 18, 2008, 11am-1pm , 701GS
All exams will be closed-book. 
Programming Projects: LFS
Phase 1 Due: October 23
Phase 2 Due: December 9
Homework Homework will be due for each paper we read. Due at the beginning of class. Home work may be done in groups; turn in one homework for the entire group with the members' names at the top. Homework may be emailed to cs552f08@cs.arizona.edu prior to class.
Policies
  • All exams will be closed-book. 
  • Without prior arrangement, missed exams result in a grade of zero.
  • Instructor reserves the right to fail for the course any student failing the final exam. 
  • Late assignments receive a grade of zero. 
  • You are expected to attend lecture. Excessive absences without permission will affect your class participation grade.
Academic Integrity I encourage you to talk with your friends about the work you are doing for this class; both giving and taking advice will help you to learn. Assignments require individual attention and effort to be of any benefit. Unless otherwise stated on the assignment sheet, all work is expected to be that of each student alone, without consultation with others, and not the product of team efforts or collaboration with others. Plagiarism or the incorporation of another student's words, code, or ideas constitutes theft of intellectual property; at the minimum you will receive a grade of `zero' for the assignment. I refer you to the University's Code of Academic Integrity for further details. 
Computer Accounts: Each student will be assigned an account on lectura. It takes several days to complete the process, so get started early. To receive your account you will have to read and sign a copy of the Computer Science Department's Appropriate Use Guidelines.
Information Dissemination Course-related email should be sent to the cs552 account (cs552f08@cs.arizona.edu). It is preferable, however, to ask questions of general interest via the course mailing list cs552-class@listserv.arizona.edu. By asking questions and receiving the reply via the mailing list it is possible for everyone to see both the questions and answers and thus avoid duplication. Therefore, if your question concerns the course in general, rather than you in particular, please use the mailing list. You are responsible for adding yourself to the mailing list. Go to listserv.arizona.edu for information on how to do so.  The web site for this class can be found at http://www.cs.arizona.edu/classes/cs552/fall07
Other resources


Last updated 09/18/08
http://www.cs.arizona.edu/classes/cs552/fall08/