Using an RTOS in Reliable Embedded Systems

Module code: EG7550

Module co-ordinator: Dr Luciano Ost

Emerging embedded systems perform complex application workloads (i.e. billions of object code instructions), which are divided among multiple threads/tasks, aiming to scale effectively up system performance. To manage such software complexity the use of a real time operating system (RTOS) is compulsory.

In this module you will explore ways in which we can enable the use of commercial off-the shelf (COTS) RTOS and processors, while maintaining high system reliability through a monitoring infrastructure. You will explore how COTS RTOS can be used in a reliable embedded system and learn about the considerations necessary when using software of unknown provenance. You will learn how to maximise the reliability of an RTOS-based design, and how to evaluate and criticise the applicability of RTOS-based solutions for reliability purposes.

Topics covered

  • Basic concepts of RTOS
  • Types of RTOS used in embedded systems
  • RTOS inter-task communication, runtime error handling and memory management
  • Scheduling priority and policies
  • Complexity and types of monitoring systems


  • 12 one-hour lectures
  • 25 one-hour practicals


  • Lab exercises (40%)
  • Case study (60%)