CAB403 Systems Programming
To view more information for this unit, select Unit Outline from the list below. Please note the teaching period for which the Unit Outline is relevant.
| Unit code: | CAB403 |
|---|---|
| Prerequisite(s): | ((CAB201 or ITD121) and CAB222) or CAB202 or EGB202 |
| Credit points: | 12 |
| Timetable | Details in HiQ, if available |
| Availabilities |
|
| CSP student contribution | $1,192 |
| Domestic tuition unit fee | $4,704 |
| International unit fee | $5,640 |
Unit Outline: Semester 2 2026, Gardens Point, Internal
| Unit code: | CAB403 |
|---|---|
| Credit points: | 12 |
| Pre-requisite: | ((CAB201 or ITD121) and CAB222) or CAB202 or EGB202 |
| Coordinator: | Timothy Chappell | timothy.chappell@qut.edu.au |
Overview
Most of our other Computer Science units focus on high-level applications programming. Applications programmers are insulated from the low- level intricacies of the underlying hardware by making use of services provided by the operating system such as threads, virtual memory, file systems and device drivers. This unit focuses on Systems Programming, where the programmer can’t necessarily rely on high level services provided by the operating system and must interact directly with the underlying hardware. Systems software is either part of the operating system or software that operates at a similar level. This unit aims to give you practical programming skills for developing systems level applications and services.
Learning Outcomes
On successful completion of this unit you will be able to:
- Break down the architecture and components of modern operating systems.
- Articulate industry standards and critically apply best practice for developing safety-critical systems.
- Independently research the potential societal and safety impact of systems programming failures in given scenarios.
- Construct low-level systems programs to carry out authentic systems programming tasks.
Content
In this unit you will learn:
- Operating System Concepts and Architecture
- Practical systems level programming using C
- Industry-relevant safety critical programming standards, such as MISRA C
Learning Approaches
This unit includes theory reinforced by practical, artefact-driven projects. Weekly contact is via a lecture and a practical session. You can expect to spend typically between 10 - 15 hours per semester studying the unit, including scheduled classes, independent study and completing assessment tasks. The Canvas site contains slides for lectures. However, although the slides contain the content of the unit they are insufficient on their own. You are expected to attend lectures or watch the recorded sessions and take notes on anything the lecturer says which is not included in the slides. More detail can be found in the textbook and online materials. In lectures, where appropriate, examples will be worked out and code explained. The practicals contain exercises relevant to the lectures. You should study the lecture material, work through the exercises and check the answers against the solutions, to verify your understanding of the material. To clarify anything, check with any demonstrator or lecturer associated with this unit either by email or during their normal consulting times. This learning process requires your weekly commitment. The theory portion of the unit is assessed through the final exam, while the assignments involve systems programming tasks. The practical sessions reinforce the code and theory presented in the lecture. Lab classes for these programming tasks are conducted by demonstrators who will facilitate this vital practical experience. You may use the practical class to ask questions about your assignments. In this unit you will undertake a real-world assessment task that has been co-designed with an industry partner. The Industry Partner will brief you on the project, clarify questions about the requirements and provide whole-of-class feedback on the solutions.
Feedback on Learning and Assessment
You will receive feedback on completed and marked assignments via individual comments on assignment scripts. Whole-of-class feedback will be provided by the industry partner on the applied project.
The unit coordinator will be available via email or in person (by appointment) to answer questions.
For the Final Exam you are referred to the Faculty's formal Rules, Policy and Procedures.
Assessment
Overview
This unit comprises theory and practice, and assessment is via problem solving tasks and an exam. Assessment criteria will be made available at the introduction of the problem solving tasks.
Unit Grading Scheme
7- point scale
Assessment Tasks
Assessment: Problem Solving Task
A small software development task to evaluate your understanding and application of systems programming concept and operating system structures learned in weeks 1-4.
This assignment is eligible for the 48-hour late submission period and assignment extensions.
Assessment: Project (applied)
Use the C programming language to complete a real-world systems programming task. The task has been co-designed with an industry partner. The Industry Partner will brief you on the project, clarify questions about the requirements and provide whole-of-class feedback on the solutions.
This assignment is eligible for the 48-hour late submission period and assignment extensions.
Assessment: Final Exam
Final examination (theory), based on all lectures and practicals. Written theory paper evaluating students' understanding of operating systems architecture, systems programming concepts and safety-critical software development. Students will be assessed on both theoretical and practical topics.
Academic Integrity
Academic integrity is a commitment to undertaking academic work and assessment in a manner that is ethical, fair, honest, respectful and accountable.
The Academic Integrity Policy sets out the range of conduct that can be a failure to maintain the standards of academic integrity. This includes, cheating in exams, plagiarism, self-plagiarism, collusion and contract cheating. It also includes providing fraudulent or altered documentation in support of an academic concession application, for example an assignment extension or a deferred exam.
You are encouraged to make use of QUT’s learning support services, resources and tools to assure the academic integrity of your assessment. This includes the use of text matching software that may be available to assist with self-assessing your academic integrity as part of the assessment submission process.
Breaching QUT’s Academic Integrity Policy or engaging in conduct that may defeat or compromise the purpose of assessment can lead to a finding of student misconduct (Code of Conduct – Student) and result in the imposition of penalties under the Management of Student Misconduct Policy, ranging from a grade reduction to exclusion from QUT.
Resources
A variety of online and textbook materials will be helpful for this unit.
Other resources will be advised via Canvas as appropriate.
Resource Materials
Recommended text(s)
Silberschatz, Abraham; Baer Galvin, Peter; and Gagne, Greg, (2018). Operating System Concepts, 10th Edition. Hoboken, N.J Wiley.
Risk Assessment Statement
There are no out of the ordinary risks associated with this unit.
Standards/Competencies
This unit is designed to support your development of the following standards\competencies.
Australian Computer Society Core Body of Knowledge
1: ICT Professional Knowledge
3: Technology Resources
4: Technology Building
- Programming
Relates to: ULO4
Engineers Australia Stage 1 Competency Standard for Professional Engineer
1: Knowledge and Skill Base
Relates to: Final Exam
Relates to: Final Exam
Relates to: Problem Solving Task, Project (applied)
Relates to: Project (applied)
2: Engineering Application Ability
Relates to: Problem Solving Task, Project (applied)
Relates to: Problem Solving Task
Relates to: Project (applied), Final Exam
Course Learning Outcomes
This unit is designed to support your development of the following course/study area learning outcomes.EN01 Bachelor of Engineering (Honours)
- Make decisions ethically within the social, cultural, and organisational contexts of professional engineering practice.
Relates to: ULO3, Final Exam - Deploy appropriate approaches to engineering design and quality.
Relates to: ULO4, Problem Solving Task, Project (applied) - Engage with and apply regulatory requirements relating to safety, risk management, and sustainability in professional engineering practice.
Relates to: ULO2, Project (applied), Final Exam - Demonstrate a thorough understanding of one engineering discipline, its research directions, and its application in contemporary professional engineering practice.
Relates to: ULO1, Final Exam
EV01 Bachelor of Engineering (Honours)
- Make decisions ethically within the social, cultural, and organisational contexts of professional engineering practice.
Relates to: Final Exam - Deploy appropriate approaches to engineering design and quality.
Relates to: Problem Solving Task, Project (applied) - Engage with and apply regulatory requirements relating to safety, risk management, and sustainability in professional engineering practice.
Relates to: Project (applied), Final Exam - Demonstrate a thorough understanding of one engineering discipline, its research directions, and its application in contemporary professional engineering practice.
Relates to: Final Exam
IN01 Bachelor of Information Technology
- Demonstrate a broad theoretical and technical knowledge of well-established and emerging IT disciplines, with in-depth knowledge in at least one specialist area aligned to multiple ICT professional roles.
Relates to: ULO1, ULO2, Project (applied), Final Exam - Critically analyse and conceptualise complex IT challenges and opportunities using modelling, abstraction, ideation and problem-solving to generate, evaluate and justify recommended solutions.
Relates to: ULO1, ULO2, ULO4, Final Exam - Integrate and apply technical knowledge and skills to analyse, design, build, operate and maintain sustainable, secure IT systems using industry-standard tools, technologies, platforms, and processes.
Relates to: ULO2, Project (applied) - Demonstrate initiative, autonomy and personal responsibility for continuous learning, working both independently and collaboratively within multi-disciplinary teams, employing state-of-the-art IT project management methodologies to plan and manage time, resources, and risk.
Relates to: ULO2, ULO3, Problem Solving Task, Project (applied) - Communicate professionally and effectively in written, verbal and visual formats to a diverse range of stakeholders, considering the audience and explaining complex ideas in a simple and understandable manner in a range of IT-related contexts.
Relates to: ULO2, Project (applied) - Critically reflect, using a human-centric approach, on the social, cultural, ethical, privacy, legal, sustainability, and accessibility issues shaping the development and use of IT, including respecting the perspectives and knowledge systems of Aboriginal and Torres Strait Islander peoples, ensuring IT solutions empower and support people with disabilities, and fostering inclusive and equitable digital technologies that serve diverse communities.
Relates to: ULO3, Project (applied)
Unit Outline: Semester 2 2026, Online
| Unit code: | CAB403 |
|---|---|
| Credit points: | 12 |
| Pre-requisite: | ((CAB201 or ITD121) and CAB222) or CAB202 or EGB202 |
Overview
Most of our other Computer Science units focus on high-level applications programming. Applications programmers are insulated from the low- level intricacies of the underlying hardware by making use of services provided by the operating system such as threads, virtual memory, file systems and device drivers. This unit focuses on Systems Programming, where the programmer can’t necessarily rely on high level services provided by the operating system and must interact directly with the underlying hardware. Systems software is either part of the operating system or software that operates at a similar level. This unit aims to give you practical programming skills for developing systems level applications and services.
Learning Outcomes
On successful completion of this unit you will be able to:
- Break down the architecture and components of modern operating systems.
- Articulate industry standards and critically apply best practice for developing safety-critical systems.
- Independently research the potential societal and safety impact of systems programming failures in given scenarios.
- Construct low-level systems programs to carry out authentic systems programming tasks.
Content
In this unit you will learn:
- Operating System Concepts and Architecture
- Practical systems level programming using C
- Industry-relevant safety critical programming standards, such as MISRA C
Learning Approaches
This unit includes theory reinforced by practical, artefact-driven projects. Weekly contact is via a lecture and a practical session. You can expect to spend typically between 10 - 15 hours per semester studying the unit, including scheduled classes, independent study and completing assessment tasks. The Canvas site contains slides for lectures. However, although the slides contain the content of the unit they are insufficient on their own. You are expected to attend lectures or watch the recorded sessions and take notes on anything the lecturer says which is not included in the slides. More detail can be found in the textbook and online materials. In lectures, where appropriate, examples will be worked out and code explained. The practicals contain exercises relevant to the lectures. You should study the lecture material, work through the exercises and check the answers against the solutions, to verify your understanding of the material. To clarify anything, check with any demonstrator or lecturer associated with this unit either by email or during their normal consulting times. This learning process requires your weekly commitment. The theory portion of the unit is assessed through the final exam, while the assignments involve systems programming tasks. The practical sessions reinforce the code and theory presented in the lecture. Lab classes for these programming tasks are conducted by demonstrators who will facilitate this vital practical experience. You may use the practical class to ask questions about your assignments. In this unit you will undertake a real-world assessment task that has been co-designed with an industry partner. The Industry Partner will brief you on the project, clarify questions about the requirements and provide whole-of-class feedback on the solutions.
Feedback on Learning and Assessment
You will receive feedback on completed and marked assignments via individual comments on assignment scripts. Whole-of-class feedback will be provided by the industry partner on the applied project.
The unit coordinator will be available via email or in person (by appointment) to answer questions.
For the Final Exam you are referred to the Faculty's formal Rules, Policy and Procedures.
Assessment
Overview
This unit comprises theory and practice, and assessment is via problem solving tasks and an exam. Assessment criteria will be made available at the introduction of the problem solving tasks.
Unit Grading Scheme
7- point scale
Assessment Tasks
Assessment: Problem Solving Task
A small software development task to evaluate your understanding and application of systems programming concept and operating system structures learned in weeks 1-4.
This assignment is eligible for the 48-hour late submission period and assignment extensions.
Assessment: Project (applied)
Use the C programming language to complete a real-world systems programming task. The task has been co-designed with an industry partner. The Industry Partner will brief you on the project, clarify questions about the requirements and provide whole-of-class feedback on the solutions.
This assignment is eligible for the 48-hour late submission period and assignment extensions.
Assessment: Final Exam
Final examination (theory), based on all lectures and practicals. Written theory paper evaluating students' understanding of operating systems architecture, systems programming concepts and safety-critical software development. Students will be assessed on both theoretical and practical topics.
Academic Integrity
Academic integrity is a commitment to undertaking academic work and assessment in a manner that is ethical, fair, honest, respectful and accountable.
The Academic Integrity Policy sets out the range of conduct that can be a failure to maintain the standards of academic integrity. This includes, cheating in exams, plagiarism, self-plagiarism, collusion and contract cheating. It also includes providing fraudulent or altered documentation in support of an academic concession application, for example an assignment extension or a deferred exam.
You are encouraged to make use of QUT’s learning support services, resources and tools to assure the academic integrity of your assessment. This includes the use of text matching software that may be available to assist with self-assessing your academic integrity as part of the assessment submission process.
Breaching QUT’s Academic Integrity Policy or engaging in conduct that may defeat or compromise the purpose of assessment can lead to a finding of student misconduct (Code of Conduct – Student) and result in the imposition of penalties under the Management of Student Misconduct Policy, ranging from a grade reduction to exclusion from QUT.
Resources
A variety of online and textbook materials will be helpful for this unit.
Other resources will be advised via Canvas as appropriate.
Resource Materials
Recommended text(s)
Silberschatz, Abraham; Baer Galvin, Peter; and Gagne, Greg, (2018). Operating System Concepts, 10th Edition. Hoboken, N.J Wiley.
Risk Assessment Statement
There are no out of the ordinary risks associated with this unit.
Standards/Competencies
This unit is designed to support your development of the following standards\competencies.
Australian Computer Society Core Body of Knowledge
1: ICT Professional Knowledge
3: Technology Resources
4: Technology Building
- Programming
Relates to: ULO4
Engineers Australia Stage 1 Competency Standard for Professional Engineer
1: Knowledge and Skill Base
Relates to: Final Exam
Relates to: Final Exam
Relates to: Problem Solving Task, Project (applied)
Relates to: Project (applied)
2: Engineering Application Ability
Relates to: Problem Solving Task, Project (applied)
Relates to: Problem Solving Task
Relates to: Project (applied), Final Exam
Course Learning Outcomes
This unit is designed to support your development of the following course/study area learning outcomes.EN01 Bachelor of Engineering (Honours)
- Make decisions ethically within the social, cultural, and organisational contexts of professional engineering practice.
Relates to: ULO3, Final Exam - Deploy appropriate approaches to engineering design and quality.
Relates to: ULO4, Problem Solving Task, Project (applied) - Engage with and apply regulatory requirements relating to safety, risk management, and sustainability in professional engineering practice.
Relates to: ULO2, Project (applied), Final Exam - Demonstrate a thorough understanding of one engineering discipline, its research directions, and its application in contemporary professional engineering practice.
Relates to: ULO1, Final Exam
EV01 Bachelor of Engineering (Honours)
- Make decisions ethically within the social, cultural, and organisational contexts of professional engineering practice.
Relates to: Final Exam - Deploy appropriate approaches to engineering design and quality.
Relates to: Problem Solving Task, Project (applied) - Engage with and apply regulatory requirements relating to safety, risk management, and sustainability in professional engineering practice.
Relates to: Project (applied), Final Exam - Demonstrate a thorough understanding of one engineering discipline, its research directions, and its application in contemporary professional engineering practice.
Relates to: Final Exam
IN01 Bachelor of Information Technology
- Demonstrate a broad theoretical and technical knowledge of well-established and emerging IT disciplines, with in-depth knowledge in at least one specialist area aligned to multiple ICT professional roles.
Relates to: ULO1, ULO2, Project (applied), Final Exam - Critically analyse and conceptualise complex IT challenges and opportunities using modelling, abstraction, ideation and problem-solving to generate, evaluate and justify recommended solutions.
Relates to: ULO1, ULO2, ULO4, Final Exam - Integrate and apply technical knowledge and skills to analyse, design, build, operate and maintain sustainable, secure IT systems using industry-standard tools, technologies, platforms, and processes.
Relates to: ULO2, Project (applied) - Demonstrate initiative, autonomy and personal responsibility for continuous learning, working both independently and collaboratively within multi-disciplinary teams, employing state-of-the-art IT project management methodologies to plan and manage time, resources, and risk.
Relates to: ULO2, ULO3, Problem Solving Task, Project (applied) - Communicate professionally and effectively in written, verbal and visual formats to a diverse range of stakeholders, considering the audience and explaining complex ideas in a simple and understandable manner in a range of IT-related contexts.
Relates to: ULO2, Project (applied) - Critically reflect, using a human-centric approach, on the social, cultural, ethical, privacy, legal, sustainability, and accessibility issues shaping the development and use of IT, including respecting the perspectives and knowledge systems of Aboriginal and Torres Strait Islander peoples, ensuring IT solutions empower and support people with disabilities, and fostering inclusive and equitable digital technologies that serve diverse communities.
Relates to: ULO3, Project (applied)