CSCB09 2025 Summer

Instructor: Albert Lai, albertyc.lai@utoronto.ca

Course information: link. (Marking scheme, course policy.)

Office hours:
Tuesday and Friday 14:00-15:30 extensible, CS Help Centre IA 3180
There are extra office hours for assignments, midterm test, final exam.

Textbooks:
Required (free PDF download): William Shotts, The Linux Command Line.
Required: Michael Kerrisk, The Linux Programming Interface.
Optional: If you need further help with C, try:
Programiz C tutorial (has more examples)
learn-c.org (has more topics and embedded try-out)

Software: Please visit the CSCB09 software page.

Labs, Assignments, Term Test, Final Exam

Lectures, Reading

[CL] refers to The Linux Command Line.
[PI] refers to The Linux Programming Interface.

Date Lecture Code Reading
May 8 Introduction
Redirection, Pipelining, Files
AT&T Unix video
[PI] 2.1–2.7 (it's OK to be a bit lost for now)
[CL] 1–4 except Links, 6
[CL] 5.3, 6, 20 for week 2 lab
[CL] 16.3 for ssh
May 15 Shell programming code [CL] 7, 11, 24–36.1
May 22? Shell programming
Some utilities
code
May 29? C data types code [CL] 17, 19
Jun 5? C I/O code
Jun 12? C modularization code
Jun 26? Unix file system code [CL] chapters 3, 4, 9
[PI] chapters 4-5, 18
Jul 3? Unix file system
Jul 10? processes & redirection
signals
code
code
[PI] chapters 24-27, 44
[PI] chapters 20-21
Jul 17? network sockets code [PI] chapters 56, 58, 59
Jul 24? I/O multiplexing code [PI] chapter 63 minus 63.3
Jul 31? Threads code [PI] chapters 29,30