News from Embedded Systems Conference 2009, in San Jose: "Accomplished for the first time in a commercially available phone, Chicago-based Open Kernel Labs's mobile virtualisation solution enabled Linux and an RTOS to run side by side on a single ARM processor."
The firm produces the 'virtualisation' software: code which controls access to hardware resources, allowing both the RTOS and Linux to run separately as though there were the only operating system on the processor. Such software is also known as a hypervisor.
Read the full article: OKL hypervisor runs Linux and RTOS on Motorola's QA4
The firm produces the 'virtualisation' software: code which controls access to hardware resources, allowing both the RTOS and Linux to run separately as though there were the only operating system on the processor. Such software is also known as a hypervisor.
Read the full article: OKL hypervisor runs Linux and RTOS on Motorola's QA4


It seems odd to me that one would take a real time operating system and run it on a hypervisor. Yes, an interesting academic exercise - but doesn't this throw out everything that RTOS delivers in terms of RT (real time)? In this configuration, how does one balance the priorities of threads, tasks, or processes across the multiple operating systems? How does one ensure realtime responses? How does one prevent deadlocks and resolve contention between resources that are shared between OSes run in the hypervisor?
VxWorks and other embedded RTOSes have a rich set of facilities to support achieving the real time compute requirements of an embedded system. The use of a hypervisor in a real time system negates all that capability and forces us to solve these problems all over again in a new environment.