Announcements

Welcome! To get started, click on the Resources tab and have a look around there.

Course Overview

CPS 210 is an introduction to systems software and computer architecture, with programming exercises in the C language on the Linux operating system. This course provides a programmer's view of how computer systems execute programs and store information. It examines key computational abstractions behind high-level programming languages: number and data representations, memory/pointers, the stack, buffer overflow, processor instructions, caching, virtual memory, programs and processes, and basics of concurrency with threads. The Big Ideas in this class apply across subfields of computer systems and computer science.

Course Information

Instructors: Jeff Chase, Violette Walker
Location: French Science 2231
Time: WF 3:05 pm - 4:20 pm
Graduate TAs: Shujun Qi, Yi Zhou
U/TAs: Marisol Mata Nevarez (Lead), Khushmeet Chandi (Lead), Arim Lim, Zaid Musqit, Justin Park, Raymond Xiong, Marcus Yearwood, Aidan Young
Office Hours:
Jeff Chase - After class, or by appointment.
Shujun Qi - Fri. 5 - 7pm, D301 LSRC
Yi Zhou - Thurs. 3:30 - 5:30pm, D122 LSRC
(See Ed for other office hours)
Resources: Canvas, Gradescope, Ed, GitLab, Panopto, Slides

Grading

45% Exams
First Midterm (20%), Second Midterm (20%), Concurrency Quiz (5%)
25% Projects
Four programming assignments that build on labs and lectures.
25% Labs
Small programming assignments associated with each lecture. There are 20 labs. The three labs with the lowest scores are dropped.
5% Discussion
Participation in weekly discussion sections for assignments.