Operating Systems
CS 301 · IIT Gandhinagar · Semester I, 2019–20
CS 301 covers the three pieces of a modern operating system: virtualisation of the CPU and of memory, concurrency, and persistence. Lectures follow Operating Systems: Three Easy Pieces, weekly labs put the ideas into practice, and students wrote an OS zine and carried out a group project.
- Instructor
- Prof. Nipun Batra
- nipun.batra@iitgn.ac.in
- Lectures
- Tuesday, Thursday and Friday, 11:00 am–12:00 noon, AB7/102
- Labs
- Monday, 10:00 am–12:00 noon, AB7/109
- Teaching assistants
- 3 TAs
- Textbook
- Operating Systems: Three Easy Pieces
This offering ran from August to November 2019. Its slides, lab material and class code remain available.
- Classes
- 37
- Labs
- Weekly labs, a lab quiz and a lab exam
- Quizzes
- Papers for quizzes 1 and 2
- Code
- Code used in classes
- Virtual machine
- Ubuntu VirtualBox image
Lectures
- 1–8Processes and CPU scheduling8 lectures
- 9–20Memory virtualisation12 lectures
- 21–32Concurrency12 lectures
- 33–37Persistence5 lectures
Questions
Is there a mid-semester exam?
No. The end-semester exam carries 10%; most of the grade comes from four quizzes, two lab exams, the project and the homework. See Grading.
Is there a project?
Yes: a project in groups of four, worth 20%. Teams submit a timeline, give phase I updates and present a final demo. See the project ideas.
What is the OS zine?
A zine on an operating-systems topic, in the style of Julia Evans's zines. It is worth 2% and was due on 20 November.
Can I ask for my score to be revised?
Only if a question was left unchecked or the marks were totalled incorrectly.
What do I need for the labs and homework?
A Linux environment. An Ubuntu VirtualBox image is provided, and the code used in classes is on GitHub.
References
Main textbook:
- Remzi H. Arpaci-Dusseau and Andrea C. Arpaci-Dusseau, Operating Systems: Three Easy Pieces (free online)
Course resources:
- Ubuntu VirtualBox VM image
- Code used in classes
- Course project ideas
- Zines by Julia Evans, the model for the OS zine
Teaching assistants
- Rishiraj Adhikary
- Varun Gohil
- Shreyas Singh