Date |
Meeting |
Material covered |
Required reading |
Other materials |
1/6 |
Lecture 1 |
Course intro; begin MIPS assembly |
|
slides; code |
1/8 |
Lecture 2 |
Practicing control flow structures in assembly |
|
slides; code |
1/9 |
Lab 1 |
Printing primes (assembly control flow) |
|
|
1/10 |
Lecture 3 |
Memory in assembly |
|
slides |
1/13 |
Lecture 4 |
Classes/structs in assembly; functions |
|
slides; code |
1/15 |
Lecture 5 |
More functions; unsigned binary and hexadecimal numbers |
|
slides; code; Section
4.1 |
1/16 |
Lab 2 |
Functions in assembly |
|
|
1/17 |
Lecture 6 |
More binary: signed integers and floating point |
|
slides; Section
4.3; Section 4.8 |
1/20 |
Lecture 7 |
Introduction to C |
|
slides; code;
text
(basically thru output) |
1/22 |
Lecture 8 |
Differences with C: 1 pass compilation, no boolean, pointers |
|
slides; handout |
1/23 |
Lab 3 |
Connect 4 (practice with C) |
|
|
1/24 |
Lecture 9 |
Pointer errors; memory allocation; pointers as arrays and strings |
|
slides |
1/27 |
Lecture 10 |
Pointer arithmetic |
|
slides |
1/29 |
Lecture 11 |
struct; linked lists |
|
slides; code |
1/30 |
Lab 4 |
Linked list operations in C |
|
|
1/31 |
Lecture 12 |
Idea of caching; direct-mapped caching |
|
slides |
2/3 |
Lecture 13 |
Associative caching |
|
slides |
2/5 |
Lecture 14 |
Multiprocessor caching; virtual memory |
|
slides |
2/6 |
Lab 5 |
Simulating a cache |
|
|
2/7 |
Lecture 15 |
Threads |
|
slides |
2/10 |
No class -- work on Midterm Exam |
2/12 |
No class -- Day of Dialog |
2/13 |
Lab 6 |
Parallelizing the Mandelbrot set with pthreads |
|
|
2/14 |
Lecture 16 |
Race conditions; deadlocks; producer-consumer; locks and semaphores |
|
slides |
2/17 |
Lecture 17 |
Monitors; readers and writers; beginning of deadlock strategies |
|
slides1; slides2 |
2/19 |
Lecture 18 |
|
|
|
2/20 |
Lab 7 |
|
|
|
2/21 |
Lecture 19 |
|
|
|
2/24 |
Lecture 20 |
|
|
|
2/26 |
No class |
2/27 |
Lab 8 |
|
|
|
2/28 |
Lecture 21 |
|
|
|
3/3 |
Lecture 22 |
|
|
|
3/5 |
Lecture 23 |
|
|
|
3/6 |
Lab 9 |
|
|
|
3/7 |
Lecture 24 |
|
|
|
3/10 |
Lecture 25 |
|
|
|