Related
Does anyone know of any VirtualBox Android Emulator that has Marketplace?
Thanks!
Oh, I forgot to add "that's free" and not the $50 that some cheeky bastards are trying to charge for a thing called AndroidVM!
iridium21 said:
Does anyone know of any VirtualBox Android Emulator that has Marketplace?
Thanks!
Oh, I forgot to add "that's free" and not the $50 that some cheeky bastards are trying to charge for a thing called AndroidVM!
Click to expand...
Click to collapse
Android doesn't just load up and run on a PC. It's a source code project that a real developer has to spend time porting from platform to platform, unless you want to run it from a runtime built from the SDK. To do that requires an underlying OS, like Windows, Linux a MAC - something capable of running the SDK.
Since, VMware is emulating a PC, then in order to run as a real virtual machine, android needs to be pretty much ported to a PC. Since Android is built on a Linux kernel, it's not impossible, but geese - why? That said, it's bound to show up on an Intel compatible tablet at some point, if it hasn't already.
attn1 said:
Android doesn't just load up and run on a PC. It's a source code project that a real developer has to spend time porting from platform to platform, unless you want to run it from a runtime built from the SDK. To do that requires an underlying OS, like Windows, Linux a MAC - something capable of running the SDK.
Since, VMware is emulating a PC, then in order to run as a real virtual machine, android needs to be pretty much ported to a PC. Since Android is built on a Linux kernel, it's not impossible, but geese - why? That said, it's bound to show up on an Intel compatible tablet at some point, if it hasn't already.
Click to expand...
Click to collapse
I'm already running Android under Virtualbox - I just wondered if there's a version for VB that has Marketplace.
attn1 said:
Android doesn't just load up and run on a PC. It's a source code project that a real developer has to spend time porting from platform to platform, unless you want to run it from a runtime built from the SDK. To do that requires an underlying OS, like Windows, Linux a MAC - something capable of running the SDK.
Since, VMware is emulating a PC, then in order to run as a real virtual machine, android needs to be pretty much ported to a PC. Since Android is built on a Linux kernel, it's not impossible, but geese - why? That said, it's bound to show up on an Intel compatible tablet at some point, if it hasn't already.
Click to expand...
Click to collapse
Wow. So much complete and utter wrong in one post... I've been running Android under a virtual machine for quite a while...
There is an x86 version of Android available at androidx86.org
It will definitely run under Virtual Box or any other virtualization software package. It's Android 1.6 by the way, and you will have to perform some geek-like activities to simulate an SD-card to install appz.
Big question is whether an ARM-device version of Android would work in a normal VM emulator (not talking about Bochs and stuff).
FloatingFatMan said:
Wow. So much complete and utter wrong in one post... I've been running Android under a virtual machine for quite a while...
Click to expand...
Click to collapse
Well, since I hadn't heard of a port to x86, I was certainly wrong about that, which makes the rest of the post moot, but not wrong. In any event, I stand corrected.
sorry to add a flame of any kind but this
"Since, VMware is emulating a PC, then in order to run as a real virtual machine, android needs to be pretty much ported to a PC. Since Android is built on a Linux kernel, it's not impossible, but geese - why? That said, it's bound to show up on an Intel compatible tablet at some point, if it hasn't already."
is totally wrong.
Virtual machines virtualise the hardware of your machine (bad explanation I KNOW). if you have a PowerPC you can only emulate PowerPC (Mac for those that dont know) and intel/amd chips are things like x86 then theres smaller devices like ARM. my point is that if you have a Intel/amd box you can only emulate x86 O/S. however if you have a netbook with a version of linux or windows built on arm arch then u could prob get away with the original android if you are running normal x86 then u require android that has been built from source on x86.
this made me laugh
"Since Android is built on a Linux kernel, it's not impossible"
all i can say is what??
anyway back to the point... to run android on a x86 box u need x86 android
The problem with getting the Market to work is simply that the GApps are currently only available in a compiled for ARM version. period. that's the answer you wanted to hear i guess.
@others: stop OTing please...
hvc123 said:
sorry to add a flame of any kind but this
"Since, VMware is emulating a PC, then in order to run as a real virtual machine, android needs to be pretty much ported to a PC. Since Android is built on a Linux kernel, it's not impossible, but geese - why? That said, it's bound to show up on an Intel compatible tablet at some point, if it hasn't already."
is totally wrong.
Virtual machines virtualise the hardware of your machine (bad explanation I KNOW). if you have a PowerPC you can only emulate PowerPC (Mac for those that dont know) and intel/amd chips are things like x86 then theres smaller devices like ARM. my point is that if you have a Intel/amd box you can only emulate x86 O/S. however if you have a netbook with a version of linux or windows built on arm arch then u could prob get away with the original android if you are running normal x86 then u require android that has been built from source on x86.
this made me laugh
"Since Android is built on a Linux kernel, it's not impossible"
all i can say is what??
anyway back to the point... to run android on a x86 box u need x86 android
Click to expand...
Click to collapse
VMware and Virtualbox emulate PC hardware. Since Android runs on a Linux kernel, and Linux was originally developed for an x86 PC, it follows that a port of Android could be done for a PC. Since this was not a generic discussion about virtual machines but a specific discussion about PC emulation, I don't see where the argument is.
PC = x86 and it's successors. You said I was totally wrong and then pretty much made my case. The only point I missed is that the work had already been done. To run Android in a x86 (PC) VM, you'll need an X86 (PC) compatible version of Android - right - what I said.
Right... Ok, now does anyone know the answer to the original question?
the_fish said:
The problem with getting the Market to work is simply that the GApps are currently only available in a compiled for ARM version. period. that's the answer you wanted to hear i guess.
@others: stop OTing please...
Click to expand...
Click to collapse
OP should read your thread.
arctu said:
OP should read your thread.
Click to expand...
Click to collapse
I have
Supposedly, these guys have Android with Marketplace for VirtualBox:
http://www.androidvm.com/home
So it must be able to be done - the only problem is that it's $49.95!
deleted
zgornz said:
They state they are running Ubuntu in a VM, then installed the Android emulator in Ubuntu, then the android emulator is setup to have the Marketplace. The android emulator is doing the ARM emulation.
I think using qemu User Mode emulation it might be possible to actually launch the Marketplace and apps via android-x86 without using a phone emulator. Not sure it would be that valuable, but it would allow lots more apps on a netbook running Android.
Click to expand...
Click to collapse
I imagine it would be a mess to get a touch screen working in android running on an emulator.
I read reviews on androidx86 booted (not emulated) on a few netbooks that ran great and very responsive..I also read one on a touch screen comp that worked fine..they claim all apps work-minus gapps obviously.
I plan on trying this on my Toshiba nb205 netbook today and can post a review if anyone is interested..
Sent from my Nexus One using the XDA mobile application powered by Tapatalk
A review would sure be appreciated. More knowledge is always better.
Just a quick follow up, I tried out the Androidx86 on my netbook this weekend, both booted off the usb and installed on the hd..it runs..nothing spectacular and slightly dissappointing. You still only have a 4x4 screen and the Marketplace is entirely different, very small selection of "blah" apps..none of my favorite android apps anyways-facebook,twitter,gmail..not really any widgets either. Lastly, you need to use an external mouse..the touchpad just moves the background but gives you no pointer (could be a hardware compatability issue tho)..
On the positive side, the internet was very fast and resume time was almost instantanious..not really any major bugs, just nothing too special..
This method works with 1.6 as originally described here:
link-> forum.xda-developers.com/showthread.php?t=529170
I got it to run with the signed-dream_devphone_userdebug-img-14721.zip image from HTC for the developer phone.
link-> developer.htc.com/adp.html
I replaced the android-sdk-windows\add-ons\google_apis-4_r02\images\system.img with the one from the signed-dream_devphone_userdebug-img-14721.zip
(you should backup the original system.ini)
I then used the Android SDK GUI interface to create a Google API Level 4 machine.
I did not need to install the marketenabler.apk, as described in the original thread.
It boots up like a new Dev Phone, it behaves like there is a valid SIM and working data connection.
CTRL-F11 rotates the screen (slide out keyboard).
I have only installed a few free apps (K9 mail) but they seem to work fine.
I can't post links so copy, and paste them.
It would be trivial to create an Ubuntu virtual machine and then install the Android SDK inside of it and modify the system.img. Installing the SDK on your own machine probably takes less space and resources then running it inside another VM.
attn1 said:
Well, since I hadn't heard of a port to x86, I was certainly wrong about that, which makes the rest of the post moot, but not wrong. In any event, I stand corrected.
Click to expand...
Click to collapse
Updated, not corrected.
Yes, you were absolutely correct except for being out of date, because that process you described has already taken place as others have now pointed out.
To the person who said he was wrong, actually, no.
Android as it stands on the phone, is an ARM system compiled in ARM machine code. Android apps are hardware/platform agnostic but the operating system is not, it does have to be ported and recompiled for any different hardware system. That being said, it seems that most of that work is finished, ala androidx86.org
Cheers,
Rob
x86 Android Market
I have been reading a bit. It seems that it is possible to have Gapps installed for x86.
Froyo, people have been using Cyanogen 6 Gapps for Tegra.
Android x86 launched their Gingerbread version not long ago. It would not surprise me if Cyanogen 7 Gapps worked with it. Different devices used different versions and now there is just one version for all. It should be possible to run VM from the desktop.
NDK dependent Apps: in theory, it may be possible taking the apk using android apk tool, x86 NDK from the x86 build and rebuild it for x86 code.
I will be playing with an old EEE900 and see how this goes sooon.
I have seen several QEMU setups, specifically on the Nexus One, Evo 3D, Xperia Neo, and other devices, all running various versions of Windows XP, 98, or 95. I'm looking at the source now. Is there any reason someone hasn't tried to run the Windows CE (PocketPC or WinMo) kernel within QEMU or can it only emulate x86 operating systems?
http://wiki.osdev.org/QEMU#Supported_Architectures
http://wiki.embeddednirvana.org/ARM_Emulation_Using_QEMU
So according to these articles, ARM emulation is possible.
ARM
QEMU booted into the ARM port of Fedora 8
QEMU emulates the ARMv5TEJ instruction set and all the derivative processors families like ARM7, ARM9E, ARM10E and XScale. It emulates full systems like Integrator/CP board, Versatile baseboard, RealView Emulation baseboard, XScale-based PDAs, Palm Tungsten|E PDA, Nokia N800 and Nokia N810 internet tablets etc. QEMU also powers the Android emulator which is part of the Android SDK (most current Android implementations are ARM based). Under development is iEmu, emulator of Apple's iPhone. Starting from version 2.0.0 of their BADA SDK, Samsung has also chosen QEMU to help development on emulated 'Wave' devices.
metroidnemesis13 said:
I have seen several QEMU setups, specifically on the Nexus One, Evo 3D, Xperia Neo, and other devices, all running various versions of Windows XP, 98, or 95. I'm looking at the source now. Is there any reason someone hasn't tried to run the Windows CE (PocketPC or WinMo) kernel within QEMU or can it only emulate x86 operating systems?
Click to expand...
Click to collapse
I've had limited success booting a custom x86 Windows CE 4.0 NK image with the newer WinCE QEMU port for the HD2 but I wouldn't call it usable. CE booted and I could see the mouse cursor but the desktop never appeared. There are real CE drivers for most of QEMU's hardware on x86, so it might just take a bit of fiddling if the ARM qemu builds aren't just broken.
Bochs was able to boot the image fine but it was pretty slow and only worked in the 320x200 VESA mode. One of the newer mobile Bochs builds for Android worked a little better and displays in a higher resolution but it's still slow and lacks networking. I haven't had as much success with QEMU. It seems like there are major differences between the generic c/c++ CPU core for all architectures and the x86 one and I"m pretty sure QEMU runs some x86 code natively even in user mode. It's either that or the mobile versions are quick hacks with some dirty workarounds that break the more obscure OSes. The difference in compatibility between different processor architectures in the same build is evidence enough of that. Though, I haven't tried them in an ARM debian build yet.
And as cross platform as it is, QEMU seems highly optimized for x86 these days. So many OSes that have problems on ARM qemu work just fine on a desktop. It seems to me like QEMU-x86 wasn't ever really extensively tested on ARM and the other less used archs. There is also a newer QEMU port based on 1.x in the Android Market called Limbo which I have yet to try but the current versions use VNC so video output is pretty slow.
If you want to give it a go, the following Windows CE based PDA platforms had x86 images available: Handheld PC 2000, Pocket PC 2002, Smartphone 2002, Pocket PC 2003/SE, Smartphone 2003/SE and of course the generic builds from 2.0-7.0. Most of these will boot on a sufficiently compatible PC with the right nudging and it should be possible to cook custom ROMs with appropriate HDD drivers if you prefer Windows Mobile and know how to modify WM2003 ROMs.
You might want to keep an eye on QEMU-KVM for ARM Linux too. If it ever works well enough on android, that may be able to virtualize an ARM CE image at near native speeds. QEMU does emulate a few CE compatible dev boards but I'm not sure if anyone ever successfully booted CE on them as they're mainly for testing Linux and don't emulate everything.
Edit: Here's a few YouTube videos I found demonstrating an early build of KVM-QEMU booting Android and Ubuntu on a Cortex A15 running Ubuntu:
http://www.youtube.com/watch?v=LWzoanrsaCI
http://www.youtube.com/watch?v=uD5Nu-VrHKI
Color me impressed! If CE can be ported to one of the boards QEMU emulates, (almost) native CE on countless Android devices seems very possible. Porting it on an emulator/VM is likely easier than running it on the metal.
Also, here's a thread about the Raspberry Pi's debian and QEMU. Based on the comments, they seem to have the same odd issues the WinCE and Android ports have.
http://www.raspberrypi.org/phpBB3/viewtopic.php?f=62&t=10635
So I tried out Android x86 for my PC. It works beautifully. I cannot boot it on my Surface Pro though... It seems like the Surface Pro was designed to only boot EFI boot loaders. Not BIOS boot loaders... I was wondering if somebody could lend a hand at helping me get past this issue. I really think Android x86 would be great for the Surface Pro, there are so many things I miss from my Nexus 7 but I don't want an Android device, if I could just dual boot it every now and then, I would be happy. Can someone please get the Android 4.2 x86 ISOs to boot via EFI? That would be appreciated.
sionicion said:
So I tried out Android x86 for my PC. It works beautifully. I cannot boot it on my Surface Pro though... It seems like the Surface Pro was designed to only boot EFI boot loaders. Not BIOS boot loaders... I was wondering if somebody could lend a hand at helping me get past this issue. I really think Android x86 would be great for the Surface Pro, there are so many things I miss from my Nexus 7 but I don't want an Android device, if I could just dual boot it every now and then, I would be happy. Can someone please get the Android 4.2 x86 ISOs to boot via EFI? That would be appreciated.
Click to expand...
Click to collapse
hmmm ... interesting you tried ...
and came out with a finding ...
following this thread on the possible development on this front ...
I've always dreamt of a Surface Pro on Android always ...
a reboot to Win7 for Work ... and back to Android !!!
going to be really very interesting ...
Hope the Android X86 team is peaking at this thread ...
Cheers!
Did you bother disabling secure boot?
Otherwise you can try "jar of beans" or "bluestacks" to run android applications for windows. There is a version of bluestacks which claims to be optimised for the surface pro, in reality its just bluestacks with proper windows 8 touch support.
SixSixSevenSeven said:
Did you bother disabling secure boot?
Otherwise you can try "jar of beans" or "bluestacks" to run android applications for windows. There is a version of bluestacks which claims to be optimised for the surface pro, in reality its just bluestacks with proper windows 8 touch support.
Click to expand...
Click to collapse
Of course I did, the problem is the Surface Pro's UEFI chip does not actually support booting BIOS-based bootloaders. It only boots EFI-based bootloaders like the Windows Boot Manager or Grub EFI, etc. Unless one was to emulate BIOS to boot Android, it needs a EFI bootloader to even boot it on the Surface Pro. Ubuntu boots fine on the Surface Pro, but it is booting from Grub EFI. I copied the Grub EFI file to my other flash drive, and Grub indeed boots. It is the trouble of getting Android x86 to boot because it isn't using a EFI-based bootloader.
Also, that wasn't the point. I want to run pure Android just for the experience of having Android right on my Surface so I don't miss having a Nexus 7. I tried it on my desktop PC and it runs beautifully, if only I could get it on my Surface...
Surface Pro comes with Windows 8 Pro and a CPU capable of second-level address translation. It is therefore capable of running Client Hyper-V, which is a hypervisor-based virtualization (rather than hosted VM) technology that allows you to run another OS in parallel with Windows. I believe it includes support for BIOS-based OSes. Perhaps you should try that?
GoodDayToDie said:
Surface Pro comes with Windows 8 Pro and a CPU capable of second-level address translation. It is therefore capable of running Client Hyper-V, which is a hypervisor-based virtualization (rather than hosted VM) technology that allows you to run another OS in parallel with Windows. I believe it includes support for BIOS-based OSes. Perhaps you should try that?
Click to expand...
Click to collapse
But what's the point in that? I don't want to virtualize. I want to run it natively... That's like saying hey use Bluestacks. I want Android running native on my Surface.
Anyway, guys I got it. Here it is.
First of all, running on a hypervisor is nothing like using Bluestacks. Android would then be running as "natively" as Windows at that point (Windows itself would also be running on the hypervisor), except that Windows would have first access to the display (Android would be able to use the graphics hardware nonetheless). When the virtual display was set to the Android machine, Android would be interacting with the input devices. As a plus side, you could switch back and forth rapidly...
That said, if you managed to get it working on bare metal, that's cool. Did you mean to include a link in your "Here it is "?
GoodDayToDie said:
First of all, running on a hypervisor is nothing like using Bluestacks. Android would then be running as "natively" as Windows at that point (Windows itself would also be running on the hypervisor), except that Windows would have first access to the display (Android would be able to use the graphics hardware nonetheless). When the virtual display was set to the Android machine, Android would be interacting with the input devices. As a plus side, you could switch back and forth rapidly...
That said, if you managed to get it working on bare metal, that's cool. Did you mean to include a link in your "Here it is "?
Click to expand...
Click to collapse
The tutorial is on the YouTube page. But the problem with the Hyper-V hypervisor is it uses that remote console. I only found it decent for running Windows with the guest drivers installed. Unless I'm just not executing it very well, Hyper-V isn't a good solution. Since VirtualBox is used much more in the Linux world, I would use that before using Hyper-V.
I'll investigate the virtual solutions though and let you know.
more recent linux kernel versions do support hyper-v, partly provided by microsoft believe it or not
I would assume that hyper-v support would carry over into android. Just a case of setting it up.
Worth trying. However, Android runs a somewhat customized kernel build that probably doesn't include a lot of the optional stuff such as the Hyper-V helpers. Of course, you could install the required kernel module for them...
SixSixSevenSeven said:
I would assume that hyper-v support would carry over into android. Just a case of setting it up.
Click to expand...
Click to collapse
I somewhat doubt the android platform itself has support for hyper-v.
Further, if you're looking to boot android directly would an android kernel and platform support booting via UEFI at all yet?
What partition would android be installed to? it likely wouldn't like being stuffed into an NTFS partition so you'd have to repartition the SSD and take some of the space from Windows, or boot android from an SDcard or USB memory stick.
EDIT: I see you did infact get it running, nice job, did you just use GRUB for a bootloader? did you have android run from the SSD or from elsewhere?
tbh if I had a surface pro I don't think i'd be installing android on it, slightly a waste.
by the way, a faster way of doing advanced reboot so you get the boot options is to hold shift and select the reboot option from the power menu.
So, after a short little flip around the web, I came across this
https://01.org/android-ia/downloads/2013/android-4.2.2r1-ia0
somehow.
I would love to have my Surface Pro dual-bootable between Android and Win8, but your tutorial has sort of overwhelmed me.
Are you using this code? Would it be better to?
Just wasn't sure where this development was going....
Purrsia said:
So, after a short little flip around the web, I came across this
https://01.org/android-ia/downloads/2013/android-4.2.2r1-ia0
somehow.
I would love to have my Surface Pro dual-bootable between Android and Win8, but your tutorial has sort of overwhelmed me.
Are you using this code? Would it be better to?
Just wasn't sure where this development was going....
Click to expand...
Click to collapse
You can try my guide in windows 8 development forums
Sent from my HTC One X+ using xda app-developers app
---------- Post added at 10:37 AM ---------- Previous post was at 10:36 AM ----------
feherneoh said:
Can't you add the lines which boot android-x86 into Ubuntu's GRUB? If it can be loaded, it could be used to load Android's kernel
Click to expand...
Click to collapse
Microsoft locked it, you can only use the stock bootloader for now
Sent from my HTC One X+ using xda app-developers app
rEFIit
Have you tried a rEFIit or rEFIitd? As the name subtly suggests, its a bootloader for EFI machines. I suggest having a look. I'm going to try this myself on a couple of machines tomorrow once I get to work. Good luck! Let me know how it turns out or if I lead someone down the right track!
rEFInd - An EFI boot manager utility: http://goo.gl/KRwzk
rEFIt: http://refit.sourceforge.net/
Agreed, Android on a Surface would be kick ass. Windows for work, Android for real life!
Hi Folks.....
Feeling a little nervous here seems I must have took a wrong turn somewhere to end up in the Microsoft Surface forum LOL.
Is anyone still wondering about this? I noticed the other day that the linux kernel 3.10 which is currently used by the android-x86 project has android efi drivers/patches which maybe what you require. I'd also have a poke around the Android-IA sources which is the official intel android open source project from what I recall there's more efiboot goodies in there.
As an extra bonus the 3.10 kernel also includes a patch for Binder which allows a 32bit userspace to function correctly with a 64bit PAE kernel which means "BIG RAM" so if you have more than 4 gig and a 64 bit processor you can get access to the full ram allocation, not quite the pure 64bit Android that I want but it'll do for now while I figure out the finer points of x86_64 assembly language.
If Anyone wants/needs a kernel rattling off with these options enabled just let me know and i'll well rattle one off!
Thanks
trevd said:
Hi Folks.....
...I noticed the other day that the linux kernel 3.10 which is currently used by the android-x86 project has android efi drivers/patches which maybe what you require. I'd also have a poke around the Android-IA sources which is the official intel android open source project from what I recall there's more efiboot goodies in there.
As an extra bonus the 3.10 kernel also includes a patch for Binder which allows a 32bit userspace to function correctly with a 64bit PAE kernel which means "BIG RAM" so if you have more than 4 gig and a 64 bit processor you can get access to the full ram allocation, not quite the pure 64bit Android that I want but it'll do for now while I figure out the finer points of x86_64 assembly language.
If Anyone wants/needs a kernel rattling off with these options enabled just let me know and i'll well rattle one off!
Thanks
Click to expand...
Click to collapse
If the offer still stands, I would be interested in this (..or even just a how-to).
I have a multiboot system with PCLinuxOS, Ubuntu, and Win8.1 running right now, and I can get the recent 4.4rc1 release from android x86 to boot if I switch to legacy bios and use legacy grub from PCLinuxOS or the android_x86 thumbdrive, but I cannot get it to boot from Ubuntu's EFI capable Grub2 (..d/t kernel panic). On my Acer m5-583p it works great in legacy mode (wifi, touchscreen, keyboard, etc), but I would like to be able to use an EFI bootloader so that I don't have to change to/from legacy/efi before selecting the OS at boot.
Thanks! :good:
Hi. Can someone that compiles kernels compile one with KVM enabled and make it available to download for various popular devices? I'd love to test this out on ARM. This would really make these machines appealing if you could spin up VMs on them especially considering how much RAM they have today. There aren't many ARM devices as powerful as the Samsung Galaxy S9 that run Linux and can be tested with KVM. You could even run a different version of Android or Linux in the VM or try BSD.
This was already done for the Intel x86 based Zenfone 2 and as a result, it can run x86 Windows 10 32/64-bit editions, Mac OS X, BSD and any Linux distro full speed in a VM. Of course this is x86 and much more refined than virtualization on ARM and you don't have quite the OS selection on ARM either.
I'd like to see how well the new ARM Windows 10 performs on these Galaxy phones. It would be a great alternative to running Windows 98 in QEMU slowly. Windows 10 ARM runs Office 2016 and Photoshop at decent speeds on some of the latest Snapdragon SoCs.
Though, from what I've read, there will be some issues running Windows initially. ARM QEMU with KVM currently doesn't support the VGA display mode that is required for Windows 10 on ARM.
I was thinking of starting a project to do this for various Android hardware besides the Zenfone 2. There are a number of x86 tablets from companies like Dell or Nextbook that would really benefit from a KVM enabled kernel but ARM phones would benefit as well.
For those that want this feature now, here is a list of current retail Android devices with KVM support and the various custom ROMs/kernels available that enable it. If you would like to see this feature enabled in your device's kernel please reply and do not hesitate to request it to your custom kernel developers.
x86-64:
Asus Zenfone 2 ZE551 and ZE550:
ycavan's custom KVM Enabled Zenfone 2 FHD(ZE551) & HD(ZE550) kernels:
https://forum.xda-developers.com/ze...fhd-kernel-ze551-kvm-bridge-compiled-t3145055
ycavan's tutorial thread: https://forum.xda-developers.com/zenfone2/general/zf2-running-windows-7-using-kvm-t3153299
TheSSJ's Custom Kernel for ZenFone 2 version 51:
https://forum.xda-developers.com/zenfone2/development/project-t-custom-kernel-zenfone-2-t3150822
Nyks45's [KERNEL]OctoDex[GCC 5.3.1][CM-13.0/AOSP6.0.X] ZE551ML/ZE550ML (formerly Veno-M):
https://forum.xda-developers.com/zenfone2/development/kernel-veno-m-ze551ml-ze550ml-t3375800
Discussion of KVM builds on the above:
https://forum.xda-developers.com/search/thread/3375800?query=kvm
Downloads: https://androidfilehost.com/?w=files&flid=57205
BORET24's ROM for ZE551ML/550ML/Zoom ZX551ML as of 2017/08/29:
https://forum.xda-developers.com/zenfone2/development/borets-rom-ze551ml-550ml-t3551225
https://forum.xda-developers.com/ze...51ml-550ml-t3551225/post73580815#post73580815
nutcasev1.5's [Kernel]Holo Kernel[AOSP/LinOS14.1][-O3][LINARO][Z00A/8]
https://forum.xda-developers.com/zenfone2/development/kernel-holo-kernel-t3443689
RussiaNBearReborN's [Rom][6.0.1][B352][18/03/18][Unified Z00A/Z008]:
https://forum.xda-developers.com/zenfone2/development/rom-rbr-v1-0-t3550544
Renix63's [KERNEL][UC] ZenKernel V1.9 Super for MM [Z00A/8][HotPlug][STOCK ROM]
https://forum.xda-developers.com/zenfone2/development/kernel-zenkernel-1-0-mm-t3510734
Aterfax's custom LineageOS 14.1 with KVM enabled kernel for Asus Zenfone 2:
https://forum.xda-developers.com/showpost.php?p=74568996&postcount=400
Asus Zenfone 5 and Zenfone 6:
tank014 & BORETS24's Custom Lolipop kernel for Zenfone 5 & Zenfone 6:
https://forum.xda-developers.com/zenfone-5/general/custom-lollipop-kernel-zenfone-5-t3238970
dgadelha's [ROM][6.0.1] CyanogenMod 13.1 Stable Builds (Unofficial)
https://forum.xda-developers.com/zenfone-5/development/cyanogenmod-13-t3382702
Asus Zenfone Zoom ZX551ML:
BORET24's ROM for ZE551ML/550ML/Zoom ZX551ML as of 2017/08/29:
According this thread, BORET24's ROM works with this and has KVM.
https://forum.xda-developers.com/zenfone2/development/borets-rom-ze551ml-550ml-t3551225
Post about it: https://forum.xda-developers.com/ze...51ml-550ml-t3551225/post73580815#post73580815
If you know of any other devices with KVM enabled kernels (ARM or x86) please let me know and I will add them to this list.
I might have to purchase an ASUS Zenfone 2, as I've wasted the whole year trying to get Windows 7, 10 running on my Android phone at anything beyond a snail's pace. The main problem is that KVM hardware virtualization is turned off in, like, every smartphone on sale in the market! This is bad brain - SUCH BAD BRAIN!!! My phone provider would not even respond to me on this issue.
I bought the first ever ARM64 laptop @ £999, but had to return it to the shop because it never booted up any Linux live USBs/DVDs. Since then I managed to get an ARM64 Linux distro - with a KVM-enabled kernel - running on the Raspberry Pi 3 B+ (thanks to help from a woman!) only to find that -enable-kvm is incompatible with qemu-system-aarch64's graphics options.
So what might the problem be exactly...? Well, the qemu-system-aarch64 generic -M virt machine type has no graphics output built into it - very clever!!! So we have to use -device VGA as an add-on to get VGA output. That will then allow snail's pace running/displaying of Windows 10 ARM; however, KVM happens to not be compatibile with this display mode - or perhaps any kind of display mode on aarch64 - due to the "VGA framebuffer" not being emulated (whatever that means!) by Qemu perhaps. The alternative is to use a different display device addon. We have -device virtio-gpu-pci, which allows you play around with the bios at near-native speeds - but the moment you boot from there into Windows 10 ARM it blackscreens cos' Microsoft did not put any virtio graphics drivers on their OS. So, basically, we are stuffed!
Ubuntu tells us "Ubuntu/arm64 can run inside the QEMU emulator. You can either do this fully emulated (e.g. on an x86 host) or, accelerated w/ KVM if you have an arm64 host." - yet they have no shame in omitting the fact that their installation runs with -nographics!
-display type none
Do not display video output. The guest will still see an emulated graphics card, but its output will not be displayed to the QEMU user. This option differs from the -nographic option in that it only affects what is done with video output; -nographic also changes the destination of the serial and parallel port data.
-nographic
Normally, if QEMU is compiled with graphical window support, it displays output such as guest graphics, guest console, and the QEMU monitor in a window. With this option, you can totally disable graphical output so that QEMU is a simple command line application. The emulated serial port is redirected on the console and muxed with the monitor (unless redirected elsewhere explicitly). Therefore, you can still use QEMU to debug a Linux kernel with a serial console. Use C-a h for help on switching between the console and monitor.
Click to expand...
Click to collapse
Therefore, I seriously doubt we can get even an RDP option on our Windows 10 ARM guest, alas. And, to add insult to injury, there is no sign of a Surface Phone or any Android software that might allow us to run Windows 10 ARM on our modern smartphones. What a bad time to be living...
Now I'm curious. How did you get KVM working on your Rasberry Pi 3 B+? I compiled QEMU from source using a modification of your instructions and couldn't get QEMU to even start with KVM enabled. What Linux distro are you using on the Pi? What linux did you use as your guest image? What was your exact qemu command line?
I wouldn't expect the ARM Windows 10 laptops to run any Linux yet. They're too new. We may need to wait years. The Windows RT devices were just secure boot unlocked a few months ago by someone from here and they still can't run any Linux.
Honestly, you probably are just better off getting a Zenfone 2. With the kernel mod, x86 Windows pretty much "just works." I just wish QEMU had a virtual battery meter so the VM could hibernate when the phone's battery gets low.
As an aside, I have a few Atom Baytrail Windows tablets that are quite similar to Android models and it's quite amazing what I can do with them out of the box when compared to Android. A few of them have virtualization enabled out of the box so all I need to do to use a VM is install VMWare, Virtualbox, Virtual PC, etc. and it "just works". No hacking, no flashing custom kernels, no command line tools at all. I've attached a picture of my Nextbook NXW8QC16G running Windows XP in VMWare and showing virtualization enabled in the task manager. The other picture is running Windows Server 2012R2, a 64-bit guest OS.
Your mention of virtio gives me an idea: Isn't it possible we can compile the virtio graphics driver for AARCH64 and somehow inject it in our ARM64 Windows image? If we did that, would Windows then be able to be used with ARM64 KVM acceleration? That guy who made the ARM64 Windows QEMU blog post already compiled the virtio disk drivers for AARCH64 and was able to get the installer to install to a virtual hard drive. Maybe all we need are ARM Windows compiled drivers for the rest of QEMU's special emulated hardware. I use the x86 Windows QXL driver with Windows 8.1 on my Zenfone 2 and it seems to work. Though, I had to boot with the VGA video mode first and install it via device manager manually.
Also, if you want an NT based OS on emulated x86 on ARM, have you thought of trying something older than XP like Windows NT 3.51 or 4.0? These were designed for 386/486s so should be more usable on emulated x86 QEMU than something like Windows XP. Office 97 works on Windows NT 3.51 and Office 2000 and maybe even XP and 2002 will work on NT 4.0. Softmaker Office 2008 also works somewhat on NT 3.51. Obviously Windows 98 may also be faster but it sounds like you prefer NT so these may be an option. If you install Windows NT 4.0 Terminal Server Edition, you will even be able to RDP into your emulated machines. Windows NT 3.51 also has an optional edition with remote, multiuser support called Citrix Winframe but I was unable to find an Android Citrix client that can still connect to it. (they're all too new)
I think we're starting to see the limitation of devices marketed as "phones" They're not an open computing platform or standard like the PC or even Macs.
We really need some kind of open standard firmware for phones like the UEFI/BIOS on PCs and an OS to go with it. It would be great if there were some kind of "open", generic (not neccessarily open source) OS that let you install drivers after being installed like Windows. Android is sort of open but not the hardware and good luck buying a device that will have an unlocked bootloader and get custom ROMs. Plus, you can't run anything other than Android and maybe another linux if you are lucky. I dunno, it scares me that these phones may become the defacto computing platform when they are so closed and proprietairy. At least with a PC, I know I can install the latest OS and be up to date for at least 15+ years if I want to be. We need that for phones but it just doesn't exist yet.
Update: I found a work in progress WDDM Windows driver for QEMU's VirtIO 3D GPU driver mentioned here:
https://www.phoronix.com/scan.php?page=news_item&px=QEMU-3D-Windows-Guests
The source code for it is here: https://gist.github.com/Keenuts/199184f9a6d7a68d9a62cf0011147c0b
Well it looks like our prayers are answered and our dreams came true. Thanks to the folks at limboemulator.weebly.com, there is now an ARM KVM enabled kernel available for the Snapdragon based Samsung Galaxy S8 and S8+
The latest Limbo PC Emulator even has KVM support even with the ARM builds.
Get it here:
https://limboemulator.weebly.com/android-arm-kvm---kernels.html
TFGBD said:
Well it looks like our prayers are answered and our dreams came true. Thanks to the folks at limboemulator.weebly.com, there is now an ARM KVM enabled kernel available for the Snapdragon based Samsung Galaxy S8 and S8+
The latest Limbo PC Emulator even has KVM support even with the ARM builds.
Get it here:
https://limboemulator.weebly.com/android-arm-kvm---kernels.html
Click to expand...
Click to collapse
These are only for Exynos
our snapdragons have a locked bootloader they will never work for us
dd the following lines to file: arch/arm64/configs/exynos8895-dreamlte_defconfig
CONFIG_VIRTUALIZATION=y
CONFIG_KVM=y
CONFIG_KVM_MMIO=y
CONFIG_KVM_ARM_HOST=y
#from the command line type:
make clean
make mrproper
make exynos8895-dreamlte_defconfig
Does anyone know how to compile/use Virtio drivers for Qemu-system-aarch64?
"You are welcomed to check the branch: https://github.com/virtio-win/kvm-guest-drivers-windows/tree/arm64
Instructions for build machine (using community edition of VS2017):
https://github.com/virtio-win/kvm-g...vers-including-arm64-using-visual-studio-2017
Soon will be integrated to master and we will distribute the binaries.
Best regards,
Yan."
https://github.com/virtio-win/kvm-guest-drivers-windows/issues/177
If the above works as a GPU for KVM then we might be able to pursue the Samsung Galaxy/Limbo solution?
I found out a lot of phones have KVM already enabled:
*Xiaomi phones, i.e. Pico F1 and Mi 8 with up to 8GB RAM (Mi 9 and Black Shark 2 have 12GB RAM)
*OnePlus phones, i.e. OnePlus 6T with up to 10GB RAM (McLaren Edition)
*Realme 2 Pro with 8GB of RAM
To find out just check the following file in a kernel source code:
https://github.com/MiCode/Xiaomi_Kernel_OpenSource/blob/dipper-o-oss/arch/arm64/configs/defconfig
KVM is disabled in all Huawei and Samsung devices by default. And Huawei cannot be unlocked/rooted anymore.
However, I found out how to compile custom ROMs for Samsung, etc.
KVM enabled on Mi 9 Xiaomi. What's the latest on a VM build we can use to build kernels etc.? Great idea here I proposed this AM and was shot down by a bunch of old school devs that think you should go through the pain of setting up a build env yourself that no one can replicate.
mslezak said:
KVM enabled on Mi 9 Xiaomi. What's the latest on a VM build we can use to build kernels etc.? Great idea here I proposed this AM and was shot down by a bunch of old school devs that think you should go through the pain of setting up a build env yourself that no one can replicate.
Click to expand...
Click to collapse
I probably need to update it, but for a VM you can try Builduntu here: https://nathanpfry.com/builduntu-virtual-machine-android-rom-compiling/
XDA post: https://forum.xda-developers.com/showthread.php?t=2585828
That should save you some trouble hopefully. ROMs and kernels will compile.
Thanks!
It's great someone is forward thinking enough to put this together. Much appreciated!
What updates do you suggest?
Seems to be running in VM
sylentprofet said:
I probably need to update it, but for a VM you can try Builduntu here: https://nathanpfry.com/builduntu-virtual-machine-android-rom-compiling/
XDA post: https://forum.xda-developers.com/showthread.php?t=2585828
That should save you some trouble hopefully. ROMs and kernels will compile.
Click to expand...
Click to collapse
Seems to be running from Virtual Box after the Extensions was added. Almost got the torrent downloaded but had to revert to the Google Drive and change to .html extension to download. Virtual Box 5.2.30 is the version.
Didn't sleep at all just got it booted which is a success at least. Thanks for providing.
Has anyone tried to turn on KVM on Xiaomi phones?
I tried to compile the kernel with the included KVM on Xiaomi Redmi Note 5. It compiled without errors, the KVM folder appeared with the files in the folder with the compiled kernel. But the phone with this kernel hangs on the logo. Maybe it's because of the miui?
To enable KVM, I added this to the defconfig:
CONFIG_VIRTUALIZATION = y
CONFIG_KVM = y
CONFIG_KVM_MMIO = y
CONFIG_KVM_ARM_HOST = y
One person with the help of such a compilation was able to enable KVM on their phones (Honor 7c pro, honor p20 pro, samsung galaxy s8), and the KVM works. Windows 10 arm launched.
TFGBD said:
Well it looks like our prayers are answered and our dreams came true. Thanks to the folks at limboemulator.weebly.com, there is now an ARM KVM enabled kernel available for the Snapdragon based Samsung Galaxy S8 and S8+
The latest Limbo PC Emulator even has KVM support even with the ARM builds.
Get it here:
https://limboemulator.weebly.com/android-arm-kvm---kernels.html
Click to expand...
Click to collapse
new link plsssssssssssssssss
monsterdimon said:
Has anyone tried to turn on KVM on Xiaomi phones?
I tried to compile the kernel with the included KVM on Xiaomi Redmi Note 5. It compiled without errors, the KVM folder appeared with the files in the folder with the compiled kernel. But the phone with this kernel hangs on the logo. Maybe it's because of the miui?
To enable KVM, I added this to the defconfig:
CONFIG_VIRTUALIZATION = y
CONFIG_KVM = y
CONFIG_KVM_MMIO = y
CONFIG_KVM_ARM_HOST = y
One person with the help of such a compilation was able to enable KVM on their phones (Honor 7c pro, honor p20 pro, samsung galaxy s8), and the KVM works. Windows 10 arm launched.
Click to expand...
Click to collapse
so does kvm works in honor 7c pro(as u have mention) ? And launch windows fastly?
also i wanna enable kvm in my redmi note4 .is it possible ? And How?
@TFGBD
Hi bro,
I have some questions that I hope you will answer me.
Note: My English language is bad ? ..
I was looking for how to activate the KVM feature on the LG G4 H818P phone to run Windows 10 ARM quickly on the phone, I have read that all ARM processors that work with Cortex-a15 or higher support KVM feature, but mobile manufacturers do not include this feature in the system, So,
I want a simplified way to activate this feature on my phone ?,
I want to know how fast I will get after activating KVM in Windows 10 ARM simulations ?,
will the method work with any device or each device has a method designated for it ?,
and
do you need experience ?,
How dangerous is it on the device?,
Do I need root privileges to benefit from KVM?
And will I need to reinstall the system again or only the kernel ? .
Thanks, bro ? ...
---------- Post added at 05:57 PM ---------- Previous post was at 05:52 PM ----------
tarikkaya said:
new link plsssssssssssssssss
Click to expand...
Click to collapse
link: https://github.com/limboemu/limbo/wiki/KVM
It's not simply a matter of enabling the KVM support in kernel. The vendor has to enable virtualization capabilities for the SoC in the firmware. On most (if not all) mobile platforms this will be disabled. Although there have been exploits that enable you to overcome that and they have been confirmed to work (think Lumia 950[XL] custom UEFI).
Hi all,
Anybody has enabled or knows of somebody enabling KVM on samsung galaxy tab s6? (4.14 kernel)?
I tried enabling the virtualization options in the kernel config, kernel compiles and device boots as normal but /dev/kvm does not appear...
"The vendor has to enable virtualization capabilities for the SoC in the firmware"
@konradybcio What do you mean by "firmware"?
Bye
Had a look at the kernel boot log and found the following line:
kvm [1]: HYP mode not available
So it appears the kernel is running in wrong mode and cannot operate as hypervisor
Probably samsung's bootloader (firrmare!?) does not allow it...
Basically, on the Mate site there is now a Mate download for the GPD Pocket, which does look like a cracking good machine.
Basically, has anybody had the gumption to try this on their Gemini? I have only one Gemini and don't have the skill or the courage to do this myself. If, and it is if, Mate worked on the Gemini, that would be excellent. I know people have Debian working, which is the fork for Ubuntu, which is the fork for....... which is why I'm thinking / hoping it may work.
Thoughts from anyone?
P.
GPD Pocket runs on an Intel x86 processor (like most computers and laptops), which means that it can basically run anything available. Gemini runs on ARM, which is basically the processor that powers mobile phones and some tablets. ARM is a completely different architecture and is not compatible with x86 software. Most of the desktop operating systems (like Windows, mac OS, Ubuntu, etc) focus their development on the x86 platform, since the vast majority of desktops use this architecture of processors. Because Linux is a free and open source OS, it is possible to get the kernel source code and (with a few modifications) compile it to a different architecture. That's what was done for the Gemini (and all other ARM devices that can run Linux), they got the Debian source code and compiled it for the ARM cpu. Some specific hardware settings and drivers were added for the Gemini PDA to make our custom Gemian, a Debian for the Gemini. Ubuntu is based on Debian, and not the other way around. So, to have Ubuntu Mate running on the Gemini requires one step further, to get Ubuntu source code and Gemian customization and drivers, mix it all together to make some "Ubuntian" of some sort... Honestly, I see no advantage in running Ubuntu, since Debian is the root of it. I don't know of a thing you can do on Ubuntu that you can't on Debian. But still, if you really want to have Ubuntu Mate running on your Gemini, on the Android side you can install Linux Deploy. This app only works on rooted Android, but it is totally worth it if you want to run Linux on your device. It allows you to install several distributions of Linux on top of Android, including Ubuntu Mate.