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]
|
12 Jan
Introductions,
C vs C++,
printf, scanf
|
14 Jan
Pointer basics,
C strings and other arrays,
Functions, pointers as out params
Lab 1 out
|
2 |
[no class]
|
19 Jan
More work with C
|
21 Jan
Heap allocation in C,
Models and semantics,
System architectures
Lab 1 due
Lab 2 out
|
3 |
24 Jan
Memory and the kernel
|
26 Jan
Files and directories in C (high-level),
Kernel and system calls,
Processes
|
28 Jan
fork
Lab 2 due
Lab 3 out
|
4 |
31 Jan
C function pointers,
Events and signal handling
|
2 Feb
Direct file I/O,
File descriptors, stdin, stdout
|
4 Feb
Overview of IPC
|
5 |
7 Feb
Pipes and FIFO
Lab 3 due
Proj 1 out
|
9 Feb
Processes and pointers,
Memory-mapped files
|
11 Feb
mmap, cont'd
|
6 |
14 Feb
POSIX vs System V,
Message passing
Proj 1 prep due
|
16 Feb
Project design
Proj 1 design due
Hwk 1 out
|
18 Feb
Project design cont'd,
Shared memory
|
7 |
21 Feb
Shared memory, cont'd
Hwk 1 due
|
23 Feb
C stack/heap allocation review
|
25 Feb
Semaphores, take 1,
Networking fundamentals,
TCP/IP socket programming
|
8 |
28 Feb
Application layer protocols,
sockets, cont'd
Proj 2 out
Proj 1 due
3 Mar
Hwk 1 revision due
4 Mar
|
[no class]
|
[no class]
|
9 |
[no class]
|
[no class]
|
[no class]
|
10 |
14 Mar
HTTP,
DNS,
Transport layer
|
16 Mar
Internet layer (IP),
Datagrams and UDP
Proj 2 prep due
|
18 Mar
NAT vs IPv6
Hwk 2 out
|
11 |
21 Mar
Project design
Proj 2 design due
|
23 Mar
Project design cont'd,
Transport layer security,
Lower networking layers
Hwk 2 due
|
25 Mar
Introduction to threads,
Threads demo
|
12 |
28 Mar
Threads with arguments
|
30 Mar
Returning values from threads
|
1 Apr
Threads in other languages
|
13 |
4 Apr
The problem of synchronisation
Proj 2 due
|
6 Apr
Peterson's solution
Proj 3 out
|
8 Apr
Synchronisation with locks,
Semaphores, take 2
|
14 |
11 Apr
Other synchronisation abstractions,
Deadlock
Proj 3 prep due
|
13 Apr
Classic sync problems
Hwk 3 out
Hwk 2 revision due
|
15 Apr
Project design
Proj 3 design due
|
15 |
18 Apr
Hwk 3 due
|
[no class]
|
22 Apr
Thread sync design patterns
|
16 |
25 Apr
|
27 Apr
Hwk 3 revision
|
29 Apr
Proj 3 due
Exam out
Exam due
5 May
|