CS 241: System Programming
Fall 2019
Latest Assignments
MP
Nonstop Networking
Due: Week 15 · 2019-11-18 23:59
Lab
Lovable Linux
Due: Week 15 · 2019-12-11 23:59
Course Description
This course is designed to challenge you as a programmer and new computer scientist at the University of Illinois at Urbana-Champaign. Rather than the sand-boxed, contained, and simple problems of your previous courses that used significant scaffolding and pre-built libraries, you will be interacting with a much more complex environment: the entire system and even computing networks.
You will need to fully understand how memory is allocated, used, and re-used within a process.
You will also need to know how input and output can be optionally buffered between processes and files.
In short, it is time to remove the training wheels off and instead fling open the doors, welcoming you to the big, wide world of computing.
Oh, and did we mention the challenge of concurrency and solving asynchronous problems, so that your program can take advantage of the multi-core CPU inside each machine?
Time and Location
Instructor: Lawrence Angrave (angrave@)
Lecture: MWF 9:00am-9:50am, 10:00am-10:50am
Location: DCL 1320
Peer Tutoring
You can find a full list of times and locations on the calendar.
Please read our Piazza policy, before posting.
Grading Policy
Machine Problems: 35% (weekly)
Labs: 12% (weekly, lowest lab dropped)
Lab Attendance: 3% (2 drops)
Quizzes: 25% (8 quizzes, in the CBTF)
Final Exam: 25% (comprehensive)