I want an iPhoneStormDroid
Summary: Wind River's Multicore Software Hypervisor solution permits multiple embedded OSes to run on a single device. Wouldn't it be great if you didn't have to actually choose between an iPhone, a BlackBerry, or a Google Android?
Wind River's Multicore Software Hypervisor solution permits multiple embedded OSes to run on a single device.
Wouldn't it be great if you didn't have to actually choose between an iPhone, a BlackBerry, or a Google Android? What if all those device operating systems could run simultaneously on your handheld? Embedded systems software vendor Wind River is trying to make that happen.
Click on the "Read the rest of this entry" link below for more.
Currently, embedded systems design often requires building specialized versions of OSes for specific devices -- unlike PC or Mid-range computer systems, you can't just pre-load a generic Windows, Linux or Mac OS, you have to specially tailor the environment to your target device, which could run on a multitude of different embedded chip architectures and use a wide variety of device drivers for system components, such as flash memory chips, network interfaces, display types, et cetera -- not to mention run a myriad of different embedded OSes that have to be customized to the device, such as iPhone OS, BlackBerry OS, embedded Linux, Windows CE, vxWorks and Symbian. Just to name a few.
What Wind River is proposing is a radical departure from the way things are currently done -- to virtualize the embedded OS using a Hypervisor -- not unlike how VMWare's ESX, Citrix's Xen, Microsoft's Hyper-V , Red Hat's KVM and IBM's z/VM are used on enterprise server systems today.
Virtualization is becoming the de-facto cost reduction tool for enterprise server consolidations, but the idea of running Virtual OSes on a device is simply mind boggling, as it challenges today's model of vendor device differentiation and would greatly simplify software development in embedded environments.
There are a number of obvious benefits to doing things this way. For starters, it would allow embedded device OSes to be "imaged" using a standardized build process (such as say, AT&Ts implementation of Blackberry's OS versus Verizon's) which could simply be flash copied to the target device, all of which could have entirely different hardware, such as different screen sizes, different network controllers, different input devices, et cetera. From the perspective of the OS, it wouldn't care and would have no idea if it was running on a Blackberry Storm device versus an iPhone or a HTC G1 -- things would "Just work".
Instead of having the OS talk directly to the hardware, the hypervisor isolates the embedded OS and does all the low-level dirtywork -- all the programming would be done via high-level API calls instead. If the CE industry approached devices the same way the IT industry deals with enterprise servers, the turn around time to release new devices and OS updates on handhelds and other consumer electronics would be minimal compared to what it is today. Got a set top DVR box but want to run TiVo's OS instead of DirecTVs? With embedded hypervisors, it will be a snap to provision and switch.
Initially, virtualized embedded OSes might run one instance on one device. But embedded processors are getting more and more powerful every year, and soon we may approach a paradigm for devices that is not too dissimilar from what we have on PCs and servers, where devices have multiple cores and could run multiple OS instances virtualized, as depicted in the illustration above.
So imagine in five years or less what a typical consumer purchasing a mobile device might do. Instead of buying an "iPhone" or a "BlackBerry" or an "Android", you choose a generic device for raw hardware feature set you want -- the screen size, the keyboard, the memory, the mulitmedia capability -- and have the provider image the device with the OS you want to run, or even say, iPhone and BlackBerry at the same time, as long as the hardware can handle it. Or even create theoretical best of breed devices that use modules from several different embedded OSes at once, where Linux/Android may act as your firewall, but Blackberry is your GUI. Corporate customers could create their own special builds with their own applications, and the provider could simply image the device with the required software.
While we might not see something like this happen to consumer devices for a while, Wind River is already working with device manufacturers in other industries -- such as their newly announced partnership with HUGHES Telematics in the automotive industry -- to install general purpose computing devices for cars which run several virtualized embedded OSes simultaneously, instead of having several specialized devices do the same job. The end result for these vertical market applications is simplification of systems development and cost reduction.
What would your dream virtualized consumer or vertical market device be? Talk Back and Let Me Know.
Kick off your day with ZDNet's daily email newsletter. It's the freshest tech news and opinion, served hot. Get it.

