CS208 Intro to Systems F25 Schedule
This is a rough schedule of topics for each day and the release and due dates for each homework assignment.
Class topics and homework information may change over the course of the term. Please treat this schedule as a rough guide for seeing what we’ll be focusing on, and expect that there will be shifts as the term progresses. However, I will put all relevant links on this page, so consider this a quick reference for what we have seen so far (that is easier to search than Moodle). Many of the links for future content will be invalid until we get closer to that date.
Preparation should be completed before the class day that they are listed. Class is structured expecting that you have completed the preparation activities and responded to them on Moodle.
DIS refers to Dive Into Systems.
Date | Homework/Preparation Due | In Class | Homework Out |
---|---|---|---|
Week 1 | Bits of C | ||
9/15 | Logistics Prep | Slides, Bit Ops and C | HW1: Bits and Bytes |
9/17 | Bits and C Prep | Slides, Logistics and Debugging with GDB Lab | |
9/19 | Unicode Prep, HW1 | Slides, UTF-8 | HW2: Character Encodings |
Week 2 | More C | ||
9/22 | Strings and Arrays Prep | Slides, Arrays and Strings, String Rep Lab | |
9/24 | HW2; Structs Prep | Slides, Structs and Files Lab | HW3: String Things |
9/26 | Pointers Prep | Slides, Memory and Pointers Lab | |
Week 3 | Numbers | ||
9/29 | Study! | Slides, Exam 1 | |
10/1 | Dynamic Memory Prep | Slides, Dynamic Memory Lab | |
10/3 | HW3; Signed Ints Prep | Slides, Signed integers | HW4: Queues in C |
Week 4 | Starting Assembly | ||
10/6 | Integer Overflow Prep | Slides, Overflow | |
10/8 | Floats Prep | Slides, Fractions and floating point | |
10/10 | HW4; Assembly Basics Prep | Slides, Assembly Basics | HW5: asm-to-C puzzles |
Week 5 | More Assembly | ||
10/13 | lea Prep | Slides, mov and lea, Assembly Exploration Lab | |
10/15 | Slides, Exam 2 | ||
10/17 | HW5, Trusting Trust Prep | Slides, Trusting Trust | HW6: Escape from the Zoo |
Week 6 | Reverse Engineering | ||
10/20 | Midterm break! | ||
10/22 | Slides, Condition codes | ||
10/24 | Slides, Stack and functions | ||
Week 7 | Buffer Overflow | ||
10/27 | Slides, Exam 3 | ||
10/29 | HW6; Buffer Overflow Prep | Slides, Buffer Overflows | HW7: Buffer Overflow |
10/31 | Unix Prep | Slides, File systems and Unix | |
Week 8 | Processes, threads, and memory | ||
11/3 | OS and Processes Prep | Slides, Processes; Getting Started with Processes Lab | |
11/5 | HW7; Signals and Messages Prep | Slides, Forks and Pipes | HW8: Simple Command Shell |
11/7 | Caching Prep Memory Hierarchy Prep | Slides, Caching | |
Week 9 | Caches | ||
11/10 | Slides Exam 4 | ||
11/12 | HW8; | Slides, Cache aware code | |
11/14 | Slides, Networking basics | ||
Week 10 | Wrapping up | ||
11/17 | How DNS Works | Slides, IP and DNS | |
11/19 | Study; Submit checklist for SS exam | Slides, Mini-exam, Review | All revisions due 10pm |
11/21 | Reading days! | ||
Exam Period | |||
Self-scheduled | |||