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: January | February | March | April | May

 
 

January 2025

Sunday Monday Tuesday Wednesday Thursday Friday Saturday
19

20

MLK Day


21

22

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


23

24

Lab 1: Bits

25

26

27

Lecture 2: Integers I

Reading: Ch 2.2

Practice problems: 2.17, 2.19, 2.23-2.26


28

29

Lecture 3: Integers II

Reading: 2.3

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


30

31

1

 
 

February 2025

Sunday Monday Tuesday Wednesday Thursday Friday Saturday
2

3

Quiz 1 due: Lec 1-3

Lecture 4: Floats

Reading: 2.4-2.5

Practice problems: 2.45, 2.47, 2.54


4

5

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


6

7

Lab 1 due

Lab 2: Debugger


8

9

10

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


11

12

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

Reading: Ch. 3.7

Practice problems: 3.32, 3.34-3.35


13

14

Lab 2 due

Lab 3: Bomb


15

16

17

Quiz 2 due: Lec 4-7

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

Reading: Ch. 3.8-3.9

Practice problems: 3.36-3.38, 3.41, 3.44


18

19

Lecture 9: Processes

Reading: Ch. 8.1-8.4

Practice problems: 8.1-8.4


20

21

22

23

24

Lecture 10: Concurrency I

Reading: Ch. 12.3-12.5.1

Practice problems: 12.7-12.8


25

26

Lecture 11: Concurrency II

Reading: Ch. 12.5.2-4, 12.7

Practice problems: 12.10, 12.13, 12.15


27

28

Lab 3 due

Lab 4: RingBuffer


1

 
 

March 2025

Sunday Monday Tuesday Wednesday Thursday Friday Saturday
2

3

Quiz 3 due: Lec 8-11

Lecture 12: Dynamic Memory Allocation

Reading: 9.9

Practice problems: 9.6, 9.7


4

5

Lecture 13: ECF and Signals

Shell Practice worksheet

Reading: Ch. 8.1, 8.5


6

7

8

9

10

No class



11

12

Lecture 14: Networks (no slides)


13

14

Lab 4 due


15

16

17

Spring break


18

19
20

21

22

23 24

Lecture 15: Midterm Review

Midterm available 5pm

25

26

Lecture 16: Machine Prog. V
(buffer overflow)

Reading: Ch. 3.10.3-3.10.4

Practice problems: 3.46-3.48


27

Lab 5: Attack


28

Cesar Chavez Day

29

 
 

April 2025

Sunday Monday Tuesday Wednesday Thursday Friday Saturday
30

31

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


1

2

Lecture 18: More I/O, Fgrep


3
4
5
6

7

Quiz 4 due: Lec 16-18

Lecture 19: Memory Hierarchy, Caches I

Reading: 6.2-6.3

Practice problems: 6.7


8

9

Lecture 20: Caches II

Reading: 6.4-6.7

Practice problems: 6.8-6.20


10


11

Lab 5 due

Lab 6: Fgrep


12

13

14

Lecture 21: Virtual Memory I

Reading: Ch 9.1-9.5

Practice problems: 9.1-9.2


15

16

Lecture 22: Virtual Memory II


17

18

19

20

21

Quiz 5 due: Lec 19-22

Lecture 23: Performance I

Reading: Ch. 5.1-5.6, 4.1-4.4

Practice problems: 5.1, 5.3, 5.4, 4.28


22

23

Lecture 24: Performance II

Reading: Ch. 5.7-5.10


24

25

(Optional) Lab 7: Cache

26

27

28

Lecture 25: Hard Disk Drives and File Systems

Reading: 6.1.2

Practice problems: 6.3


29

30

Lecture 26: Review


1

2

Lab 6 due

Optional Quiz 6 due

Optional Lab 7 due

Final exam available



3

 
 

May 2025

Sunday Monday Tuesday Wednesday Thursday Friday Saturday
4

5

6

7

8

Final due (graduating seniors)


9

10

11

12

13

14

15


16

Final due (non-graduating students)


17