In the slides and videos section below, I will post slides and pre-recorded discussion section videos before 6PM on the day before the live discussion section. In a discussion section video, I will primarily present information regrading up-coming programming assignments. I will also post live discussion section videos there.

A live discussion section is conducted by a TA. Since we have two TAs this summer session, most likely, they will alternate in leading the discussion section.

  • Fri 10:00am - 11:10am on Zoom (Zoom meeting ID given here)
During a live discussion section, the TA will answer questions about the pre-recorded video and answer your questions about programming assignments. If you have a particular topic that you would like the TA to discuss in class (including stuff like something covered in lectures that you would like the TA to explain further), you should send e-mail to the TA before 6PM on Thursday. The TA will try his/her best to cover such requests.

To download all the PDF files below in one command (so you can study for exams), do the following inside a terminal in Ubuntu 16.04:

    wget -r -l 1 --user=USERID --password=PASSWORD http://merlot.usc.edu/cs402-m21/summer-discussions.html
where USERID and PASSWORD are the user ID and password used to access protected content from our class web site. But please note that the lecture slides can change at any time without notice. Therefore, it's a good idea to re-run the above command often to synchroniza your copy with the server!

(Please note that access to discussion slides and videos are restricted.)
Week 1 Discussion 1 videos and slides: (for 5/21)
Week 2 Discussion 2 videos and slides: (for 5/28)
Week 3 Discussion 3 videos and slides: (for 6/4)
Prerequisite: video 1 of Lecture 5 (finish all videos on thread synchronization)
Week 4 Discussion 4 videos and slides: (for 6/11)
Prerequisite: you should probably only watch these videos when you are done with warmup2 and are ready for kernel assignments
Week 5 Discussion 5 videos and slides: (for 6/18)
Week 6 Discussion 6 videos and slides: (for 6/25)
Week 7 Discussion 7 videos and slides: (for 7/2)
Week 8 Discussion 8 videos and slides: (for 7/9)
Prerequisite: you should probably only watch these videos when you are done with kernel 2 and are ready to do phase 1 of kernel 3
Week 9 Discussion 9 videos and slides: (for 7/16)
Week 10 Discussion 10 videos and slides: (for 7/23)
Week 11 No discussions this week. (We are covering exactly the same discussions material and doing exactly the same programming assignments as all previous semesters.)

The following are tentative and final slides (in PDF format) for this semester.

Week # Date Topics Comments
1 5/21 gdb, warmup #1 intro  
2 5/28 C, Unix  
3 6/4 warmup #2 intro (warmup #1 due on Tuesday)
4 6/11 multithreading, Unix signals  
5 6/18 intro to kernel assignments (warmup #2 due on Tuesday)
6 6/25 kernel #1  
7 7/2 intro to kernel 2 (kernel 1 due on Tuesday)
8 7/9 kernel 2 tests  
9 7/16 intro to kernel 3 (kernel 2 due on Tuesday)
10 7/23 objdump, debugging user space processes  
11 7/30 (no discussion section this week) (kernel 3 due on Thursday)