School of Computer Science

Module 06-30203 (2019)

Systems Programming in C/C++

Level 2/I

Sujoy Sinha Roy Mohammed Bahja Semester 1 20 credits
Co-ordinator: Mohammed Bahja
Reviewer: Sujoy Sinha Roy

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:

  1. Demonstrate understanding of computer architecture
  2. Program in C/C++
  3. Use pointers and memory management in C/C++
  4. Write code that interacts with the OS kernel

Pre-requisites


Teaching methods

Provided via lectures and guided independent study.

Contact hours: Total:200 hours, Lectures: 33 hours, Guided independent study: 167 hours.


Assessment

Assessments: 2hr Examination (80%), Continuous Assessment (20%) Reassessment: 2hr Examination (100%)


Programmes containing this module