Just wondering ...
" ... an Android virtual machine could run the entertainment system while a Linux VM takes care of niceties like keepingt the car on the road."
And a Windows VM could ... ?
The Xen Project has launched an “Embedded and Automotive Initiative” to take its virtualisation project under the hood. The idea seems to be that virtualisation will make life easier for those packing computing power into cars. Today, developers and auto-makers alike bemoan the fact that cars often require different systems …
Xen's efforts aim to ease these situations by delivering a regime in which a single system-on-a-chip could run several operating systems. Each OS would take care of a different task: an Android virtual machine could run the entertainment system while a Linux VM takes care of niceties like keepingt the car on the road.
There's a name for this: "Single Point of Failure"!
But IMO virtualisation is a way of dividing up a "Fat" processing system (high-cost for one reason or another), usually when there are a lot of poorly written and low-utilisation systems that are tied to it.
i.e. the typical scenario of legacy software that no-one want to touch..
There is of course the positive side of virtualisation, that it facilitates hardware redendancy.
Even in embedded systems are going multi-core and the problem is often the same: how to get full value from all the cores. The vendors at least are punting hybrid solutions where Linux runs on some cores, and an RTOS on others.
IMO the opportunity for virtualisation in the automotive scenario is probably more one of protecting the reat-time part of the system from the rest of it, and especially in divvying up I/O resouces between Linux cores and RTOS cores.
There are some definite benefits in the approach. The biggest win is the combination on non-realtime systems with realtime components (well soft realtime anyway, hard realtime is a step to far as yet) such as combining windows and it's graphics capability with a control system in one box. By using hypervisors there is a reduction hardware costs while overcoming windows piss poor real time performance. Another advantage is segmentation, so you can incorporate a hardened OS to run your secure system with your less than secure industrial control system.
The important thing has been the increased support of VM(Actually they are called Hypervisors) within the processors themselves, especially Intel.