Calendar for CS 105, Spring 2020

Reading assignments are in red. Readings may be done before or after class, whichever works best for you.

Practice problems are in purple. Practice problems are best done after the associated lecture. Practice problems marked iwith an asterisk (*) are especially important; if you are short on time you should concentrate on those ones. (If an asterisk precedes a range or practice problems, all of them are important.)

 

January
Sunday Monday Tuesday Wednesday Thursday Friday Saturday












 1



 2



 3



 4



 5



 6



 7



 8



 9



 10



 11



 12



 13



 14



 15



 16



 17



 18



 19



 20



 21
 Bits, Bytes, Ints
 Ch. 1, Ch. 2.1-2.3
 Practice: *2.1, 2.3-2.7, *2.8, 2.9-2.10, *2.12, 2.14, *2.15-2.17, 2.19, *2.21, 2.23, 2.27, *2.30, 2.33, 2.40, *2.42-2.44
 22



 23
 Bits (cont'd)



 24
 Lab 1: Bits


 25



 26



 27



 28
 Bits (concl'd)



 29



 30
 Floats
 Ch. 2.4-2.5
 Practice: 2.45-2.46, 2.50-2.52, *2.54
 31
 Lab 1 continued






 

February
Sunday Monday Tuesday Wednesday Thursday Friday Saturday
























 1



 2



 3



 4
 Quiz 1: Data
 x86-64 Assembly
 Ch. 3-3.3
 5



 6
 X86 Assembly (cont'd)

 Ch. 3.4-3.5
 Practice: *3.1, 3.2-3.5, *3.6-3.8, 3.9-3.10, 3.11 (A & B)
 7
 Lab 1 Due
 Lab 2: Debugger

 8



 9



 10



 11
 X86 Assembly (concl'd)

 X86 Control Flow
 Ch. 3.6
 Practice: 3.14, 3.16-3.17, *3.18, 3.20-3.21, 3.23-3.28, *3.29-3.30, 3.31
 12



 13
 X86 Control Flow (cont'd)

 X86 Procedures
 Ch. 3.7
 Practice: 3.32, 3.34-3.35
 14
 Lab 2 Due
 Lab 3: Bomb

 15



 16



 17



 18
 Quiz 2: x86-64 Instructions
 X86 Procedures (cont'd)


 19



 20
 X86 Arrays
 Ch. 3.8
 Practice: 3.35-3.38, 3.40
 21
 Lab 3 continued


 22



 23



 24



 25
 Guest Lecturer: Prof. Stone
 X86 Structs

 X86 Security
 Ch. 3.9-3.10
 Practice: 3.41-3.43, 3.4-3.49
 26



 27
 Guest Lecturer: Prof. Stone
 Return-Oriented Programming

 28
 Midterm available 5 PM
 Lab 3 Due
 Lab 4: Attack!
 29



 

March
Sunday Monday Tuesday Wednesday Thursday Friday Saturday
 1



 2



 3
 Processes
 Ch. 8.2-8.4
 Practice: 8.1-8.4
 4



 5
 Processes (continued)



 6
 Midterm due 5 PM
 Lab 4 continued

 7



 8



 9



 10
 Quiz 3: x86-64 Data; Processes
 Threads
 Sample threaded program
 Ch. 12.3-12.4
 Practice: 12.6-12.7
 11



 12
 LAST DAY TO DROP

 Threads (continued)


 13
 Lab 4 Due (end of lab)
 Lab 5 will be released on March 30

 14



 15



 16
 Spring break



 17
 Spring break



 18
 Spring break



 19
 Spring break



 20
 Spring break



 21



 22



 23
 COVID-19 break



 24
 COVID-19 break



 25
 COVID-19 break



 26
 COVID-19 break



 27
 COVID-19 break

 Cesar Chavez Day


 28



 29



 30
 Lab 5: Ring Buffer


 31
 Exceptions and signals (PDF)
 Ch. 8.1, 8.5, 8.7
 Practice: 8.7, 8.8
















 

April
Sunday Monday Tuesday Wednesday Thursday Friday Saturday












 1



 2
 I/O (PDF)
 Ch. 10
 Practice: 10.1-10.5
 3
 Lab 5 continued


 4



 5



 6



 7
 Quiz 4: Asynchrony and I/O
 Cache (PDF)
 Ch. 6.3-6.6
 Practice: 6.8-6.20
 8



 9
 Cache (cont'd)

 Ch. 6

 10
 Lab 5 due
 Lab 6: Cache

 11



 12



 13



 14
 Virtual Memory I (PDF)
 Ch. 9.1-9.5
 Practice: 9.1-9.2
 15



 16
 Virtual Memory II (PDF)
 Ch. 9.6-9.8
 Practice: 9.3-9.4, HW 9.11-9.13
 17
 Lab 6 continued


 18



 19



 20



 21
 Quiz 5: Cache and Virtual Memory
 Network Programming (PDF)
 Echo client
 Echo server
 Ch. 11.1-11.4
 Practice: 11.4
 22



 23
 Program Performance (PDF)
 Machine-Dependent Performance (PDF)
 Ch. 5.1-5.6
 Practice: 5.1-5.4
 24
 Lab 6 Due
 Lab 7: Networks

 25



 26



 27



 28
 Machine-Dependent Performance (cont'd)

 File Systems (PDF)
 Ch. 5.7-5.15
 Practice: 5.5-5.12
 29



 30
 File Systems (cont'd)











 

May
Sunday Monday Tuesday Wednesday Thursday Friday Saturday




















 1
 Lab 7 Due (11:59 PM)


 2



 3



 4



 5



 6
 Final available 9 AM


 7



 8



 9



 10



 11



 12



 13
 Final due 5 PM (including seniors)


 14



 15



 16



 17



 18



 19



 20



 21



 22



 23



 24



 25



 26



 27



 28



 29



 30



 31




























© 2020, Geoff Kuenning

This page is maintained by Geoff Kuenning.