Readings

For Final Exam

You should know C (but exam isn't on C). You should know x86 (cheat sheet provided if needed). You should know how hardware caches work (Chapter 6, Bryant/O'Halloran). You should know a little about operating systems and virtualizing the CPU -- as found 1 and 2 -- virtualizing memory -- 3 4 5 6 -- and a little about I/O, hard drives, and flash -- 7 8 9. These are all listed below too (towards the bottom).

Class Notes (in Book Form)

Intro
Bits and Bytes and Hex
It's All Memory
CAM: The C Abstract Machine
Numbers, Operators, and Expressions
Integers
Variables
Assignments
Relational Operators
Boolean Logic
Making Decisions With If And Else
Repetition Via Loops
Functions
Pointers
The Stack
Scope
Functions Revisited
Arrays
Characters and Strings
...
Structs

Readings From Other Books

Kernighan and Ritchie: Chapters 1, 2, 3, 4, 5, 6, 7

Bryant/O'Halloran: 2.1, 2.2, 2.3, 3.1, 3.2, 3.3, 3.4, 3.5, 3.6, 3.7, 6.1, 6.2, 6.3, 6.4

Processes Timer Interrupts Address Spaces Paging TLBs Smaller Page Tables I/O Disks Flash