Toggle Menu

<-- Back to schedule

Tutorial: The eChronos Real-Time Operating System - Just what you want, when you want it

Project: eChronos
Wiki Page: Tutorial: The eChronos Real-Time Operating System - Just what you want, when you want it

Learn eChronos, a newly open-sourced Real Time operating system for MMU-less systems and the Internet of Things!

In this tutorial you will learn:
-- What eChronos is for and good at
-- How to build a system using eChronos
-- How to run that system for testing on QEMU
-- How to deploy the system onto real hardware

Participants are expected to understand basic OS concepts and have basic familiarity with the Linux command line.

Sometimes you want to run some very time-critical code on a device that doesn't have a lot of memory. This device might be so tiny that it mightn't even support memory protection - but you don't care, because you wouldn't run any code on this device anyway that you didn't fully trust. The code you do run, however, has to run on time and like clockwork, because that code drives a medical device or a ground or air vehicle, and lives are depending on it.

Perhaps you may have felt that this code of yours would be best expressed as a set of tasks that each have a clearly defined role, and you may be looking for an operating system that offers you just the means of specifying when those tasks need to happen, how long they get to run for, and how they should synchronize with each other when they need to coordinate their access to something. At the same time, you might need this code to compile to a binary that occupies no more memory than it strictly has to, because the power consumption or physical size of your device is a significant limiting factor in its deployment.

The eChronos Real-Time Operating System offers you a way to configure and build a statically resourced system of tasks, running code that you've written, to a schedule of your choosing. In this tutorial, we will teach you how to write, specify, and build systems that run on eChronos, and run them on the QEMU system emulator for ARMv7-M or PowerPC e500. We will also open the hood on the way the eChronos code base (available under the AGPLv3 license, on GitHub) is structured and maintained (with a view towards ease of certification), so that you can plan how you might port the eChronos RTOS to your own choice of hardware.

Stefan Götz

Stefan has been hacking OS kernels for much of his life at a keyboard. His main victims include the L4 micro-kernel family and, more recently, the eChronos real-time OS, while Linux got away with minor bruises.

Apart from OS work, he today designs and implements firmware solutions for embedded medical devices with Breakaway Consulting in Sydney. Before arriving on Australian shores, his focus was on OS, virtualization, and network research at Uni Karlsruhe, Intel, and RWTH Aachen.

Stefan shreds not only keyboards, but also guitars, D20's, Brisbane single trails, and powder slopes.


Geelong 2016

Our Emperor Penguin Sponsors

Geelong

About Geelong

Geelong is Victoria's second largest city, located on Corio Bay, and within a short drive from popular beach-front communities on the Bellarine Peninsula as well as being the gateway to the famous Great Ocean Road

More Info »

linux.conf.au

linux.conf.au

linux.conf.au is widely regarded by delegates as one of the best community run Linux conferences worldwide and is the largest Linux and Open Source Software conference in the Asia-Pacific.

Read More »

Sponsorship

Sponsorship

Our Sponsors help make linux.conf.au become the awesome conference everyone comes back to year after year. Come see who's on board this year, or find out how to get in contact with us

Sponsorship »