Lecture Notes



Please note: The lecture topics are subject to change based on time constraints and student interests.

Week
Topic
Notes (1 per page) Notes(4 per page)
1

Introduction

(Execution of managed code such as Java programs within Managed Runtime Environments (MRE's) and how this differs from C program execution, Systems Issues)

csc209_w1.pdf csc209_w1_4.pdf
2
Basic C Programming I

csc209_w2a.pdf

csc209_w2b.pdf

csc209_w2a_4.pdf

csc209_w2b_4.pdf

3
Basic/Intermediate C Programming

csc209_w3a.pdf

csc209_w3b.pdf

csc209_w3c.pdf

csc209_w3a_4.pdf

csc209_w3b_4.pdf

csc209_w3c_4.pdf

4

Systems Programming I

(errno, perror, process termination, fork, getpid,getppid,zobbies,wait)

csc209_w4.pdf csc209_w4_4.pdf
5

Advanced C Programming I

(Pointers, Strings )

csc209_w5a.pdf

csc209_w5b.pdf

csc209_w5a_4.pdf

csc209_w5_4.pdf

6

Advanced C Programming II

(Structs, unions, Memory allocation, file I/O, preprocessor, variable argument lists)

csc209_w6a.pdf

csc209_w6b.pdf

csc209_w6a_4.pdf

csc209_w6b_4.pdf

7

Systems Programming II

(Signals)

csc209_w7.pdf csc209_w7_4.pdf
8

Systems Programming III

(Pipes, Socket Programming)

csc209_w8.pdf

Server.c

Client.c

csc209_w8_4.pdf
9

Systems Programming IV

(Advanced I/O, Multiplexed I/O)

csc209_w9.pdf csc209_w9_4.pdf
10

Systems Programming V

(Shared Memory, Semaphores, Concurrency Issues)

csc209_w10.pdf csc209_w10_4.pdf
11
Threads, Shell Programming

csc209_w11a.pdf

csc209_w11b.pdf

csc209_w11a_4.pdf

csc209_w11b_4.pdf

12
Micellanea
csc209_w12.pdf csc209_w12_4.pdf
13
Review
csc209_w13.pdf csc209_w13_4.pdf