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

lab l10 l09 l07 l06 l05 l04 l03 l02
due Jul 18 Jul 11 Jun 27 Jun 13 Jun 6 May 30 May 23 May 16

Item Due date & notes
Test 2 July 16 5PM, IC 130, one aid sheet
Scope: C I/O, C modularization, Unix file system
Assignment 3July 27 11:59PM
Assignment 2July 10 11:59PM
Test 1 June 11 5PM, IC 130, one aid sheet
Scope: Weeks 1-5 minus C I/O
Assignment 1June 8 11:59PM

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
May 29 Shell programming
Some utilities
code [CL] 17, 19
Jun 5 C data types
C I/O
code
code
Jun 12 C I/O
C modularization
code
Jun 26 C modularization
Jul 3 Unix file system code [CL] chapters 3, 4, 9
[PI] chapters 4-5, 18
Jul 10 Unix file system
processes & redirection code [PI] chapters 24-27, 44
Jul 17 signals code [PI] chapters 20-21
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