Overview

This unit of study aims to teach how to program concurrent real-time systems.

Teaching Periods
Location
Start and end dates
Last self-enrolment date
Census date
Last withdraw without fail date
Results released date
Semester 2
Location
Hawthorn
Start and end dates
29-July-2024
27-October-2024
Last self-enrolment date
11-August-2024
Census date
31-August-2024
Last withdraw without fail date
13-September-2024
Results released date
03-December-2024

Learning outcomes

Students who successfully complete this unit will be able to:

  • Describe the behaviour of concurrent processes including the major states and the characteristics of real-time systems (K2, K3)
  • Describe the implementation of real-time systems on single processor systems, including interrupts, real-time clock, pre-emption and time-slicing (K2, K3)
  • Determine sample actual response times and predict worst-case response times using relevant graphical representations and formulae (K2, K3)
  • Design hard real-time software using a suitable design methodology (K2, K3, S2)
  • Analyse a specification of a complex hardware system requiring real-time control and identify required functionality and parameters (A4, K1, K2, K3, S1, S2, S3)
  • Construct control software for a complex real-time system in a suitable high-level language (K2, K3, S1, S2)
  • Describe in detail the features of a high-level language for programming real-time systems (A2)

Teaching methods

Hawthorn

Type Hours per week Number of weeks Total (number of hours)
On-campus
Lecture
2.00 12 weeks 24
On-campus
Class
1.00 12 weeks 12
Unspecified Activities
Independent Learning
9.50 12 weeks 114
TOTAL150

Assessment

Type Task Weighting ULO's
AssignmentIndividual 40% 1,2,3,4,5,6,7 
ExaminationIndividual 40% 1,2,3,4,5,6,7 
Mid-Semester TestIndividual 20% 1,2,3,4,5,6,7 

Content

  • Introduction 
    • Conventional Software vs. Real-time Software
    • Real-time Programming Models
  • Concurrency
    • Processes and States
    • Process Modelling
    • Concurrent Execution
    • Shared Objects, Mutual Exclusion, and Monitors
    • Timed Systems
  • Cyclic Executive
  • Asymptotic Running Time Analysis
    • O(n), Θ(n), ω(n), o(n)
    • Master Theorem
  • Scheduling
  • Automata
    • Safety and Liveness
    • Kripke Structures
  • Temporal Logic
    • LTL
    • CTL
    • MTL
    • Property Specification Pattern

Study resources

Reading materials

A list of reading materials and/or required textbooks will be available in the Unit Outline on Canvas.