School of Computer Science

Module 06-30203 (2020)

Systems Programming in C/C++

Level 2/I

Ahmad Ibrahim Mohammed Bahja Semester 1 20 credits
Co-ordinator: Mohammed Bahja
Reviewer: Ahmad Ibrahim

The Module Description is a strict subset of this Syllabus Page.

Outline

The C programming language is widely used for writing programs that closely interact with hardware, most importantly operating systems (e.g. Unix, Linux, MacOS). C++ extends C with some modern features that are useful for structuring very large programs. C and C++ are widely used in industry, for example in game engines. This module introduces students to the challenges of systems-level programming, such as memory safety.


Learning Outcomes

On successful completion of this module, the student should be able to:

  • Demonstrate understanding of computer architecture
  • Program in C/C++
  • Use pointers and memory management in C/C++
  • Write code that interacts with the OS kernel

Pre-requisites

  • 06-30175 - Data Structures & Algorithms

Assessment

  • Main Assessments: 1.5 hour examination (50%) and continuous assessment (50%)
  • Supplementary Assessments: 1.5 hour examination (50%) and continuous assessment (50%) over the Summer Period

Programmes containing this module