Advanced Software Development (Semester 1, 2012)
Welcome to Advanced Software Development
Ever wanted to know how systems work on the inside?
Did you ever want to find out how Operating Systems manage applications,
communcation, memory, disks, and other devices and hardware components?
If your answer is
yes to any of these questions, then this is
the right course for you. We cover a selection of advanced systems
programming topics such as:
- process synchronisation and inter-process communication,
- memory management,
- file system interaction, and
- system calls.
For this course, it is assumed that you have a fair knowledge of the C, C++, or Objective-C programming languages, as well as knowledge about memory addresses, pointers, and memory management. It is also assumed that you know how to use the command line and makefiles to compile programs as well as the Subversion revision control system. The following slides help you (re)familiarise yourself with these topics: