credits: 3
level: undergraduate (3rd year students)
condition: prerequisite 2110212
Do what you can and be honest to yourself.
Allowing your friend to copy your work is not a
prove of friendship but offering him or her a tutoring is.
Week | Topic | Reference |
1 (6/6) | Introduction, systems programming, UNIX, C, course outline, texts, references, tutorial, assignments, projects, quiz, grading, computer facilities | |
2 (13/6) | UNIX commands and utilities, UNIX file system | [H-1] |
3 (20/6) | UNIX shells | [H-4] |
4 (27/6) | C programming language | [H-2] |
5 (4/7) | C library functions for input-output, files, string, memory allocation, argument handling, etc. | [H-8]
[H-9] |
6 (11/7) | Developing large C programs (compile, make, link, library) | [H-13]
[R-A] |
7 (18/7) | Debugging and profiling C code | [H-15] |
8 (25/7) | --Midterm Exam-- | |
9 (1/8) | Processes and Concurrency (program execution, dynamic linking, virtual memory, run-time environment) | [R-1]
[R-2] [H-10] |
10 (8/8) | Files and devices | [R-3] |
11 (15/8) | Communicating between processes (interrupt, exception, signal, device drivers, I/O, IPC) | [R-5]
[H-12] |
12 (22/8) | Shells | [R-7] |
13 (29/8) | Threads | [R-9]
[R-10] |
14 (5/9) | Network programming (communication, socket, networking), Client-Server Communication | [R-12] |
15 (12/9) | Remote Procedure Calls | [R-14] |
16 (19/9) | ||
17 (23/9) | --Final Exam (Monday 23 September 8.30-11.30)-- |
Note: The schedule may be adjusted during the course. Some sections of the text may be omitted.