- Teacher: Abdulrahman Alaraj
- Teacher: James Ashby
- Teacher: Srinjita Bhaduri
- Teacher: Aisha Jackson
- Teacher: Sanskar Katiyar
- Teacher: Bj Kim
- Teacher: Bryan Melville-Admin
- Teacher: Jinyoung Park
- Teacher: Amit Kiran Rege
- Teacher: Siddhant Sushilkumar Keshkar
- Teacher: Andrew Weller
- Teacher: Marcus Williams-Admin
- Teacher: Adam Zheng
- Teacher: Asa Ashraf
- Teacher: Meeti Baliga
- Teacher: Abhidip Bhattacharyya
- Teacher: Yoshinari Fujinuma
- Teacher: Christopher Godley
- Teacher: Himanshu Gupta
- Teacher: Dheeraj Mulbagal Ravindranath
- Teacher: Jay Patel
- Teacher: Saumya Sinha
- Teacher: James Watson
- Course Assistant: Zahraa Abbasi
- Course Assistant: Caroline Hernandez
- Teaching Assistant: Shree Krishna Subburaj
- Teacher: Ioana Fleming
- Teacher: Beth Webb
Covers how programs are represented and executed by modern computers, including low level machine representations of programs and data, an understanding of how computer components and the memory hierarchy influence performance.

- Teacher: Lijun Chen
- Teacher: Nicholas Lewchenko
- Course Assistant: Nicole Dong
- Course Assistant: Suchita Lulla
- Teaching Assistant: Mayank Joshi
- Teaching Assistant: Insoo Lee
- Teaching Assistant: Austin Pahl
- Teaching Assistant: Amatullah Sethjiwala
- Teaching Assistant: Shruthi Sridharan
- Teacher: Juraj Culak
- Course Assistant: Erik Rhodes
- Teaching Assistant: Xinyu Cao
Operating systems are an essential part of every
computing system and play a major role in determining the performance and
usability of the system. This course is an introductory course covering
the fundamental concepts in the design, implementation and evaluation of an
operating system. While the field of operating systems has been undergoing
rapid change, the fundamental concepts remain firmly clear. This course covers these fundamental concepts
comprised of device management, process management, memory management and
network management.
- Teacher: Christopher Godley