CITS2002 Systems Programming |
next → | CITS2002 | CITS2002 schedule | ||||
Welcome to CITS2002 Systems ProgrammingThe unit explores the role of contemporary operating systems and their support for high-level programming languages, how they manage efficient access to computer hardware, and how a computer's resources may be accessed and controlled by the C programming language. The unit will be presented by Dr Chris McDonald.Our UWA Handbook entry
Understanding the relationship between a programming language and the
contemporary operating systems on which it executes is central to developing
many skills in Computer Science. This unit introduces the standard C
programming language, on which many other programming languages and systems
are based, through a study of core operating system services including
processes, input and output, memory management, and file systems.
The C language is introduced
through discussions on basic topics like data types, variables, expressions,
control structures, scoping rules, functions and parameter passing. More
advanced topics like C's run-time environment, system calls, dynamic memory
allocation, and pointers are presented in the context of operating
system services related to process execution, memory management and file
systems. The importance of process scheduling, memory management and
interprocess communication in modern operating systems is discussed in the
context of operating system support for multiprogramming. Laboratory and
tutorial work place a strong focus on the practical application of
fundamental programming concepts, with examples designed to compare and
contrast many key features of contemporary operating systems.
Prerequisite: CITS1401 Computational Thinking with Python, or CITS2401 Computer Analysis and Visualisation (this unit is not suitable for first-time programmers).
CITS2002 Systems Programming, Lecture 1, p1, 22nd July 2024.
|