Fall 2012
Creative Commons License

General Information

Catalog description // Who should take 6.828 // Communication // Grading // Labs // Code reviews // Homework // Collaboration // Class meetings // Staff // TA office hours

MIT catalog description

Prereq.: C, 6.033, and 6.170 (and, by implication, 6.004)
G (H)

6.828 studies fundamental design and implementation ideas in the engineering of operating systems. Lectures are based on a study of UNIX and research papers. Topics include virtual memory, threads, context switches, kernels, interrupts, system calls, interprocess communication, coordination, and the interaction between software and hardware. Individual laboratory assignments involve implementation of a small operating system in C, with some x86 assembly.

Students can use 6.828 to fulfill the engineering concentration requirements for Computer Systems.

Who should take 6.828?

6.828 is primarily intended for seniors and M.Eng students who want to learn about operating systems in detail. PhD students are also welcome, but note that 6.828 is not a "core" subject for the TQE.


We will distribute assignments on the course web site, and make all announcements through piazza. The course web site has the schedule for the term.

Grading policy

Grades in 6.828 will be based on the results of one quiz during the term (30%); lab exercises (30%); home-work assignments, code reviews, and class participation (together 10%); and lab challenge problems and a final project (together 30%). You must submit all labs in order to pass the class. There is no final in finals week, but there are final project presentations in the last week of classes.


To turn-in the labs, run make handin in your lab directory. The handin must be received by 11:59pm on the day that the lab is due. You can turning in as many times as you want. We will grade all your submissions and email the result to you within a few minutes. Your final grade and late hours (see below) are only based on the latest submission you made to a lab.

You have a total of 72 late hours to use throughout the semester, which you can divide up among the lab assignments however you like; you don't have to ask or tell us. Each day late in excess of 72 hours will incur a full letter grade penalty on the lab exercise component of your overall grade. These late hours are intended for cases where you fall behind due to illness, job interviews, MIT athletic events, deadlines in other classes, etc. For extensions under extenuating circumstances (e.g., you are sick for a week), we require a letter from one of the student deans.

Code reviews

You will also be required to review other students' lab code, a standard practice used to improve code quality. These reviews will be randomly assigned 36 hours after the lab deadline and will be due one week after the lab deadline. As soon as a review is submitted, the author of the code will receive a copy. The review process is double blind: both the author of the code and the reviewer are anonymous. Reviews should be a few paragraphs that suggest three possible improvements and identify one thing the reviewer learned from the other student's code. Like the homework, we will check-off that you put reasonable effort into them.


Most homeworks will be done in class and are due at the end of the class. The homework is intended to make you think about the lecture topic and get your hands dirty during We do not grade your answers for correctness, but merely check-off that you put reasonable effort into them.


You may not collaborate on quizzes. You are welcome to discuss the homework and labs with other students, but all of your written work and code must be your own and must carefully acknowledge all contributions of ideas by others, whether from classmates or from sources you have read. We encourage interactions on Piazza.

Do not post your lab or homework solutions on publicly accessible web sites (such as GitHub) or file spaces (such as your Athena Public directory).

Class meetings

Lectures will be held on Monday and Wednesday from 1:00pm to 2:30pm in 32-141.


Frans Kaashoek  
Robert Morris  
Teaching assistants
Haogang Chen  
Cam Tenny  

Course mailing list:

Please use Piazza for communication with the class or staff.

TA office hours

Haogang: Wednesdays 3:00pm to 5:00pm in 26-142
Cam: Tuesdays 6:00pm to 8:00pm in 34-303

Questions or comments regarding 6.828? Send e-mail to the TAs at 6.828-staff@pdos.csail.mit.edu.

Top // 6.828 home // Last updated Thursday, 08-Mar-2018 13:18:08 EST