Talkback
Umm, Xen's been doing this for over a year...
I Want A Windows Mobile OS That's Not Crap
Which is why I'm using an IPhone.
This makes me very very depressed
I'm a .NET developer and .NET is pretty much the only reason I'm sticking with Microsoft right now, but if Windows 7 and Windows Mobile 7 doesn't blow my hair back, I'm seriously quitting Microsoft for good. I'm going all Apple and I don't care if I don't get a job - I'll just start up my own company. This is how sick and tired I am of Microsoft right now.
Despite a few flaws in the iPhone, it's the best phone on the market, and the temptation to get one grows with every passing day. Damn you Microsoft for being so damn slow and pathetic. Get off your fat as and create something worth buying before I leave you for good.
They won't, but they'll take your money.
iphone is crap as a phone
You really don't have a clue and haven't read ANY reviews from actual users or on any forums. If you want a real phone that works the iphone is probably one of the worst ones out there with it's well documented dropped call problem. And yes I do know people with them and they do have this problem.
That's interesting
I do admit there are some flaws - lack of MMS being one of my personal pet peeves - but it is a much more solid and reliable phone than any other smartphone I have owned...
Personally I could care less if you take my word for it Jim, you already seem biased against it - 'm just putting my own personal experience as an iPhone owner - not as just a friend of an iPhone owner - out there.
Windoze and not excrement is an oxymoron
What? No Kindle?
For embedded devices I'd rather have one really good OS
WindowsMoble is closer than all 3...
get busy with the hardware first. The touch screen on
WM phones is bad, and the OS needs slimming down.
Then after that, get a developer worth his weight and
build the UI on top that ACTUALLY WORKS!
Personally though, I've given up on pure touch screen
only phones. Right now I'm waiting for my contract to
end so I can get a Plam Treo Pro or the new Samsung
with both a hard keyboard and a touch screen. The
wide keyboards of like the AT&T Tilt don't work very
well for me either. I've found I'm fasted on the good
old Blackberry style keyboards. Tactile and defined
wins out every single time.
HTC Touch Pro
windows
Why Care About The OS?
Do I really care that it is running Windows Mobile? No - I want to get things done, and this allows me to do that with no crashes, hang-ups, dropped calls, etc. To me, that's a great OS - get out of my way and let me work.
I hear so much hype about the iPhone, including from a friend of mine. Then last weekend he commented about how the 2.2 upgrade and greatly reduced crashes and hang-ups on his phone. I was shocked. I had never heard anything but super-positive reviews from him, and he had never mentioned all the crashes.
I said "why not get an HTC Touch Pro and avoid all the crashes in the first place?"
It seems like Apple gets a free pass on all the problems the iPhone has. In the press it is the perfect phone. On the ground, there are serious problems that don't seem to get talked about.
The iPhone is admittedly a very cool looking device, and was tremendously innovative in its day. But I'd rather have a less-cool device that is smaller, more reliable, comes with a keyboard, and gives me a choice of carriers. The HTC Touch Pro is that device.
Me, I just want a cell that works
RE: I want an iPhoneStormDroid
As I see things from a global automotive point of view we are going to have robotic transportation that is built around a shell of solar paneling for the non-structural parts of the vehicles and undeneath that will be attached nanotube capasitors holding the power to run electromagnetic motors right within the wheel it's self, much like what can be seen in the movie I Robot's cars except the wheels will level out to a horizontal position to auto-run on the Maglev surfaces of the intercity expressways (no changing to manual driving here at these speeds) traveling at an estimated 650kph between enrty and exits much like our motorways do today, then the wheels will go back to vertical for urban travel. these vehicles will incoperate the newer long distance wireless (I can't recall it's name right this instance) and be our CLOUDS for the cloud computing hand held devices making it all interconnceting to these new ideal; hand held,pda's, PC's and servers alike
RE: I want an iPhoneStormDroid
This is why Linux has a big advantage on mobiles with different hardware as linux can already run on everything form ARM, PPC, Intel, etc.
If you write a POSIX complaint application, there is a really good chance that it will compile and work on all of these architectures.
Phones and PDAs are more powerful now than the 8088 systems I coded on in polytech, have more memory than my first 286 laptop (luggable).
The trick is getting this resource contrained hardware to do clever things, and this sometimes requires a deicated OS to do it with few resources.
Virtualisation on PDAs wont take off until they have the same power as a current desktop.
Huh - where is the radical departure here?
On iPhone? Never.
software to hardware...so even if they did this, good luck
playing touch-screen on a Blackberry!
RE: I want an iPhoneStormDroid
Correct
From a developer perspective, even for a company like Apple, who is likely to keep their devices proprietary, having a hypervisor-based implementation would vastly accelerate their development process -- their OS could be decoupled from the hardware and any changes they made could be completely debugged external to the device. They could maintain the codebase much easier if the OS was virtualized and not running "on the metal". For example, the distinction between different transceiver standards between wireless carriers would be handled by the hypervisor, not the OS. They wouldn't have to develop separate versions for 3G implementations in other countries or for different carrier equipment. This would all occur in the hypervisor.
Also -- to the open source people who have commented -- I'm aware of your projects, such as Xen's embedded version as well as OKL4. However, I think what needs to be recognized here is that the LEADER in embedded device software development -- Wind River -- has now gone in this direction, and has a releasable product that is already being adopted in other industries. While an Open Source solution is desirable, large scale manufacturers may want to partner with a proven industry leader at first when rolling out hypervisors on devices.