Jan 21 - intro class
This "Computer Systems" courses is an intermediate (typically sophomore or junior) level
course about the machine level workings of a unix computer including
- C programming : pointers, linking,
- x86 assembly language : move this byte from this memory address to this register
- how to make programs run really fast
- stack overflow in detail : the most common security hole
We'll follow a course developed at Carnegie Melon,
using its textbook "Computer Systems: A Programmer's Perspective, 3rd edition"
which includes "labs" that will let you explore assembly language and stack
overflow exploits.
The primary language we'll use is C, which we'll look at in some detail.
The classic book which describes C is "K&R"; Kernighan and Ritchie's "The C Programming Language, 2nd Edition" -
highly recommended.
Links to both of these books as well as other good stuff can
be found on the
resources page in the left menu.
C
- start with C programming language
- discuss where you folks are with that
first assignment
- posted, due next Tuesday.
Questions?