Operating Systems and Tool Chains

Undergraduate | 2026

Course page banner
area/catalogue icon
Area/Catalogue
COGR 2008
Course ID icon
Course ID
205699
Level of study
Level of study
Undergraduate
Unit value icon
Unit value
6
Course level icon
Course level
2
Study abroad and student exchange icon
Inbound study abroad and exchange
Inbound study abroad and exchange
The fee you pay will depend on the number and type of courses you study.
No
University-wide elective icon
University-wide elective course
No
Single course enrollment
Single course enrolment
No
alt
Note:
Course data is interim and subject to change

Course overview

In this course, students will understand the theory and practice of operating systems and tool chains for software development. Computer hardware overview and system architecture; Operating system fundamentals; Process management and scheduling algorithms; Filesystems and system backup; Memory management; Software version control and build automation; DevOps; Software testing and bug tracking; Software debugging and remote development.

Course learning outcomes

  • Discuss the design of modern processor architectures, and the use of assembly language and compilers
  • Describe and compare the basic services of and implementation of various popular operating systems
  • Explain the internal implementation of modern kernels and operating systems software
  • Describe CPU scheduling algorithms, file systems, virtual memory, and inter-process communication
  • Use tools to support software development lifecycle

Prerequisite(s)

N/A

Corequisite(s)

N/A

Antirequisite(s)

N/A