Below is the complete lecture and section schedule. A Green day indicates that the emphasis will be on UNIX / OS / command-line. A Blue day indicates the emphasis will be on C programming. A Teal day indicates the emphasis will be on a combo of C + UNIX + command line stuff. A Red day indicates an exam. The Topic for each day approximately indicates the topic that the class will be on. The Prep for each day indicates the work you need to have completed BEFORE attending class that day. TLCL stands for “The Linux Command Line” by Shotts and PIC stands for “Programming in C” by Kochan.
NOTE: This is subject to change. Please visit schedule regularly.
Monday | Wednesday | Deadlines |
1/12/2023 Topic: Course introduction, UNIX, bash navigation Prep:TLCL Introduction, chapter 1 Slides |
||
1/17/2023 Topic: files, directories, ssh, vim/nano Prep:TLCL chapters 2, 3, and 4 Slides |
1/19/2023 Topic: C basics, variables, I/O, types, math Prep: PIC chapters 1 - 3 Slides |
|
1/24/2023 Topic: C: loops and conditions Prep: PIC chapters 4 and 5 Slides and Slides |
1/26/2023 Topic: C: strings, standard in/out/err Prep: PIC 9 Slides |
PA 1 due (Wednesday) |
1/31/2023 Topic: C: functions, pointers Prep: PIC chapter 7 Slides |
2/2/2023 Topic: C: pointers, stack Prep: PIC chapters 6 and 7 Slides |
PA 2 due (Wednesday) |
2/7/2023 Topic: C: 1D and 2D arrays Prep: PIC chapters 6 and 7 Slides and Slides |
2/9/2023 Topic: UNIX: Files, file system, iNodes Prep: TLCL chapters 6 and 7 Slides |
PA 3 due (Wednesday) |
2/14/2023 Topic: C: Text file I/O Prep: TLCL chapter 8-9, PIC chapter 15 Slides test.c makefile |
2/16/2023 Topic: GDB, debugging, time Prep: TLCL chapter 5, PIC chapter 17 Slides Slides |
PA 4 due (Wednesday) |
2/21/2023 Topic: C: Malloc, Free, stack / heap Prep: PIC chapters 10 and 16 Slides |
2/23/2023 EXAM 1 |
|
2/28/2021 Topic: C: Memory Management, Valgrind Prep: PIC chapters 10 and 16 Slides |
3/2/2021 Topic: C: Memory Management, Valgrind Prep: PIC chapters 10 and 16 Slides Slides |
PA 5 due (Friday) |
3/7/2023 SPRING BREAK |
3/9/2023 SPRING BREAK |
|
3/14/2023 Topic: C: Creating Data Structures Prep: PIC chapters 10 and 16 Slides |
3/16/2023 Topic: C: Structs, creating data structures Prep: PIC chapter 8 Slides bt.c |
PA 6 due (Friday) |
3/21/2023 Topic: Make, build systems Prep: PIC Chapter 14 |
3/23/2021 Topic: Systems Calls and Function Pointers Prep: TBA Slides |
|
3/28/2023 Topic: Processes, process control, top, kill Prep: TLCL Chapter 9 (again) Slides |
3/30/2023 Topic: Text processing, regular expressions Prep: TLCL chapter 19 Slides |
PA 7 due (Friday) |
4/4/2023 Topic: Text processing, regular expressions Prep: TLCL chapter 20 Slides |
4/6/2023 EXAM 2 |
|
4/11/2023 Topic: Shell scripting Prep: TLCL chapter 24 and 25 Slides |
4/13/2023 Topic: Phases of compilation, C preprocessor Prep: The C Preprocessor Documentation Prep: PIC chapter 12 Slides |
PA 8 due (Friday) |
4/18/2023 Topic: Binary I/O and Bit Manipulation Prep: PIC chapter 11 Slides |
4/20/2023 Topic: Stages of compilation, ELF Slides |
PA 9 due (Friday) |
4/25/2023 Topic: UNIX Kernel, system calls, fork, exec Slides |
4/27/2023 Topic: UNIX Kernel, system calls, fork, exec |
PA 10 due (Friday) |
5/2/2023 Topic: TBA |
5/4/2023 DEAD DAY |