Syllabus

Table of contents

Prerequisites

Advanced Operating Systems, as the name suggests, deals with advanced topics in the field of Operating Systems. Therefore, it is very important that you have the necessary background. For this course, the prerequisites are:

  • CS 3210 - Design of Operating Systems or an equivalent undergraduate OS course (strict). A good understanding of basic concepts in OS will be assumed in CS6210.
  • CS 3210’s prerequisites or equivalents.
  • C programming (strict)
  • Knowledge of Unix (strict)

Requirements marked as strict are absolutely critical for you to succeed in this course. To gain a better understanding of the prerequisite concepts necessary for success in this course, we have created two resources:

If you feel that you do not have the necessary background, our strong recommendation is for you to build it up before taking CS6210/CS4210.

Textbook

There is no textbook for this course. Rather, we will read and discuss a number of important research papers that have been published.

If you wish to refer to basic topics in OS, we recommend the following optional books:

  • (optional) Operating Systems Concepts, Silberschatz and Galvin
  • (optional) Operating Systems: Principles and Practice, Thomas Anderson and Michael Dahlin
  • (optional) Computer Systems: An Integrated Approach to Architecture and Operating Systems, Umakishore Ramachandran and William D. Leahy, Jr.

Format

The course will be fully in-person, virtual option will not be available this semester. Lecture slides will be made available to students. Lectures will NOT be recorded.

Attendance

You are not required to attend the lectures. Your grade will not be impacted by you not attending the lectures, but your ability to complete projects and assignments may be severely impacted.

Assignments

The course will have several assignments. These assignments are categorized into introductory assignments and projects. All assignments are mandatory.

Introductory/Preparatory Assignments

These assignments are meant to help you ramp up for the course and are an easy way to get points. The following assignments are under this category:

  • Homework 0 (based on required background)
  • Project 0

All introductory/preparatory exercises are to be done individually and turned in on time. No late credit will be given.

Projects

This course is project intensive. There will be a sequence of four projects that compose a significant portion of your grade. Strong C programming skills are absolutely essential for completing these projects. For CS PhD students, it may be possible to pursue a project of publishable quality that aligns with your research goals in lieu of the last three projects (the first project must be completed by all students). Such research projects must include substantial implementation of a system that relates to the concepts in this class. The projects and the expected end-of-semester deliverables must be approved by the instructor. The instructor’s decision in this regard will be final.

Partner Policy
  • Project 1 must be done individually. No partners are allowed for this project.
  • Projects 2, 3 and 4 can be done in groups of 2. It is your own responsibility to find a project partner and work out the logistics of working together. The teaching team will not arbitrate on such matters (e.g., partner dropping the course, conflict with partners etc.). You must inform us of your partner information before the release of project 2. There will be no option to change partner once you’ve selected one. Our assumption is that both partners contribute equally to projects. Therefore, you must clearly mention the division of work in projects. We will do random sampling of project groups to verify that the project was done with full participation by both members.
  • You can also choose to do the projects on your own as well without a partner. If you choose to do projects 2, 3 and 4 on your own (without a partner), you will receive a 1% bonus towards your final grade.

Late Policy

Assignments are expected to be turned in on-time. However, we understand that things may come up over the course of the semester. Therefore, we will strictly follow a late policy:

  • Late submissions are accepted up to 24 hours after a deadline with a 20% penalty. Submissions that are late by more than 24 hours will not be accepted.
  • One-time Forgiveness: Students may choose to avail themselves of the one-time forgiveness policy that allows submission of any assignment up to one week past the posted deadline without any penalty. Note that this is one time only, that is, it cannot be used more than once in the entire semester. Students availing this option must create a private Ed discussion post before the original deadline for the assignment which will be reviewed by a TA who will grant you the extension. If you decide to do projects 2, 3 and 4 with a partner, the one-time forgiveness applies to your group; a student using up a one-time forgiveness would use up the option for the entire group. Similarly, if you use the one-time forgiveness for Homework 0 or Project 0 or Project 1, you will exhaust this option for your future group too (if you decide to do future projects with a partner).

Exams

The course will have three exams, spaced throughout the semester. The exams will be conducted using Honorlock. Make up exams will not be provided. Instead, if a student provides genuine evidence of extenuating circumstances (details below) for missing one exam, then the weights for the other two exams will be adjusted accordingly. Missing more than one exam is not allowed and no excuses will be accommodated under any circumstances.

Extenuating Circumstances

Institutional excuses (medical, etc.) are treated on a case-by-case basis in accordance with university policy. Please make sure to have Student Life contact us if you have an excuse as soon as possible. A doctor’s note showing the need for absence is required for missing exams. While we will make every attempt to accommodate excuses, please note that the instructor’s decision will be final in such matters.

Grading

Course grades will be determined according to the following criteria:

ComponentWeight
Homework 02%
Project 02%
Project 112%
Project 212%
Project 312%
Project 412%
Exam 116%
Exam 216%
Exam 316%

Regrade Policy

Hand grading is error prone, and we will likely make mistakes over the course of the semester. We allow students to request regrades to ensure that they have the proper grade for the work they’ve turned in.

We will happily regrade any hand-graded assignment you request. The regrade policy is as follows:

  • The goal of a regrade is to ensure you have the correct grade for the entire assignment, not just to return points. We will regrade your entire assignment if a regrade is requested.
  • To request a regrade, please submit a regrade request to the teaching staff. The request should include the following:
    • What question(s) do you believe we made a mistake on?
    • What mistake do you believe we made?
    • Why do you believe your answer is correct for this question?
  • Regrade requests must be submitted within 2 weeks of an assignment being returned. We will not regrade assignments after that window.

Cheating vs. Collaboration

Collaboration is a very good thing. On the other hand, cheating is considered a very serious offense and is vigorously prosecuted. Vigorous prosecution requires that you be advised of the cheating policy of the course before the offending act.

Cheating includes (but is not limited to):

  • Sharing code or text on the project (with the exception of students within your group).
  • Using resources such as ChatGPT or any such AI tools to assist you in your assignments.
  • Using someone else’s code or text in your solutions.
  • Consulting project code or text that might be on the Internet.
    • This semester we are actively and aggressively looking for cheating. If you cheat there is a very high likelihood you will be caught.

We are aware of the solutions that students of this and other versions of this course have put on the Internet. Please do not put your solutions on GitHub either during or after you take this course. This constitutes cheating even if you are no longer in the course and can be prosecuted through the university policy.

We will strictly adhere to the academic integrity policy. Absolutely no concessions will be given. Therefore, if you are in doubt about whether something is cheating or collaborating, please err on the side of caution, and ask for a clarification on the policy.

Subject to Change

Due to the highly dynamic situation (e.g., global phenomena outside of the instructor’s control, conference travel, etc), the syllabus and course schedule may be subject to change. It is the responsibility of students to check Canvas, Ed, email messages, and course announcements (through course Canvas and Ed) to stay up-to-date with any course logistics changes. We will make every effort to communicate changes via these mechanisms.

Communication

We will be using Ed for asynchronous communication. ALL communication regarding this course must be via Ed. This includes questions, discussions, as well as private messages.

Auditing Policy

This course will not offer an audit option.

Pass/Fail Policy

A student interested in registering in pass/fail mode must approach the course instructor and determine the minimum course pass/fail requirements. For this class, minimum course pass/fail requirements include completion of all assignments and exams, and obtaining a grade equivalent to or greater than B in the course. Therefore, pass/fail option is highly discouraged, because the amount of work involved will be similar to taking the course for a letter grade.

Special Needs and Services

If you are a student with learning needs that require special accommodation, contact the Office of Disability Services at (404) 894-2563 or http://disabilityservices.gatech.edu/, as soon as possible, to make an appointment to discuss your special needs and to obtain an accommodations letter. Please also e-mail me as soon as possible in order to set up a time to discuss your learning needs.

Your mental health and well being is important to us. If you are having a difficult time or just need to talk, please make use of campus counseling services. These services are available in the Smithgall Student Services building (Flag Building) between 8:00 am and 4:00 pm, Monday through Friday. There is also a 24/7 service for students in crisis. Again, do not wait till the end of the semester to get help.

Conduct

Be respectful of one another as well as the instructors both in class and out. Be considerate and professional in online Ed posts, emails, and other conversation related to the course.

Please help to provide a distraction-free learning environment in class, and be considerate to your teachers and other students by minimizing in-class distractions such as cellphone use, eating, etc.

Please plan to attend the lectures. Students are responsible for all material covered in class as well as any announcements made in class (as well as on Ed and Canvas). We make our best effort to put information on Ed or Canvas but cannot promise everything said in class will make it on there.

Academic Integrity

Georgia Tech aims to cultivate a community based on trust, academic integrity, and honor. Students are expected to act according to the highest ethical standards. For information on Georgia Tech’s Academic Honor Code, please visit http://www.catalog.gatech.edu/policies/honor-code/ or http://www.catalog.gatech.edu/rules/18/.

Any student suspected of cheating or plagiarizing will be reported to the Office of Student Integrity, who will investigate the incident and identify the appropriate penalty for violations.

Statement of Intent for Inclusivity

As a member of the Georgia Tech community, I am committed to creating a learning environment in which all of my students feel safe and included. Because we are individuals with varying needs, I am reliant on your feedback to achieve this goal. To that end, I invite you to enter into dialogue with me about the things I can stop, start, and continue doing to make my classroom an environment in which every student feels valued and can engage actively in our learning community.