This is an implementation-heavy, lab-based class that covers similar topics as CS 240, but by writing code versus discussing papers. Our code will run "bare-metal" (without an operating system) on the widely-used ARM-based raspberry pi. Bare-metal lets us do interesting tricks without constantly fighting a lumbering, general-purpose OS that cannot get out of its own way. We will do ten projects, one per week, where each project covers two labs of (at a minimum) several hours each and a non-trivial amount of outside work. The workload is significant, but I will aim to not waste your time. Prerequisite: CS 140E or instructor permission.
3 units · Letter or Credit/No Credit
This is an implementation-heavy, lab-based class that covers similar topics as CS240, but by writing code versus discussing papers. Our code will run "bare-metal" (without an operating system) on the widely-used ARM-based raspberry pi. Bare-metal lets us do interesting tricks without constantly fighting a lumbering, general-purpose OS that cannot get out of its own way. We will do ten projects, one per week, where each project covers two labs of (at a minimum) several hours each and a non-trivial amount of outside work. The workload is significant, but I will aim to not waste your time. Prerequisite: CS140E or instructor permission.
Offered in Spring 2026 at Stanford University.