Lectures

Lecture notes will be posted right after each class.
Note that schedules are subject to changes, please check back frequently.
Readings refer to the chapter number(s) in the textbook.

Date Lecture notes Readings
Jan 15, Thursday Overview 1
Jan 20, Tuesday Bits, Bytes, Ints 2.1-2
Jan 22, Thursday Integer Arithmetric 2.3
Jan 27, Tuesday Floating Points 2.4
Jan 29, Thursday Machine Prog: Basics 3.1-5, 3.13.1-3
Feb 3, Tuesday Machine Prog: Control 3.6, 3.13.4
Feb 5, Thursday Machine Prog: Procedures 3.7
Feb 10, Tuesday Machine Prog: Data and Stack Buffer Overflow 3.8-12, 3.13.5
Feb 12, Thursday The Memory Hierarchy 6.1-3
Feb 17, Tuesday Caching and Performance 6.4-7
Feb 19, Thursday Processor architecture (by Prof. Sandhya Dwarkadas) 4
Feb 24, Tuesday Linking 7
Feb 26, Thursday OS interaction and Processes 8.1-4
Mar 3, Tuesday Program optimization (by Prof. Chen Ding) 5
Mar 5, Thursday Midterm
Mar 10, Tuesday Spring break
Mar 12, Thursday Spring break
Mar 17, Tuesday Shell and Signals 8.5-8
Mar 19, Thursday System Level I/O 10
Mar 24, Tuesday Virtual Memory: Concepts 9.1-6
Mar 26, Thursday Virtual Memory: Systems 9.7-8
Mar 31, Tuesday Dynamic Memory Allocation: Basic 9.9
Apr 2, Thursday Dynamic Memory Allocation: Advanced 9.10-13
Apr 7, Tuesday Internetworking 11.1-3
Apr 9, Thursday Network Programming 11.4
Apr 14, Tuesday Web 11.5-7
Apr 16, Thursday Concurrent Programming 12.1-3
Apr 21, Tuesday Synchronization 12.4-5, 12.7-8
Apr 23, Thursday Parallelism and Cloud Computing 12.6
Apr 28, Tuesday Course Review