| Section | 1 |
|---|---|
| Instructor(s) | Kenneth Samuels, Lamont (lamonts) |
| Location | Ryerson 255 |
| Meeting Times | Tuesday 5:30pm - 7:30pm |
| Fulfills | Core Systems Elective |
Course Description
This course aims to introduce to the fundamental concepts, principles, and abstractions that underlie the design and architecture of Unix systems. Students will learn how a Unix system works from the hardware level all the way up to the application level. The course will also focus on teaching students develop a command of the Unix shell environment by ensuring a basic understanding of Unix commands and utilities, and networking capabilities. Students will also be able to learn about the fundamentals of systems programming in Unix.
After taking this course, students will develop a more-depth understanding of Unix and be able to use this knowledge to better implement programs on a Unix operating systems such as Linux or OS X.
Completed or concurrently taking MPCS 51036, 51040, 51042, 51046, 51100, CAPP 30122, MACS 30122, or have a Core Waiver for Programming.
This class is intended as an entry level systems class to prepare students without a strong CS background to take more advanced systems classes. You are not eligible to take this class if you have already taken Functional Programming, Distributed Systems, Advanced Computer Architecture, Compilers, Operating Systems, Parallel Programming, Foundations of Computer Networks, Foundations of Database Systems or any CMSC systems class.
This course requires competency in Unix and Linux. If you attended the MPCS Unix Bootcamp you covered the required material. If you did not, please review the UChicago CS Student Resource Guide here: https://uchicago-cs.github.io/student-resource-guide/.
Course request information for non-MPCS students: https://masters.cs.uchicago.edu/student-resources/non-mpcs-student-course-requests/
This class is scheduled at a time that conflicts with these other classes: