Schedule and Lecture Notes

Click the title of a lecture to view the page with lecture notes. Reading assignments from Bryant & O'Hallaron are in purple.
Recommended practice problems are in green. Associated practice problems are best done after lecture.

Jump to: September | October | November | December

 
 

August-September 2024

Sunday Monday Tuesday Wednesday Thursday Friday Saturday
25 26 27

Lecture 1: Bits and Bytes

Reading: Ch. 1, 2.1

Practice problems: 2.1, 2.3, 2.4, 2.8, 2.9, 2.12, 2.14, 2.16


28 29

Lecture 2: Integers I

Reading: Ch 2.2

Practice problems: 2.17, 2.19, 2.23-2.26


30

Lab 1: Bits

31
1

2

Labor day


3

Lecture 3: Integers II

Reading: 2.3

Practice problems: 2.28, 2.29, 2.32, 2.33, 2.43, 2.44


4

5

Lecture 4: Floats

Reading: 2.4-2.5

Practice problems: 2.45, 2.47, 2.54


6

7

8

9

10

Quiz 1 due: Lec 1-4

Lecture 5: Machine Prog. I
(basics and moving data)

Reading: Ch. 3 intro, 3.2-3.4

Practice problems: 3.1, 3.4, 3.5


11

12

Lecture 6: Machine Prog. II
(arithmetic ops and control flow)

Reading: Ch. 3.5-3.6

Practice problems: 3.6, 3.11A, 3.18, 3.26


13

Lab 1 due

Lab 2: Debugger


14

15

16

17

Lecture 7: Machine Prog. III
(procedures, stack)

Reading: Ch. 3.7

Practice problems: 3.32, 3.34-3.35


18

19

Lecture 8: Machine Prog. IV
(arrays, structs)

Reading: Ch. 3.8-3.9

Practice problems: 3.36-3.38, 3.41, 3.44


20

Lab 2 due

Lab 3: Bomb


21

22

23

24

Quiz 2 due: Lec 5-8

Lecture 9: Processes

Reading: Ch. 8.1-8.4

Practice problems: 8.1-8.4


25

26

Lecture 10: Concurrency I

Reading: Ch. 12.3-12.5.1

Practice problems: 12.7-12.8


27

28

 
 

October 2024

Sunday Monday Tuesday Wednesday Thursday Friday Saturday
29

30

1

Lecture 11: Concurrency II

Reading: Ch. 12.5.2-4, 12.7

Practice problems: 12.10, 12.13, 12.15


2

3

Lecture 12: Dynamic Memory Allocation

Reading: 9.9

Practice problems: 9.6, 9.7


4

Lab 3 due

Lab 4: RingBuffer


5

6

7

8

Quiz 3 due: Lec 9-12

Lecture 13: ECF and Signals

Shell Practice worksheet

Reading: Ch. 8.1, 8.5


9

10

Lecture 14: Networks

Sockets

Reading: Ch. 11.1 - 11.5

Practice problems: 11.4


11

12

13

14

Fall Break


15

16

17

Lecture 15: Midterm Review

Midterm available 5pm


18

19

20

21

22

Lecture 16: Machine Prog. V
(security)

Reading: Ch. 3.10.3-3.10.4

Practice problems: 3.46-3.48


23
24

Midterm due


Lecture 17: I/O

Reading: Ch. 10.1-10.4, skim 10.5-10.7, 10.8-10.12

Practice problems: 10.1-10.3,10.5


25

Lab 4 due


26

27 28

Lab 5: Attack

29

Lecture 18: More I/O, Fgrep


30 31

Lecture 19: Hard Disk Drives and File Systems

Reading: 6.1.2

Practice problems: 6.3


1 2

 
 

November 2024

Sunday Monday Tuesday Wednesday Thursday Friday Saturday
3
4 5

Quiz 4 due: Lec 16-19

No class


6 7

No lecture. Office hours during class time.

8

Lab 5 due

Lab 6: Fgrep


9
10

11

12

Lecture 20: Memory Hierarchy, Caches I

Reading: 6.2-6.3

Practice problems: 6.7


13

14

Lecture 21: Caches II

Reading: 6.4-6.7

Practice problems: 6.8-6.20



15

16

17

18

19

Quiz 5 due: Lec 20-21

Lecture 22: Virtual Memory I

Reading: Ch 9.1-9.5

Practice problems: 9.1-9.2


20

21

Lecture 23: Virtual Memory II


22

Lab 6 due

(Optional) Lab 7: Cache


23

24

25

26

Lecture 24: Performance I

Reading: Ch. 5.1-5.6, 4.1-4.4

Practice problems: 5.1, 5.3, 5.4, 4.28


27

Thanksgiving break


28

29

30

 
 

December 2024

Sunday Monday Tuesday Wednesday Thursday Friday Saturday
1

2

3

Lecture 25: Performance II

Reading: Ch. 5.7-5.10


4

5

Lecture 27: Review


6

Lab 6 due
Optional Lab 7 due

Optional Quiz 6 due

Final exam available



7

8

9

10

11

5pm: Final exam due


12


13

14