CSC 209H: Software Tools and Systems Programming
Fall 2005

Course Information (postscript or PDF)

Instructor: Richard Krueger
email: (sorry, hidden from spammerites) (or krueger@cdf)
Lectures: Tuesdays and Thursdays, 1pm-2pm in BA1180
Tutorials: Fridays, 1pm-2pm (tutorials begin September 16)
LM 157   with James Li   (last names A to L)
SS 2128   with Yuan Gan   (last names M to Z)
Office hours: by appointment, or in BA 3234 (CS help centre)
Tuesdays 3pm-4pm
Wednesdays 1pm-2pm
Newsgroup: ut.cdf.csc209h

Course Materials

Course text books:
Unix System Programming Second Edition, Keith Haviland, Dina Gray, and Ben Salama. Addison-Wesley, 1998. However, please see the note on the web site about text books.

C Programming: A Modern Approach, K.N. King, W. W. Norton and Company, 1996

Alternate textbooks may be acceptable; see some comments from another instructor here.

Web page: http://www.cs.utoronto.ca/~csc209h

Handouts, assignments, solutions, marks, and important course information will be posted periodically on the web page. You should read it regularly. It would be a good idea to follow the discussions on the newsgroup. You are responsible for announcements made in class and on the web page.

Grading Scheme and Assignment Schedule

Assignment Topic Weight Due at 10 p.m.
1 Shell Programming 10% Thursday October 6
2 System calls 10% Thursday October 27
Midterm 20% Tuesday November 1
3 Processes and IPC 10% Thursday November 17
4 Sockets and Select 10% Thursday December 8
Final Exam 40% See exam schedule

To pass the course you must receive at least 40% on the final exam.

Late assignments will be handled based on a system of ``grace days'', as follows: Each student begins the term with 3 grace days. One grace day is 24 hours. If an assignment is due at 10:00 p.m. on a Thursday then an assignment handed in by 10:00 p.m. on Friday uses one grace day; if handed in by 10:00 p.m. Sunday, it uses up 3 grace days. The grace days are intended for use in emergencies (e.g., printer failure or car failure). Do not use them to buy an extension because of a busy week or you will be out of luck in a true emergency.

If you are at risk of missing a deadline due to a busy week, rather than use your grace days you should hand in a working (and tested) version of a simpler program. This will be easy to do if you have written and debugged a series of programs that accomplish more and more of the assigned problem.

In the event of an illness or other catastrophe, get proper documentation (e.g., medical certificate), and contact me (by phone, email or in person) as soon as possible. Do not wait until the due date has passed. It is always easier to make alternate arrangements before the due date or test day.

Since your assignments are submitted electronically and will usually be tested using an automated testing program, you must follow the submission instructions exactly. If you do not, you will most likely lose substantial marks on the assignment. If you find you have submitted the wrong file or omitted a file, please notify your instructor as soon as possible. Please see the web page for full details.

Remarking

Requests for remarking must be done using the provided online form explaining in detail what your concern is. Requests for remarking should be submitted no later than one week after the assignment or test has been returned to the class.

Important Dates

Deadline to add F coursesSeptember 25, 2005
Deadline to drop F coursesNovember 6, 2005
Classes endDecember 9, 2005
Final ExaminationsDecember 12 - 21, 2005

Valid HTML 4.01 Transitional