Date | Description |
---|---|
March 28 |
Introduction; Binary & Hexadecimal Read CSPP: § 1.4.1 (p. 8-10) |
March 30 |
Get to Know You; Bits, Bytes, and C Pointers Read Pointer Basics and The 5-minute Guide to C Pointers, watch this silly video |
April 1 |
C: Data Representation and Memory Management Read The Descent to C |
April 4 |
More Memory and C No reading |
April 6 |
Integer Representation and Arithmetic Read CSPP: § 2.2.1 (p. 60-62) and CSPP: § 2.2.8 (p. 83-84) |
April 8 |
Floating Point; Bitwise and Boolean Operators Read CSPP: § 2.1.7--2.1.9 (p. 54-58) |
April 11 |
Introduction to x86-64 Assembly CPSS: § 3.4 through 3.4.1 (p. 179-181) |
April 13 |
Arithmetic in x86-64 Assembly No reading, but review figures 3.2, 3.3, and 3.10 (p. 180, 181, 192) |
April 15 |
x86-64 Control Flow: Conditionals Review CSPP figures 3.13, 3.14, and 3.15 (p. 202, 203, 206), (OPTIONAL) read CSPP section 3.6.6 |
April 18 |
x86-64 Control Flow: Loops and Switch Statements Read CSPP § 3.6.3 to learn about |
April 20 |
Data Structure Representation: Arrays Read CSPP § 3.8.2 on pointer arithmetic |
April 22 |
Data Structure Representation: Structs No reading |
April 25 |
Memory Layout and The Stack Make sure you understand figure 3.27 (p. 243) |
April 27 |
Implementing Procedure Calls Read CSPP: § 3.7.4 and 3.7.5 (p. 248-252) |
April 29 |
Buffer Overflow Attacks Read CSPP: § 3.10.3 and 3.10.4 (p. 279-293) |
May 4 |
Dynamic Memory Allocation: malloc and free No reading |
May 6 |
Dynamic Memory Allocation: Free Lists Read CSPP § 9.9.6 |
May 9 |
Explicit Free Lists No reading |
May 11 |
Caching and the Memory Hierachy Read CSPP § 6.2 about locality |
May 13 |
Virtual Memory Read CSPP § 9.3 (p. 805–810) |
May 16 |
The Process Model and Exceptional Control Flow Read CSPP § 8.1-8.1.2 (p. 723–728) and § 8.2 (p. 732–737) |
May 18 |
System-Level I/O Read CSPP § 10.1-10.2 (p. 890–893) and § 10.11 (p. 911–913) |
May 20 |
Network Programming Read CSPP § 11.1 (p. 918–919) and § 11.5 (p. 948–955) |
May 23 |
Networking continued No reading |
May 25 |
Concurrency and Synchronization Read CSPP § 12.1 and 12.3 (p. 973–976 and 985–992), then CSPP § 12.5 through 12.5.4 (p. 995–1008) |
May 27 |
Parallelism Read CSPP § 12.6 (p. 1013–1020) |
May 30 |
Java vs C No reading |
June 1 |
Victory lap No reading |