Does anyone know a way how I can take a full image of my HTC phone and run it as a virtual machine on my PC? A sort of VMWare kind of thing.
I'm getting a new phone but would quite like to preserve the one I have virtually.
There's no virtualizer available for x86/i64 that supports ARM guests as far as I know. Even if there was, there are too many hardware dependencies in the ROM to make it run in a virtualizer/emulator.
You can try to migrate your content (software and data) to MS's windows mobile emulator. It's not capable of using an image of your phone flash though, so you'll need to install all the software you need from scratch.
Related
i just want to know that why android operating system does not work directly in mobile devices
why there is need of development in it to use in all diffrent phones?
why it cant work directly like windows in pc does
and other question all others like bada os, symbien and apple os they all need they also need development or we can use them directly
if sumone didnt understand my question i will explain more
for further explanation>
windows we can install directly in any pc of any company or assembled
but android need development and designed for a seprate product of a specific brand
why?
no1 is intrestd in answring these questions ?
You are just kidding here right?
/Pun intended.
For example
[1] ....
[n] Windows has the complete set of drivers
[n+1] The manufacturer delivers the driver
Fundamentally, you're misunderstanding the situation. Windows does not run on any computer you can throw together. It runs on any computer that you can throw together that matches the evolving, de facto standard that started as the IBM PC.
It won't run on a SPARC Station or a 68k Mac or an IBM 360 or a Wii or a PS3 or, well, a HTC Vision.
Similarly, Android will run on any PC, er phone, er tablet, er, well computer that is basically the same as an existing Android device. The vast majority of the custom development that is, strictly-speaking, necessary for a new device amounts to device drivers. Now, most manufacturers do a lot on top of that to distinguish their product. That's where Sense and MotoBlur and such-like come into play.
A further complication is that storage space and memory are at a heavy premium on these devices. So, it is infeasible to include the incredible variety of drivers and other hardware support that makes a typical Windows or Linux install need several GBs.
Back in the day, when dinosaurs roamed the earth and there were only a handful of PC makers in the world, similar customization was needed. My first PC came with a manufacturer-custom version of DOS 2.1 and Windows 1.1. Is wasn't until at least DOS 3.x (maybe 4.x, that was a long time ago) that a vanilla MS copy had a chance of working. Even then, most peripherals *needed* a custom driver to be used at all. My first mouse is an example. Only way to use it was the Genius Mouse drivers that came with it.
thanks for ur answers guys
Hi Guys,
I would like to create simple app with NATIVE code which run in emulator.
It is not possible to use solution in http://forum.xda-developers.com/showthread.php?t=1299134&highlight=developer+guide because it's use some ARM code.
Do you have any idea how make things work?
Thank you,
Ch.
You actually could (msotly) use that guide, but you would need to recompile the ARM portion for x86. My guess as to the best way to do this would be to use the "Platform Builder" for CE6 or CE7, instead of using the WinMo 6.5 platform as your target. WinMo only shipped on ARM devices, so far as I know, but the underlying OS, Windows CE, is very portable and the tools for it support building on a wide variety of architectures. WP7 is built on a version of CE somewhere between CE6 and CE7.
Otherwise, the stuff about using ATL, making a COM library, using ComBridge from the WP7 app, etc. all still applies.
That all said... why would you want to do this? Do you not have an actual phone to test on? Porting between ARM and x86 isn't *that* hard, but you shouldn't just assume that it'll work in all cases, so it makes a lot more sense, if you're building native code, to build and test for the same architecture you're planning to release on.
Additionally, the emulator may be missing some of the libraries that are present on the phone.
Thanks a lot. I will try it.
This is very beginning of my school project. I want only demonstrate that is possible to run some native code on WP7. Next phase of project will be on real device which I don't have right now..
Well, good luck, but I'd tend to say you're setting yourself up for a risk of failure. I don't know what it will take to use the CE Platform Builder for something like this; I have it installed but have never tried using it.
There may also be a way to compile for x86 using the WinMo build tools; I think some of the old "emulators" for WinMo were also x86 virtual machines (much like the WP7 emulator is). I never tried, though.
Risk of failure? I don't see how. The hardest part of this is finding a way to get his .exe on the emulator device and unlocking it. If he isn't using ARM ASM in his project, "porting" to x86 (or any other processor WinCE supports) should be trivial as long as a sufficiently complete SDK is available. The main issue with x86 on newer Pocket PC-like targets is that there are no Pocket PC SDKs targeting it newer than the Pocket PC 2003 one. If you want to use newer WM5 only features like GPSAPI, you'd probably need to use a CE 6.0 SDK instead.
If he doesn't want to do real time debugging, any of the Windows CE development tools or even 3rd party tools like Bloodshed DevC++, CE gcc/MinGW or FreePascal should all suffice. Windows CE is a very backward compatible OS so even an application targeting the CE 2.11 platform/SDK should still run on WP7 when you are careful to use supported APIs.
If you don't want to install Platform Builder and generate your own custom OS to base an SDK on, there are plenty of SDKs to choose from. Of course, some are worse than others. If you are using the CE 4.2 or 5.0 STANDARD_SDKs, you might become a bit frustrated when you realize they are missing many basic things like the Windows CE SIP APIs. (something that has been available for CE since 1.01 in 1997). But if you don't care about using the latest native CE kernel features and still want to use a newer IDE like VS2005/VS2008, the CE 5.0 STANDARD_SDK should be enough if you are careful. Though, I usually install things like eMbedded Visual C++ 3.0 and 4.0 along with all the Pocket PC and Handheld PC SDKs just in case I need a header or lib file that one or the other is missing.
The following MS SDKs can target x86:
-eVC3
Pocket PC 2002
Smartphone 2002
Handheld PC 2000
-eVC4
Pocket PC 2003
Smartphone 2003
STANDARDSDK_400
STANDARDSDK_401
STANDARDSDK_420
STANDARDSDK_500
-VS2005/2008
STANDARDSDK_500
Another useful x86 SDK I've found is the one for the Allegro CE/DOS Field PC:
http://www.junipersys.com/Juniper-Systems/support/Developers/Allegro-Field-PC/Allegro-CX
Here are some download links to many of the CE SDKs and compilers that were released over the years:
Here are some links to download some of the tools I've mentioned:
http://www.hpcfactor.com/developer/
http://www.microsoft.com/download/en/search.aspx?q=embedded visual tools
You will need SP4 for eMbedded Visual C++ 4.0 if you wish to use newer SDKs with it.
http://www.microsoft.com/download/en/search.aspx?q=pocket pc sdk
Ummm... maybe you missed the part where this is WP7 forum, and the OP is trying to run native code on the WP7 emulator... I can tell from your post that you're not terribly familiar with WP7 development, so here's a few salient points:
Compiling to a .exe is a waste of time. WP7 won't run foreign EXEs, at all, unless you make some pretty low-level changes that aren't possible on the emulator (see "full-unlock" custom ROMs). You have to write a managed app (which compiles to a DLL hosted inside a low-privilege EXE that's built into the system) and a COM library and use the InteropServices ComBridge API. So far we haven't even gotten P/Invoke to work.
WP7, especially Mango, uses a limited set of native APIs and the APIs have changed somewhat in the last decade or so. They aren't supposed to be available to third-party devs at all, so any backward compatibility is basically a convenient accident. Targeting Smartphone 2003 *might* work, but then, it might not. Even a number of WinMo 6.5 APIs aren't available or don't work.
Since it appears that the OP is just going for a demo project, he or she probably is a lot less interested in getting the most powerful APIs, and is probably hoping for something closer to invoking a MessageBox from native code.
All that said, however, it's true that there are WinCE SDKs which can build native x86 code. I'd tend to suggest using the CE6 or CE7 Platform Builders, since they're the most recent (WP7 is somewhere between the two), but there are other options. You probably want to follow the guide as much as possible, including things like using ATL, as it makes writing a COM library a lot easier and that's the best way we currently know for executing native code in WP7.
Hi I'm farely new to xda (over on the Rezound forums mostly). Just recently I've been looking into tablets since my laptop died. My friend has this tablet and from what I've seen and read it's a good buy. Since im replacing my laptop with this I'd need to be able to run exe files. Is it possible to root and mod this to be able to run exe files? Or not since this a an android device? Sorry if this is a basic question again I'm new here. Thanks for help in advance
hmmmm, i dont think thats possible. Unless you install a different OS on it. But with pure android OS, i dont think so. EXE is kind of windows specific. But, what app are you trying to install using an EXE file? Im pretty sure there is an android equivelant for the app.
May have problems with it as exe is a program compiled for x86/x64, not ARM. Same reason why Windows RT & Pro aren't the same. Pro runs on x64 and can run normal exe's. RT runs on ARM and can't run native windows programs.
Sent from my ASUS Transformer Pad TF700T using Tapatalk 2
NickS VR4 said:
May have problems with it as exe is a program compiled for x86/x64, not ARM.
Click to expand...
Click to collapse
And even if it was compiled for ARM, it won't run on Android. EXE is an Windows executable and depends on the Windows runtime libraries.
It would be nice to see someone developer a full blown version of Wine for Android, or if companies like Codeweavers can make CrossOver for Android to allow the use of .exe Windows applications.
I know this is not impossible and very possible if Android is really just a Google controlled version of Linux.
My first and only paid $ purchase of Linux was Xandros 2.0 desktop OS, and one of that OS main selling features was that it had Crossover integrated into it. I could download .exe's and install them on Xandros and run Windows apps. :laugh:
You're looking at two different processor architectures on two different operating systems. You would need a whole lot more than just a crossover/wine for Android. Consider purchasing the Asus Vivo Tab (not the Vivo Tab RT) if you have to run .NET/win32/WinRT executables. Also consider if android has equivalent apps that suit your needs. What kind of Windows programs do you use?
Update:
https://play.google.com/store/apps/details?id=com.max2idea.android.limbo.main&hl=en
If you ran this, installed Trinux on it and ran wine/crossover (provided they even support Trinux) you MIGHT have a chance at running windows apps. But it will likely be insanely slow.
The other option is to buy a new server, install Windows Server 2008/Server 2008 R2, buy a router that supports VPN, get a really good internet service (preferably with symmetrical data rates), buy the XTraLogic RDP app for android, tunnel into your VPN from your android device, set up terminal services on Windows Server, buy one Terminal Services Client Access License, configure RemoteApp in terminal services and run the apps using XTraLogic RDP on your android from your windows server. You would have to keep the server running 24/7.
My point being, even if you could pull this off, it would be incredibly impractical. Consider alternatives, like equivalent apps for Android or an X86 tablet.
this post is relevant
HAVE you ever thought how an app is used and how it is installed ???
Well now you can cause I am here..:victory:
Many of you have probably heard, that Android uses Java. But have you ever heard anyone saying that Minecraft (The Linux .Jar) works on Android? No, you haven’t. And you most likely never will. This is because Android uses the so-called ‘Dalvik-VM’, VM meaning Virtual Machine. Yes, you got that: Virtual machine. Java doesn’t work natively on a computer. It runs in its own little cosy-cub. That’s why many people see such a potential in Java – That’s also one of the reasons the Android team chose to use Java. But because Android (usually) runs on ARM-based devices, one cannot simply install Java to the system and expect everything to work. So instead, they decided to use Dalvik.
Dalvik is the process virtual machine (VM) in Google’s Android operating system. It is the software that runs the apps on Android devices. Dalvik is thus an integral part of Android, which is typically used on mobile devices such as mobile phones and tablet computers as well as more recently on embedded devices such as smart TVs and media streamers. Programs are commonly written in Java and compiled to bytecode. They are then converted from Java Virtual Machine-compatible .class files to Dalvik-compatible .dex (Dalvik Executable) files before installation on a device. The compact Dalvik Executable format is designed to be suitable for systems that are constrained in terms of memory and processor speed. – Wikipedia.
Click to expand...
Click to collapse
Just from reading that, most of you will get a brief idea, of what Dalvik really is. But let’s ask a different question. Why are the apps installed using a Java virtual machine?
This question is actually quite simple to answer. We have all had this problem: We use a program on our beloved computer and all of a sudden, the whole system crashes and requires a reboot. This can have multiple causes, but the main one, however, is that the process had an internal error, while trying to attach to a specific piece of memory. But this can only happen in natively-running apps. Apps that run in a virtual machine can also crash, that’s not what I’m trying to say at all, but when the apps crash in a virtual machine, it’s virtual. It does not affect the system – Only the virtual computer. But as good as a virtual machine can be at some times, it also has many pros. One of the… how can I put this? Superior arguments for not using a virtual machine is speed. Sure, if you’ve got a computer with a bucket-load of power, it should get easy tasks done, right? Not necessarily. A virtual machine still runs as a program which has to request access to different memory locations which then allow the virtually-running program to request access to memory from the virtual machine which then asks the host OS for the needed space. Even though this usually only takes a second or two, per operation that is, it can be really annoying when different requests are pending for an answer. That’s where native code is much better. Native code only has to request for a memory location once, and then never again. That means less queuing and more speed – Ultimately resulting in more responsiveness.
Here comes a question to you, the readers: If you were a program, with the choice to choose whether it gets run in a virtual machine or natively on the OS, which would you choose. To make the decision a bit harder, you are approx. 50MB in size, your main task is IO (In-out) and you process large files (Pictures, renders, archives, videos, etc. …) and you’ve just gone into beta.
hi guys, i wanna turn my phone into a virtual machine so that i can use it in other phone/device but i did not see any means/process to do it.
can anyone tell me how to virtualize my phone for use in other devices? (also ram and storage will be virtual too)
so i wanna ask this question has any one does this before which means did you use to do it?
what do you mean
To run a VM ( guest OS ) in any case a hypervisor OS ( host ) is needed
Look also inside here:
Can You Run a Virtual Machine on a Smartphone? How Does It Work?
With smartphones increasingly becoming capable devices, did it ever cross your mind to run a virtual machine on them? Is it even possible? How?
www.makeuseof.com
to turn your phone into a virtual OS for use in other device
Guan Yu said:
what do you mean
Click to expand...
Click to collapse
xXx yYy said:
To run a VM ( guest OS ) in any case a hypervisor OS ( host ) is needed
Look also inside here:
Can You Run a Virtual Machine on a Smartphone? How Does It Work?
With smartphones increasingly becoming capable devices, did it ever cross your mind to run a virtual machine on them? Is it even possible? How?
www.makeuseof.com
Click to expand...
Click to collapse
yes but i want to make my OS as a guest OS in other android phones but i dont know to make it be a guest OS so that other phones can use it
but do it have hardware acceleration ?
I think you're confused about the concept of a VM.
A VM is a container within a host system which is allocated a portion of the hosts physical resources for the purpose of running a guest OS (this is the VM) within it.
So to say you want to turn your android in to a VM shows clearly your confusion (nobody knows anything until they've learnt it; nobodyo all good!)
For example, it would be more appropriate to ask this:e
Is it possible to create an iOS VM on an Android (host) device with part of my android's resources (memory, storage space, interfaces etc)?
The answer? Ask the experts thisis is my first post.
Take care