CS 1651: Advanced Systems Software
Fall 2008/9

Prof. Ahmed Amer

Computer Science Department
University of Pittsburgh


NEWS:

The exam (and presentation time) is now available on the Exams page.

The sample report homework details have been posted to the Homework page.

The paper for Elephant can be found here. The paper for Venti can be found here.

For the next class, please try to read this paper. We will try to ensure more timely updates to the reading list for upcoming classes.

If you haven't provided your contact e-mail to the instructor in-class, please do so (for the mailing list).

News and class announcements will be posted to this web page, so do check back often.


Times and Locations

Class: TH 11:00-12:15pm, SENSQ 6110
Instructor: Prof. Ahmed Amer (amer(a)pitt(dot)edu)
Office Hours: TBA

Required Text: Class slides and selected readings and handouts.


Mailing List Announcement

A class mailing list will be compiled, and will be used for important announcements. It is VERY important that you be included in this list. It should be available by the end of the second week of classes.


Course Objectives

The purpose of this course is to understand and use advanced concepts in operating systems. This will include resource management, storage systems, trace-based analysis, theoretical analysis, as well as new paradigms. The programming projects component of the course will take up a fair proportion of the class.


Grading

  • 15% Exam (a take-home midterm)
  • 15% Homework assignments
  • 10% In-class quizzes
  • 10% Class participation
  • 50% Project and programming mini-projects.

    Programming Assignments & Project

    The project is a major component of the course, but the grading for the project will be divided amongst several components: a proposal document, a final report, in-class presentations.

    Due dates and lateness:

  • Late work will not be accepted except when due to true documented emergencies.
  • Graded work will be returned as soon as possible, usually within one week.


    Attendance

    Class attendance is mandatory. Homeworks, assignments, and important dates will be posted on the class web page, but this is provided as a courtesy and is not always complete. It is your fault if you miss something important because you skipped class.

    Academic Honesty: Collaboration vs. Cheating

    This really should not be an issue, but to make things as clear as possible the following is necessary.

    You are encouraged to discuss the course material and concepts with other students in the class. However, all work that you submit must be your own. Under no circumstances may you look at anyone else's code or show anyone else your code. And while you may discuss the concepts used in the programming assignments, you may not discuss implementation details of the assignments themselves.

    If you are caught copying or otherwise turning in work that is not solely your own, you will fail the course.

    The bottom line is that you are expected to conduct yourself as a person of integrity - you are expected to adhere to the highest standards of academic integrity. This means that plagiarism1 in any form is completely unacceptable. As a (soon to be) computing professional, I encourage you to consult the code of ethics appropriate to your discipline2.

    Plagiarism will be assumed until disproved on work that is essentially the same as that of other students. This includes identically incorrect, off-the-wall, and highly unusual duplicate answers where the probability of a sheer coincidence is extremely unlikely. All parties to this unacceptable collaboration will receive the same treatment.

    You should bring a picture identification with you to all examinations and be prepared to show it upon request.

    If you are unsure of what is and is not allowed by this policy, talk to the instructor.

    1 pla-gia-rize vt. to steal and pass of as one's own (the ideas or words of another) to present as one's own an idea or product derived from an existing source - pla-gia-riz-er n. (source: Webster's New World Dictionary).
    2 The Association for Computing Machinery is http://www.acm.org/, the IEEE is http://www.ieee.org/ and the IEEE Computer Society is http://www.computer.org/.


    Getting Answers to your Questions

  • Attend class
  • Check the class web page frequently - we will post as much information as we can
  • Meet with the professor during office hours
  • Email the professor