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: OK Labs releases L4 with capability-based protection! More...
|
 |
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.