Show/hide contentOpenClose All
Curricular information is subject to change
On completion of this module students should be able to: (i) Understand the concepts and structure of the Unix operating system; (ii) Be able to use the core utilities and perform administrative tasks; (iii) Write and understand advanced C programmes; (iv) Write shell scripts; (v) Know how to use source-code packaging tools (GNU build system).
Indicative Module Content:History, the origin and the current state of Unix
Introduction to Unix shell
Intro to kernel, virtual memory, process image
File system, I/O, I/O in C
Virtual memory, process image and memory management in C
Shell, command arguments, program arguments in C
Kernel and system calls in C
Compilation, debugging, make
Threads and multi-threaded programming
Processes, signals, inter-process communication, networking
Shell and Python scripting
Student Effort Type | Hours |
---|---|
Lectures | 24 |
Tutorial | 12 |
Practical | 12 |
Autonomous Student Learning | 72 |
Total | 120 |
Students taking this course should have already successfully completed an introductory C programming course.
Description | Timing | Component Scale | % of Final Grade | ||
---|---|---|---|---|---|
Assignment: Assignments per major topic | Varies over the Trimester | n/a | Standard conversion grade scale 40% | No | 40 |
Examination: Written examination | 2 hour End of Trimester Exam | No | Standard conversion grade scale 40% | No | 50 |
Lab Report: Weekly lab exercises | Varies over the Trimester | n/a | Standard conversion grade scale 40% | No | 10 |
Resit In | Terminal Exam |
---|---|
Autumn | Yes - 2 Hour |
• Feedback individually to students, post-assessment
• Online automated feedback
Assignments' marks are released to students with comments. Student can ask TA and demonstrators for additional individual feedback on their assignments.