CS 241 Spring 2007
System Programming
  Sections: 11-11:50am MWF

1404 Siebel Center for Computer Science

 
Home Discussion Schedule and Lectures Compass News
 

Course Syllabus

Staff

Instructors: Klara Nahrstedt, Lawrence Angrave

TAs: Kirill Mechitov, Sameer Sundresh, Stephen Kloder

Machine Problems and Homework Assignments

The programming assignments in this class will be based on Posix Programming Interface. We will have nine machine problems with different difficulty degrees. The MP assignments will be done in pairs. There will be two homework assignments. The homework assignments will be done individually by each student. Use the TSG Linux machines.  To access these machines from outside the university, please use CITES VPN client.

Prerequisite

CS 225, CS 231 and credit or concurrent registration in CS232 are the prerequisites for CS 241.

Lectures

11-11:50 am Monday, Wednesday and Friday in Room 1404 SC. Lectures cover only important operating system concepts, and their implementation using POSIX programming interface. It is the students' responsibility to read the textbooks and related materials. You are expected to attend lectures, and will be responsible for all announcements made during lecture, on the cs241 web page, and on the newsgroup, class.cs241 and class.announce.cs241. Short lecture quizzes will be held on Wednesdays or Fridays in Lecture based on Compass self-assessment questions.  Short MP quizzes will be held on Mondays in Lecture.

Discussion Sections

There will be six discussion sessions. You should sign up for one of the discussion sessions using Compass as soon as  possible. All discussion sessions will be in 0220 SC and will be taught by the teaching assistants.

Laboratory Facilities from CSIL

We will be using linux machines, running POSIX system programming interface, in labs in 1245 DCL, 1265 and 1275 DCL and in 0216 SC (basement). You should make sure that you have accounts on the CSIL machines to do your machine problem assignments.We recommend that you use the 'csil-core1 - csil-core25 machines since our auto-grader programm will check your MP submissions on these machines.

TSG runs the CSIL labs, you can find out more details here:

TSG Machine Labs: https://agora.cs.uiuc.edu/display/CSIL/Facilities
TSG Web Site: https://cs.uiuc.edu/tsg

The DCL lab hours are 10 am to midnight, Sunday through Thursday, and 10 am to 6 pm Friday and Saturday. 0216 SC is open 24/7. More details of the available facilities are available.

If you register late or otherwise have problems relating to the existence of your account , send email to userhelp@cs.uiuc.edu.

Course Outline

Time-line of lectures and assignments
Time         Topic                    Material                       Due
===========================================================================    
01/17-01/19 Introduction              Ch 1/2 (S) & 1 (RR               
01/22-01/26 C Programs/Posix          Ch 2/3(S)&2/3(RR)           Q1/SMP0
01/29-02/02 Programs                  Ch 3/4(S)&2/3(RR)           Q2/SMP1
02/05-02/09 Threads                   Ch 3/4(S) &12(RR)           Q3/SMP2
02/12-02/16 Synchronization           Ch 6(S)&8/13/14(RR)         Q4/SMP3
02/19-02/23 Scheduling                Ch 5,6,9(S)                 Q5/SMP4
02/26-03/02 Timers                    Ch 9/10(S)&9(RR)            Q6/HW1
03/05-03/09 Deadlocks                 Ch 6(S)& 9(RR)              Midterm/SMP5
03/12-03/16 I/O                       Ch 11/12(S)                 Q7/LMP1
03/19-03/23 SPRING BREAK
03/26-03/30 File Systems              Ch 12(S)&4/5/6(RR)          Q8/LMP1
04/02-04/06 Memory Management         Ch 5-6(RR) 7/8(S)           Q9/LMP2
04/09-04/13 Memory Man                Ch 8(T)&8(RR)               Q10/LMP2
04/16-04/20 Networking                Ch 8/13(S) 18(RR)           Q11/LMP3
04/23-04/27 Networking                Ch 14/18/20(RR)             Q12/HW2/LMP3
04/30-05/02 Advanced OS Topics       
05/08       8:00-11:00am FINAL EXAM

Textbook

IMPORTANT: The two recommended text books are sold at a discount as a package. The Robbins and Stalling package ISBN 0132444720 has a net price of  $140.40 and is a lot less than buying the books individually.  The books are also available as an on-line package through SafariX.

  1. Operating Systems: Internals and Design Principles, Fifth Edition by William Stallings, Prentice Hall ISBN 0-13-147954-7.
    OS Book Resource Web Site (Animations, Pseudocode, pdfs, UNIX, Windows, Bibliography, Standards)
    Student Resource Web Site (Help for students - maths, coding, writing aids, good practices)

  2. UNIX SYSTEMS Programming: Communication, Concurrency and Threads by Kay A. Robbins and Steven Robbins, Prentice Hall ISBN 0-13-042411-0
    Programming Resource Web Site


Other Books

Often, the inquisitive student will need to broaden their knowledge about Operating Systems.  The following texts are interesting and relevant.

Modern Operating Systems (Second Edition), Andrew S. Tanenbaum, Prentice Hall, 2001
Applied Operating System Concepts, Silberschatz, Galvin, Gagne, 1th Edition, John Wiley&Sons, Inc., 2000
Operating System Concepts, 5th Edition, Silberschatz and Galvin
The Design of the Unix O.S., Maurice J. Bach.
The UNIX System, S. R. Bourne.
The Mythical Man Month, F. Brooks.
Operating System Design, D. Comer, T. Fossum.
Internetworking with TCP/IP, Doug Comer.
An Introduction to Operating Systems, Harvey M. Deitel.
Operating Systems: Design and Implementation, Andrew S. Tanenbaum.
The Logical Design of Operating Systems, Alan Shaw.
Operating Systems, Internals and Design Principles, William Stalling.(3rd Edition).
Updated: January 17, 2007