Syllabus calendar
Click on a day to see full information for that day, including topic
list, suggested readings, questions, and other information. This page
will be updated throughout the term.
| 1 |
[no class]
|
13 Jan
Introductions,
C vs C++,
printf, scanf
|
15 Jan
Pointer basics,
C strings and other arrays,
Functions, pointers as out params
Lab 1 out
|
| 2 |
[no class]
|
20 Jan
More work with C
Lab 1 due
|
22 Jan
Models and semantics,
System architectures
|
| 3 |
25 Jan
Heap allocation in C,
Memory and the kernel
Lab 2 out
|
27 Jan
Files and directories in C (high-level),
Kernel and system calls,
Processes
|
29 Jan
C function pointers,
Events and signal handling
Lab 2 due
Lab 3 out
|
| 4 |
1 Feb
Direct file I/O,
File descriptors, stdin, stdout,
Overview of IPC
|
3 Feb
Pipes and FIFO
|
5 Feb
Lab 3 due
|
| 5 |
8 Feb
Memory-mapped files
Proj 1 out
|
10 Feb
mmap, cont'd
|
12 Feb
POSIX vs System V,
Message passing,
Shared memory
Proj 1 prep due
|
| 6 |
15 Feb
Project design
Proj 1 design due
|
17 Feb
Project design cont'd
|
19 Feb
Semaphores, take 1,
Networking fundamentals
|
| 7 |
22 Feb
Application layer protocols,
HTTP
|
24 Feb
DNS
|
26 Feb
TCP/IP socket programming
|
| 8 |
[no class]
|
3 Mar
Transport layer
Proj 1 due
|
5 Mar
Internet layer (IP)
|
| 9 |
8 Mar
Transport layer security
Hwk 1 out
|
10 Mar
Datagrams and UDP,
NAT vs IPv6
Proj 2 out
|
12 Mar
Lower networking layers
Hwk 1 due
|
| 10 |
15 Mar
Introduction to threads
Proj 2 prep due
|
17 Mar
Project design
Proj 2 design due
|
19 Mar
Project design cont'd,
Threads demo
|
| 11 |
22 Mar
Threads with arguments
|
24 Mar
Returning values from threads
|
26 Mar
Threads in other languages
Proj 2 notes
|
| 12 |
29 Mar
The problem of synchronisation
|
31 Mar
Proj 2 due
|
[no class]
|
| 13 |
5 Apr
Synchronisation with locks,
Semaphores, take 2
Proj 3 out
|
7 Apr
Other synchronisation abstractions,
Deadlock
|
9 Apr
Classic sync problems
Proj 3 prep due
Hwk 2 out
|
| 14 |
12 Apr
Project design
Proj 3 design due
|
[no class]
|
16 Apr
Hwk 1 revision due
Hwk 2 due
|
| 15 |
19 Apr
|
21 Apr
|
23 Apr
|
| 16 |
26 Apr
Proj 3 due
Exam out
Exam due
6 May
|
[no class]
|
[no class]
|