CSC 357, Winter 2007
Gene Fisher
Week 1:
- course syllabus -- introductory description of the course
 - unix basics -- bare-essential unix commands for csc 357
 - coding conventions -- standards for programming assignment code submitted in 357
 - lab 1 -- getting started with unix and c
 - programming assignment 1 -- sfmt, a simpler text formatter
 - program 1 testing -- test plan for programming assignment 1
 - lecture notes week 1 -- introduction to the course introduction to c and unix
 - lecture notes week 1, part 2 -- function declarations versus definitions; pointers and arrays in C
 Week 2:
- lab 2 -- getting started with C arrays, pointers, and structs
 - programming assignment 2 -- nwc, a numbered word counter
 - program 2 testing -- test plan for programming assignment 2
 - lecture notes week 2 -- C program structure; pointers and structs in C; dynamic memory management
 Week 3:
- lab 3 -- details of C arrays, pointers, and structs; unix make
 - lecture notes week 3 -- leftovers from week 2 notes; additional C language and library features
 Week 4:
- programming assignment 3 -- smake, a simplified version of make
 - lab 4 -- freeing memory in solution to lab 2
 - lecture notes week 4 -- unbuffered file i/o; unix files and directories
 Week 5:
- lab 5 -- unix compared to windows directory commands
 - lecture notes week 5 -- more on files and directories; function pointers in c; standard i/o library; system data files and information
 Week 6:
- midterm review
 - programming assignment 4 -- sfind, a simplified find utility
 - lecture notes weeks 6 and 7 -- introduction to unix processes and process control
 Week 7:
- lab 6 -- getting started with fork and exec
 Week 8:
- programming assignment 5 -- timer, an interactive timer program
 - lab 7 -- getting started with pipes
 - lecture notes week 8 -- introduction to signals and pipes
 Week 9:
- programming assignment 6 -- vssh, a Very Simple Shell
 - lecture notes week 9 -- additional pipe topics; additional signal topics; shells and programming assignment 6
 Week 10:
- final review -- review of question topic areas for the final quiz and final exam
 - lecture notes week 10 -- introduction to threads
 - lecture notes week 10, part 2 -- details of thread synchronization; final exam review
 
Data files are available in the following formats:
Most file links in an HTML document, point to other HTML files. To access the PostScript, PDF, or plain text version of a document, go to the desired directory and view the desired file with the ".ps", ".pdf", or ".txt" extension.