Samsung and VMWare Bringing Virtualization to Android
jbrodkin writes with an interesting article in Ars Technica about virtualization and phones. From the article: "VMware's mission to bring virtualization to the mobile market gained a major supporter last week when Samsung pledged to use VMware software to build business-friendly smartphones and tablets. The project known as Horizon Mobile will let Android phones use virtual machine technology to run a second instance of Android, in much the same way virtualization works on servers and desktops. The user essentially has two completely separate phones running on one device, and can switch from the personal one to the corporate one by clicking a 'work phone' icon."
There are others pushing alternative approaches to virtualization on mobile devices.
While I'd be more interested from an end user and developer perspective, I like the idea of having a phone that will do both Android, WP7, and possibly even something like regular android, rooted android, (with multiple versions of android) and WP7 all at once.
Or android and bada at the same time.
Perhaps if I was a Droid developer I might have a use for this. But for the average user, why not stick with profiles instead? No need to complicate the PDA anymore than it already is IMHO.
Life is not for the lazy.
thank you very much
Homepage
Surely there's a more efficient way to have 2 separate phone environments running on the same handset.
Yep. Just as there's a more efficient way to have two separate operating environments running on the same personal computer or server.
This author takes full ownership and responsibility for the unpopular opinions outlined above.
It will be several years before anything Google does could have any bearing on Moto devices- the 2 aren't planned to join for about 6 months, and even then it would have no bearing on anything currently in the pipeline. I can safely say that Google's influence will not be felt in the market for at least 2 years. For comparison, 2 years ago, Eclair had not yet launced. There are a lot of changes that can happen in that time.
As for battery life, I find them to be on par with other smart phones (which is much worse than most dumb phones)
There is, using jails or chroots or openvz containers. How much separation you want dictates what method you choose.
To all the naysayers in here, consider:
Today's phones don't have the hardware to pull this off effectively. But, tomorrow's phones will arrive. They might include hardware hypervisor support (perhaps they already do) like modern x86 processors, dramatically increasing virtualization efficiency. Today's phones ship with 512-1GiB RAM, but you'll have trouble finding a (leading edge) phone with so little in 5 years.
But what is the advantage?
Simple. Security.
Imagine being able to snapshot your phone to try a new piece of software. Turns out to be malware? Hoses your phone or leaves traces of itself behind after uninstall? Revert the snapshot.
Want to be able to give your wife (or friend) your phone, but don't want to shut down your business applications? Flip VMs to a "public" phone. Your address book is hidden away, your meeting announcements are invisible, your email is safe. You can even let them install software in the other VM with a much lower risk (after taking a snapshot, of course), and suspend the instance when they're done.
Entire VMs could be encrypted and provisioned by your IT staff, to meet the needs of policy. Those irritating 5-minute auto-screen-locks? Now it's only a problem on your "work" phone. At the end of the day, flip back to your personal device, and you're good to go - all the while your email continues to download in the background.
Company decides to remote-wipe? There goes the VM. But only the VM. You're still as mobile as you ever were.
How about instance cloning? Buy a new phone, transfer your virtualized instance over, and you're back in business.
I think the possibilities for phone virtualization would be endless!
A government is a body of people notably ungoverned - AC
VM's are not speed daemons, neither are phones is this really worth the effort because no one at samsung has figured out that you can have different sessions without having to boot 2 os's
Why run several instances of a kernel with all the overhead of a VM when you should just do chroot/jails? Especially with such limited CPU and RAM, just seems like a bad idea.
I thought Android was already all about a Java VM. So... just start another Java instance?
But it seems silly to do all that just to swap out your profile data.
Slashdot's rate-of-post filter: Preventing you from posting too many great ideas at once.
Is this meant to fake out two phones, or just a mega-profile? Phones are all about service plans. If you have a 'virtual' phone does that require it's own service plan?
Does the same phone number ring both phones? (If it does how do you know if you should pick up with the Business profile or the Private profile.)
Do you need 2 SIM cards? (Not even sure how that would work.)
Sounds like it's just a mega-profile, and in that case it sounds like overkill.
--Welcome to the Realm of the Hawke--
You can run Windows apps with jails and chroots? Do the WINE guys know about this?
Of course not. He said two separate operating system environments, not can you run windows in it.
You would not be able to run it on this either, unless you have some arm compiled windows.
Except that in the context of this discussion the OS running in the virtual environment is the same kind as the host OS.
Windows 8 is ARM compiled.
It just seems that a lot of these comments are seeing the forest for the trees.
It would be silly to not invent and develop VirtualBox when chroots and jails "run things in an isolated manner". That's only a small use case. We want to run other OSes while inside our favorite environment.
If you have 2 phones on one device, use one to call the other, to get out of meetings or awkward conversations.
I eat only the real part of complex carbohydrates.
Link to the download for that, or it is useless. Windows has supposedly been compiled for arm before and nothing came of it.
No one is missing anything kiddo. I just stated that there are faster ways to get this sort of separation if you were willing to run on OS multiple times.
My 1.5 year old N79 lasts more than 3 days
A friends new Xperia mini pro lasts about 18 hours with the same usage pattern
similar patterns b/w Nokia s60 and android phones most of the time
Android is based on Linux and Linux already has Xen, KVM, and LXC for virtualization. What would VMware add to the mix other than cost?
Xen and KVM can be a bit heavy handed, but LXC is lightweight and may be best suited for mobile virtualization (assuming that you only want to run instances of the host OS--a limitation of containers).
KVM is based on qemu and I already know that works with ARM--the processor of choice for smart mobile devices.
So, I do not see a need for VMware.
As for VM need: Given all the viruses and other nasties targeting Android, it'd be nice to have VM snapshotting (or any snapshotting) capability so that I can roll back. Or perhaps push my VM to "the cloud" and fire up on a replacement device or a friends phone with fully charged battery--assuming that I do not need to download 32 GB of data. I guess my state could be in the cloud, but my data in a different cloud. Given the impressive Javasciprt-based emulators I could get my VM from a browser. Anyway, there are possibilities. I do like the idea of a personal VM and a work VM and a VM for my wife when she borrows my phone.
Sure, but you'll probably need to plug it into the wall, and attach a keyboard, and a larger monitor...
There are two types of people in the world: Those who crave closure
Many people have addressed how this must be very inefficient. Well, I think if properly designed this shouldn't be much of an overhead. It depends if you really want to have both OSs running at the same time (lots of overhead) but you probably don't want to do that, or can work around it (most process certainly won't need to be running at the same time).
Also, hardware virtualization and hypervisors that allow paravirtualization might make it pretty efficient. Xen comes to my mind.
Personally, I'd love to be able to have IOS running as a separate VM. Then I could run the 3-4 IOS apps I like that just don't have a good Android equivalent.
Or worse case, run Android as a VM in IOS.
-J
One of the big issues in IT departments is that many people want to use their "personal phone X" as their work phone. I can somewhat understand this, as having two phones on my own belt-holster is quite irritating.
The big issue becomes, when a company's important data may be linked to the phone, who manages/owns the phone. If you have a corporate blackberry and an employee is terminated or loses the phone, you can wipe the phone via BES etc. It that phone is not necessarily a corporate phone, then you're going to have a pretty ticked off user (and possibly a lawsuit) if you wipe his/her personal stuff along with the phone. Also, what if the user jailbreaks the phone, etc
If personal/corporate space are separate, then your work space can be safely wipe the work VM. Similarly, an individual VM may have an entirely different privacy/security setting, jailbroken personal VM (and unbroken work VM) etc etc
My main concern would be performance. VM's nowadays are pretty efficient, but phones run on batteries and any overhead isn't cutting into what's already a fairly thin line.
Is my battery.
Flappinbooger isn't my real name
"Horizon Wireless" virtualization? You could condense those terms even more. Horization Wireless? No... hmm.... I've got it! Verizon Wi- oh wait.
Lets make them run ONE OS WELL first, then worry about running two?
Its not "windows" it does not support the same APIs as windows. Its kernel is perhaps similar, but the userland is nothing like it.
I heard you like Android, so I put a VM on your Android so you can run Android while you run Android!
And if the market forced battery life to be a priority, then we'd get the same battery life we had on slower devices, but the big drains are high-contrast, high-resolution screens and fast processors; both of which continue to be the driving market forces.
I'm thinking the virtualization folks are waking up to the fact that the world is going mobile, like everyone else.
Python: 'And then suddenly you have a language which says "we're all stuck with whatever the whiniest coder wants".'
I find it really funny how companies succeed in making people think they may need this kind of crap.
I gave up with the idea of an useful sig...
Its not "windows" it does not support the same APIs as windows. Its kernel is perhaps similar, but the userland is nothing like it.
"nothing like it" as in "Android is nothing like Slackware"?
the wince underneath is similar in api in some ways.
Too bad windows phone is just an app on top of that with a vm to run user installed programs. it's like going back to dos with a launcher. and people are calling it revolutionary. well fuck yeah it's a de-evolution.
world was created 5 seconds before this post as it is.
Efficient? Maybe.
Secure and solid solution? Probably not.
This solution gives much better guarantee of security of the work VM to not be compromised by the home VM and so forth, and is also arguably a very clean and neat solution. You only need to carry one piece of hardware, but still effectively have two phones- one for work, one for home.
Battery life sucks on all smart phones. The battery life of the iPhone 4 and Windows 7 phones is no better than the equally priced high end Android phones.
Sure some of the truly budged Android phones have noticably less battery life, but like for like, smartphone battery life is pretty shit in general.
Surely there's a more efficient way to have 2 separate phone environments running on the same handset.
It seems like a reasonable way to keep my "personal phone" and my "work phone" separate, despite being the same phone.
Hypervisor-style virtualizaiton is pretty darn efficient (most instructions just run normally on the CPU, no inefficiency at all there), until you switch between machines. If you're running one "phone" or the other at any given time, it shouldn't be an issue, really.
As I see this is solves one key problem: my employer wants to wipe my phone if I leave. I don't want any of my personal info affected. If the phone being wiped is virtual, I'm OK with that.
Socialism: a lie told by totalitarians and believed by fools.
My high-priced andoid phone lasts for many days if I use it only as a phone and music player (which I do when I travel). It's the radios that drain the battery - an hour of wifi seems to drain the battery as much as a day without.
Socialism: a lie told by totalitarians and believed by fools.
when a lot of the extra power is going to just display animations in menus, for me atleast thats a waste of battery power.
s60 had minimal animation in menus,etc. Android has quite a bit more
That could be a contibuting factor to battery life as well
Yes, I agree! I need a blackberry only to connect to the enterprise server for work email, if there was an iphone app that ran a blackberry VM, perhaps I could finally abandon my BB. If anyone has ever tried to browse the web on a BB bold, you can feel my pain. iOS is superior in every way to BB OS.
This is fantastic. I can have one instance in the middle of booting, another instance in the middle of crashing, and a third that's frozen waiting for the other two to give it some CPU time...
(I love my Samsung Galaxy, but the constant freezing/lockups are getting old...)
--- Generation X: The first generation to have SIG lines inferior to their parents... ---
Why not simply have two separate accounts, rather than duplicating the entire OS?
What's the cost you worry about in "duplicating the entire OS" - the size on the SD card? That still matters a bit today, but like any other storage it's getting cheaper fast. The size in memory? I know the the VMware server products actually de-dup memory pages in common between running guests (no clue about the phone version).
Seperate virtual machines can be separately snapshotted, rolled back, wiped, etc - I can trust them to lead separate lives.
Socialism: a lie told by totalitarians and believed by fools.
my 2 yr old e71 lasts a good 5 days with lotsa calls, texts, and a decent mix of 3.5g+wlan browsing.
but a 1yr old nokia 5800 lasts only ~36hours with similar usage. i think the major factor is not the os, it is the huge screens that touch phones have.
Wealth is the gift that keeps on giving.
hell, anybody who has browsed the web on any fucking device has felt the bb browser lacking. even dumbphones have better browsers nowadays (opera, bolt, etc).
Wealth is the gift that keeps on giving.
What 'same usage pattern'? The N79 doesn't have a touch screen.
Dropbox drops it like it's hot.
same usage pattern as in
about 2 hours of calls, 30 - 40 mins of gaming, an hour of web browsing, few photos, 50 or so SMS,etc..
Your E71 probably also has a HUGE battery compared to the 5800
I dont remember the exact capacitiy, but the E71 battery has almost double the volume of the 5800 batery IIRC
Yeah, but the point is, it's still not a touch on the likes of my old Nokia 7650 which still had bluetooth, a colour screen, a camera, could run games like Doom and so forth which used to last about 8 days without charge, and still had bluetooth etc.
That's really the problem, even if you get a smartphone to last 3 days it's still relatively shit compared to what we've had over the last decade.
It is of course partly the price of progress, but there you have it. I can see why smartphone battery life pisses people off. Batterys haven't improved anywhere near as quickly as the rest of the technology has.
I hear you like bloat, so we've put bloat inside bloat so you can wait while you wait!