Find out how ICT can support biomedical and clinical researchFind out more. Managing complexity by developing new tools and processes. Managing Complexity

Embedded Real-Time Operating Systems (ERTOS)

The ERTOS team focuses on reducing the cost and improving the reliability and trustworthiness of embedded systems software. We use microkernel technology to enable the application of software-engineering techniques and formal methods to the development of embedded software.

News:  ERTOS releases CAmkES framework as open source.   More...
ERTOS_Header_Image

 

Summary

The Embedded Real-Time Operating-Systems (ERTOS) Group located at the Neville Roach Lab in Kensington is part of NICTA's Embedded Systems research theme. ERTOS provides the operating-system (OS) platform for NICTA's embedded-systems activities. The group's research focus is on OS technology that can drastically improve the safety, security and reliability of complex embedded systems.

Introduction

Embedded systems are computer systems that form part of a larger system whose primary purpose is not computation. These systems are ubiquitous and diverse, and include mobile phones, entertainment devices, automobiles, toys, smart cards, medical devices, network switching equipment, sensors, and industrial robots. Many embedded systems are real-time systems and have to react to external events within a defined period of time. Other constraints such as size, energy supply and unit price often severely limit the design space, affecting costs and reliability. This has resulted in an emerging trend to integrate previously isolated systems. As embedded systems are increasingly networked and expected to execute downloaded code, they have become subject to attacks by hackers or viruses. This means that they now face many of the resource management and security issues associated with traditional computing systems, and makes operating-system technology increasingly relevant in the embedded domain.

Reliable and Trustworthy Embedded Software

Because embedded systems are increasingly employed in circumstances where a malfunction could put lives at risk, one of the core concerns is safety and reliability. The long-term goal of ERTOS is to develop reliable embedded systems that can be mathematically proven (using formal methods) to satisfy relevant safety criteria. This is a daunting task for software systems that can consist of millions of lines of code, including low-level systems code that directly interfaces, or even configures, hardware.

The ERTOS approach is based on breaking down the whole system into components small enough to make them tractable for formal methods. A combination of operating systems and language techniques will then be used to ensure that system components, as well as foreign code, interact with the rest of the system only via well-defined interfaces. Due to the complexity of the hardware-software interface, and the challenge this represents for verification, the part of the system that operates in privileged mode must be reduced to the absolute minimum. This implies the use of a microkernel as the lowest software layer.

Other Research Issues

The basic approach of using small and strongly encapsulated components, running on top of a microkernel, benefits embedded software development in other ways. It supports good software engineering techniques and thus helps to reduce software life-cycle costs. It provides hardware abstraction, which enables portability and hardware independence. It is essential to providing security, via traditional operating system techniques, as well as language and compiler techniques. A small, well-structured system is also easier to analyse for its ability to meet real-time and energy requirements.

ERTOS research is therefore exploring a number of related issues, including techniques and tools for structuring and componentizing large systems without undue performance impact, kernel-level and system-level real-time analysis and power-management techniques, virtual machines for supporting legacy environments, and issues specific to distributed embedded systems.

More details about our research projects can be found on our research pages.

Practical Use

ERTOS research has a strong focus on real-life use. ERTOS microkernel technology is successfully commercialised by our spinout company Open Kernel Labs, and is already deployed in tens of millions of end-user devices. Agreements in place between NICTA and OK Labs ensure on-going transfer of ERTOS-generated intellectual property to the company for commercialisation.

See the collaboration and commercialisation pages for more information.

Education

ERTOS has a strong and strategic education agenda. We contribute to classroom teaching at undergraduate and postgraduate level at the University of New South Wales, host student interns from UNSW and universities around the world, and supervise honours and research students.

See the education pages for more information.