Syllabus



Date

Topic

Reading

Notes

January 13 Introduction / Course Overview    
January 15 The System Interface: libraries and system calls etc.
Ch. 1
 
       
January 20 The System Interface: libraries and system calls etc. Ch. 1  
January 22 File I/O: file descriptors, unbuffered I/O etc Ch. 3  
       
January 27 File I/O: access rights etc Ch. 3  
January 29
Files and Directories: accessing file status information Ch. 4 Assignment 0 (static and dynamic library primer)
       
February 3
Files and Directories continued Ch. 4  
February 5
Overview of Makefiles Ch. 5  
       
February 10 The Standard I/O Library: buffered I/O Ch. 5 Assignment 0 due
February 12 The Process Environment: setjmp and longjmp etc Ch. 7  
       
February 17     - No Class - 
- Monday Schedule -
February 19
The Process Environment, continued Ch. 7 Assignment 1
       
February 24 Process Creation: fork and exec etc Ch. 8  
February 26 Process Creation continued Ch. 8  
       
March 2
Review    
March 4
Midterm exam   -- Tentative Date --
Assignment 1 due 11:59pm on March 5th
       
March 9
 
  - No Class - 
- Spring Recess -
March 11  
  - No Class - 
- Spring Recess -
       
March 16 Signals Ch. 10  
March 18
Signals continued Ch. 10  
       
March 23 Interprocess Communication: pipes, fifos, semaphores etc Ch. 14  
March 25 IPC continued Ch. 14 Assignment 2
       
March 30
Advanced I/O Ch. 12  
April 1
Record Locking Ch. 12  
       
April 6
Non-blocking I/O, asynchronous I/O  
April 8
I/O multiplexing: poll / select, memory-mapping
 
       
April 13 aio_read/write etc, Linux sendfile, kernel event notification schemes   Assignment 2 due (11:59pm)
April 15
Perl Intro
  Assignment 3
       
April 20 Regular Expressions
   
April 22 Data manipulation using Perl
 
     
April 27 Review
  Assignment 3 due (11:59pm on April 30th)