Navigate to: [ Info | Schedule | Labs | Links ]

About the Course

E0-253 seeks to equip students with the a hands-on overview of the design and implementation of operating systems.

Administrative Details

Grading: The course consists of several programming assignments, one mid-term exam, and one (cumulative) final exam. The rough weightage of each component will be 40% for programming assignments, 30% for midterm and 30% for the cumulative final exam. This information is subject to change. The weightage of each programming assignment will be announced in the last week of the semester. In the meanwhile, you must strive to do your best in each component. Just be informed that all components of the course are important, and you cannot afford to ignore any one of them. You will receive scores out of 100 for each item that you will be turning in. The programming assignments give you hands-on experience and are where you will learn the most in this course (assuming you do them honestly). The mid-term and final exams help us assess your understanding of the concepts taught, as well as your understanding of the material from a standard undergrad OS textbook. Grades will follow this table:

Score range
Letter grade
90 ≤ score ≤ 100
A+
80 ≤ score < 90
A
70 ≤ score < 80
B+
60 ≤ score < 70
B
50 ≤ score < 60
C
40 ≤ score < 50
D
0 ≤ score < 40
F
Answer to the most frequently asked question about this course—"Is there a lot of programming in the course?" You're taking a systems course in the department of computer science. Presumably, you have chosen to take this course because you are interested in learning how computer systems work. So of course there is going to programming. Lots of it. And it's going to be systems programming—hacking the kernel—which can have a steep learning curve. So if you take this course, be prepared to work hard and read and write a lot of code.