Winter 2023
Stanford University
CS 107e focuses on bare metal programming on the Raspberry Pi, serving as an introduction to embedded systems. It covers the entire process from the microprocessor to the C programming language. The course aims to build a solid understanding of how modern computers execute programs and how program development tools work.
CS107 is the third course in Stanford's introductory programming sequence. The CS106A/B courses provide students with a solid foundation in programming methodology and abstractions, and CS107 follows on to develop the skills needed to build computer systems.
CS107e: Computer Systems from the Ground Up is a variant of CS107 that teaches the fundamental concepts of computer systems through bare metal programming on the Raspberry Pi. Bare metal programming means you will not run an operating system on the Raspberry Pi and will make minimal use of libraries. This course also serves as an introduction to embedded systems. The course starts with the microprocessor and moves up to the C programming language, without skipping anything in between. The goal is to build a solid understanding of all aspects of how modern computers execute programs and how program development tools work.
No data.
The major learning goals for the course are:
Topics covered include:
No data
Lecture slides and codes available at Schedule
No videos available
Assignments available Assignments
Labs available at Labs