Instructor: Albert Lai, albertyc.lai@utoronto.ca
Course information: link. (Marking scheme, course policy.)
Office hours:
Thursday 17:15-18:15, Friday 14:00-15:30 extensible, CS Help Centre IA 3180
There are extra office hours for assignments, term tests, 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.
| lab | l09 | l08 | l07 | l06 | l05 | l04 | l03 | l02 |
|---|---|---|---|---|---|---|---|---|
| due | Jul 17 | Jul 10 | Jun 26 | Jun 12 | Jun 5 | May 29 | May 22 | May 15 |
| Item | Due date & notes |
|---|---|
| Test 2 | July 20 5PM-6:15, IC130, 1 aid sheet
C I/O, modularization, Unix file system, processes & redirection & pipes |
| Assignment 3 | July 25 midnight |
| Assignment 2 | July 5 midnight |
| Assignment 1 | June 7 noon |
| Test 1 | June 8 5PM-6:15, IC130, 1 aid sheet
Scope: Up to and including C data types |
| Final exam | 2 aid sheets |
[CL] refers to The Linux Command Line.
[PI] refers to The Linux Programming Interface.
| Date | Lecture | Code | Reading |
|---|---|---|---|
| May 7 | 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 14 | Shell programming | code | [CL] 7, 11, 24–36.1 |
| May 21 | Shell programming | ||
| May 28 | Shell programming
Some utilities | code | [CL] 17, 19 |
| Jun 4 | C data types
C I/O | code
code | |
| Jun 11 | C I/O | ||
| C modularization | code | ||
| Jun 25 | C modularization | ||
| Unix file system | [CL] chapters 3, 4, 9
[PI] chapters 4-5, 18 | ||
| Jul 2 | Unix file system | code | |
| Jul 9 | processes & redirection | code | [PI] chapters 24-27, 44 |
| signals | code | [PI] chapters 20-21 | |
| Jul 16 | signals | ||
| network sockets | code | [PI] chapters 56, 58, 59 | |
| I/O multiplexing | code | [PI] chapter 63 minus 63.3 | |
| Threads | code | [PI] chapters 29,30 |