ive just realised something. halo ce's minimum requirements are 800mhz processor and geforce 2 gtx and 256mb of ram. a lot of phones have more processing power than that (im mainly thinking about tegra 2 phones like the atrix)
So aside from the direct x issue would it be possible to port halo ce onto android?
thre3aces said:
ive just realised something. halo ce's minimum requirements are 800mhz processor and geforce 2 gtx and 256mb of ram. a lot of phones have more processing power than that (im mainly thinking about tegra 2 phones like the atrix)
So aside from the direct x issue would it be possible to port halo ce onto android?
Click to expand...
Click to collapse
...
thre3aces said:
...aside from the direct x issue...
Click to expand...
Click to collapse
That is kind of a big issue, but maybe. It would have to run as a native application, and it would need to be ported to run on openglES, It would also involve a lot of refactoring to make a java-based interface to the game.
Possible... maybe with the source code, and some talented devs.
Not likely to be coming soon, and then there is the whole IP issue on top of the difficulty of the porting... I know I value my sanity too much to work on such a project.
Not likely. You may think that our current processors are more powerful, but that's not necessarily true. Watt for watt they are, but those non mobile x86 processors run many more instructions than these mobile chips. Also porting a game in x86 to ARM is a massive undertaking, not really worth it.
Sent from my HTC Sensation Z710e using XDA App
ive recently started a thread here:
http://forum.xda-developers.com/showthread.php?t=1195712
wouldnt this help if the interface is java-based?
Yay I have a atrix
Sent from my MB860 using XDA App
This is relevant to my interests. I was wondering why a Diablo 2 style game couldn't be tried. I know my phone far overpowers my old pc. Lol
There are two main technological hurdles to overcomes when porting games from consoles/PC to a mobile platform are:
1. CPU Performance
Just because a ARM CPU has a higher clock-rate than a non-low-power CPU doesn't mean that it is more powerful. ARM is a RISC (Reduced Instruction Set Computing) CPU which means that it is ideal for low-power limited memory devices. However some operations that could be completed in one clock-cycle on an X86 CPU may take two or more clock-cycles an ARM CPU.
Even when comparing ARM CPUs to RISC PPC CPUs included in game consoles, the PPC CPUs tend to implement optimisations that aren't available in mobile ARM CPUs.
2. Graphics
As previously mentioned the main problem is that console and PC games are all developed with OpenGL (or possibly DirectX) not OpenGL ES. Whilst OpenGL ES 2.0 does have support for programmable shaders it's still very limiting compared to what can be achieved with OpenGL (even old versions).
Other Issues
There are also other issues due to the limited (or different) input mechanisms available to mobile device. The smaller physically sized screens are also potentially a issue even if resolutions are similar.
yea ive taken that into account and i know that arm CPUs are slower than an intel/amd counterpart despite higher clock speed. but surely a 1ghz dual core arm cortex a8 is faster than a 800mhz intel cpu.
the open gl thing was something i completely forgot about and know that you mention it i think the whole idea may not be possible. BUT i found this on wiki "PowerVR's Series5 SGX series features pixel, vertex, and geometry shader hardware, supporting OpenGL 2.0 and DirectX 10.1 Shader Model 4.1".
maybe it is still possible.
the screen size is another big issue. but maybe it will be ok on a tablet like the zoom.
We need to start looking into this again
Qualcomm will be releasing the snapdragon 810 soon it supports direct X, is x64, and has 2.7+ghz I think porting pc games is becoming much more of a reality and I would love for someone to give me a reason ditch my pc for gaming
I'd hate to re revive but since android practically is Linux, couldn't we focus on wine for android? That would not only allow people to install direct x in the first place on android phones and tabs but also open up many many possibilities such as a PC version of steam for android. A fun way of this could be taking advantage of Samsung's multi window support. But yes there is no halo for android before wine. Once wine is existant there will be PC on android. And Gabe's 3 will be comfirmed.
I have DREAMED of Halo in my pocket, and this is why I started developing. I thought I could put in the hours to at least get it off to a good start and get people involved. Here are the main issues, and the reasons that I (and I bet any others who have tried) eventually gave up.
It's been pointed out the difference in processing and graphics. X86 processors just run many more instructions than mobile processors. Mobile processors are catching up, and have been more powerful for a long time, but even if one runs a comparitively adequate number of instructions it still communicates differently with graphics processors and ram etc. This alone is intimidating because means that the entire game would have to be redone from scratch and the assets either stolen (yikes) or a partnership arranged with Microsoft.
Enter Microsoft. I love ole Mikey Soft I do, but they are defensive about their Halo. They recently made it almost impossible to install a fan project rework of Halo 1 CE. Any attempts to port to Android would be met with similar treatment. *Cough* they don't trust fans, but they gave Master Chief to 343, killed Cortana, and then made her evil.* That was a long cough. In their defense they have probably not pursued this because of the last point here: porr end product = poor user experience.
So processor, graphics, Mike, and finally porting itself. Borderlands 2 was recently ported onto an arm (mobile) processor. I bought a PS Vita+BL2 bundle specifically to see if I could learn anything about porting other pc games, like Halo. If you've played it you know that it is AWESOME, but has a great deal of glitches, frame rate drops, and even later loading textures than the PC/console version. To be fair I'm SHOCKED that BL2 and all its dlc run as well as it does on Vita. Bravo yo!
My conclusion was that it would have to be completely remade which would require using assets from a zealously guarded IP, and if a partnership was struck the final product would likely be extremely hard to optimize leaving all of us nostalgic fans with dissapointment as we are trying to launch each other to the top of blood gulch but run into such low fps that we can't coordinate the required wart hoggery. This is also why there are several Halo-ish games on Android. It's tough to Port, but much easier to imitate. Sad pandasaurus.
sorry to revive an older thread but heres an apk. i found however its in Spanish if someone can change the language it would be great.
Related
I've been playing around my newly bought Nexus One and one thing I've found is that while graphics and colours when doing most things in general are so vibrant and beautiful to look at, games look decidedly 2nd rate.
Why is that? Is that something to do with the hardware or the APIs provided by Google? It would be nice to see something like Plants vs Zombies on the iPhone. From my limited use I find the graphics on my Nexus One slightly better than the 3GS on everything except when it comes to games, where it is left far behind. I found that really weird.
On a related note, I'm no developer myself, but I'm of the opinion that the success of the platform will depend a lot on 3rd party development, which means a lot of support given by Google to developers. What's the situation like now? How easy/hard is to develop for Android phones and what are the scopes for improvement?
Bump.
Any opinions from Android developers on here?
its because pre nexus one/desire there was only one android phone which could even play good graphics and that was the moto droid .
give the developers some time ... now that more powerful android phones are coming out, we'll see more and more better looking games ... as an example look at raging thunder 2 ... you might not like racing games but that game has exceptional graphics
nothing as good as the iphone yet, because iphone always had a very powerful gpu from the get go so all of iphone game developers have had that much time to play around with them ... android just started getting powerful gpus
hope that answers ... and anyone with more knowledge, feel free to correct me if i'm wrong
alienwolf426 said:
nothing as good as the iphone yet, because iphone always had a very powerful gpu from the get go so all of iphone game developers have had that much time to play around with them ... android just started getting powerful gpus
Click to expand...
Click to collapse
Thanks for the explanation, makes sense. Which new Android phones have good GPUs on board?
Watch out here comes the "Droids"
TT1986 said:
Thanks for the explanation, makes sense. Which new Android phones have good GPUs on board?[/QUOTE
Galaxy S doing video game demo:
http://www.youtube.com/watch?v=dpP5QljEqow&feature=related
Galaxy S vs. Iphone 4:
http://3gsiphone.com/jailbreak-and-...-vs-samsung-galaxy-s-video-review-part-1.html
Reading about GPU:
http://androidandme.com/2010/03/new...bird-chip-to-have-3x-gpu-power-of-snapdragon/
Click to expand...
Click to collapse
jhnstn00 said:
TT1986 said:
Thanks for the explanation, makes sense. Which new Android phones have good GPUs on board?[/QUOTE
Galaxy S doing video game demo:
http://www.youtube.com/watch?v=dpP5QljEqow&feature=related
Galaxy S vs. Iphone 4:
http://3gsiphone.com/jailbreak-and-...-vs-samsung-galaxy-s-video-review-part-1.html
Reading about GPU:
http://androidandme.com/2010/03/new...bird-chip-to-have-3x-gpu-power-of-snapdragon/
Click to expand...
Click to collapse
Whoa! That is good.
Excellent stuff, good times ahead then.
Click to expand...
Click to collapse
its mostly due to the fact that a lot of older phones (eg. the htc hero) dont have gpus whatsoever. the moto droid had a gpu, therefore could run good graphics in a 3d game. the samsung galaxy S has a great gpu on the cpu die and will run some really impressive games on it, in fact, it could run much better looking games than on the iphone.
for a art developers view
Ok well I'm a 14+ year vet of games industry on console games, in technical art production, but my view would be the same as a programmer I would suspect. Just like when doing a multi-platform release back in the ps, saturn, n64, dreamcast etc... days, you dont really want to do lots of work for all platforms. Neither do you want to cut your biggest market chunk out by them not getting the experience others get with better hardware. This takes me back to PC days when we have powerVR primary GPU's, or ATI, or Nvidia, or matrox, well the list got big. The graphics capabilities sometimes had to be addressed almost as if they were different platforms (this is b4 HAL abstraction sweetness and todays DX domination). I suppose at the end of the day, I would not choose to dev only on android for the SGS, that cuts some 99% of the market out. What apple has done is have fixed hardware and Development LIBs for that hardware. This makes it very easy to give all iPhone users the same experience. With android, too many variances in hardware and capability, also maybe hits taken from phone operator system additions and services.
So in my opinion, you cant have such and open system that can have lots of variations and get games in numbers and quality that we see on iphone. Not cause android phones cant do it. Cause not all of them can etc, and it's too varied.
Just my opinion
deanwray said:
So in my opinion, you cant have such and open system that can have lots of variations and get games in numbers and quality that we see on iphone. Not cause android phones cant do it. Cause not all of them can etc, and it's too varied.
Just my opinion
Click to expand...
Click to collapse
I see what you mean. It's a lot like Console vs PC isn't it? I'm a PC gamer but i can understand why publishers/developers prefer console because they don't have to deal with a large variety of hardware. In other words, optimizing gaming experiences on Android phones could be harder than on iPhones because of the same reason.
Lets hope the difference isn't too big though.
TT1986 said:
I see what you mean. It's a lot like Console vs PC isn't it? I'm a PC gamer but i can understand why publishers/developers prefer console because they don't have to deal with a large variety of hardware. In other words, optimizing gaming experiences on Android phones could be harder than on iPhones because of the same reason.
Lets hope the difference isn't too big though.
Click to expand...
Click to collapse
Porting from PC to console and vice-versa is probably easier than iPhone to Android, though.
I remember Valve saying that porting The Orange Box over to the Xbox 360 was very easy. They said something like they put the PC code -- with a few changes like control configuration -- through a 360 compiler and the game was up and running.
Also, with the PC, you have just two major processor brands (Intel and AMD) and two major graphics card brands (NVIDIA and ATI). The APIs and stuff are also far more mature.
google could do what Palm did.
Palms PDK allows porting of iPhone games to the Pre in a matter of hours.
theineffablebob said:
I remember Valve saying that porting The Orange Box over to the Xbox 360 was very easy. They said something like they put the PC code -- with a few changes like control configuration -- through a 360 compiler and the game was up and running.
Click to expand...
Click to collapse
That's probably because it's made in XNA or some other cross platform code. That's one of the things pulling me toward WP7 (that and Zune Pass ).
Devs can write one code base, and in a matter of days have it ported to all major Microsoft software. As an Android dev myself, that would be amazingly useful did I also produce desktop software. I mean think about it, write an app for PC, then also target XBOX360, ZuneHD, normal Zunes, and WP7 all with essentially one codebase with very few small changes between them. That's some amazing stuff.
I toyed with XNA before and it is a beautiful way to code. Not to mention that the C# it uses is essentially Java with a few modifications.
I dont understand much about the architecture of software, im asking this because i dont get it, why the processors of our devices cant understand the new kernel and the instructions of WP8. in my head, its exacly the same saying that our pc desktops processors couldnt run the new Windows 8. i would like to know what are the barriers in this case. So guys, what they would be in your opinion?
This was posted by a dude on Reddit.
Disclaimer: I work at Microsoft. But not on Windows Phone.
Windows Phone 7 was built on top of Windows CE kernel (the same as Windows Mobile, and for those who are young enough to remember, Pocket PC and Windows CE Handhelds - this was in 1997).
Windows Phone 8 is moving to NT kernel, the same one as your desktop operating system is using. NT kernel requires radically different hardware - specificaly, TLB mappings in pre-v7 ARM CPU contained logical addresses and this does not work very well on symmetric multiprocessor OS.
So older ARM CPUs did not work with NT kernel, and move to the different OS kernel required radical redesign of the OS. Also, of course the desktop/server OS kernel requires significantly more RAM.
With the large generational shifts it is not uncommon for OS to lose compatibility with old software. These shifts do not happen very often, but they do happen.
For example, Windows NT did not support PCs with 286 CPUs (which were rather common when it shipped), or with less than 12MB RAM (something that is easily upgradeable on a PC, but much more difficult with the phone). Similarly, Windows NT 3.5 dropped support for 386 family entirely.
For Microsoft to have, as you call it, "foresight", it would probably have to drop Windows Phone 7 altogether and go to NT-kernel based solution. It would not have made Phone 8 to appear any faster, however - it would just have lost 2 years.
Click to expand...
Click to collapse
http://www.reddit.com/r/gadgets/comments/vdjwe/designed_to_fail_all_windows_phone_7_handsets/c53rh01
I think that answers your question.
Beautifuly!!! Thanks!!
m125 said:
This was posted by a dude on Reddit.
I think that answers your question.
Click to expand...
Click to collapse
This answer is a complete bull****! MS already run NT kernel on the arm cpus for a years! This guy is referred to the "desktop" kernel but of course Apollo/WinRT/ (whatever the MS ****heads will call it in the future) has a different (from the desktop OS-es) kernel.
What the "older arm cpu" he's mentioned about??? Nokia Lumia 900 has Qualcomm APQ8055 Snapdragon cpu (google or wiki for that). What the hell "pre-arm"???
Sorry, it's not an explanation, just a stupid bull**** from ignoramus. He definitely needs a "radical redesign" of his brain
Oh c'mon, if our CPUs were the same old Qualcomms from Android 1.6 days I would believe it, but they are last-gen Snapdragons, goddamit!
I'm pretty sure Microsoft could support it as easy as adding two drivers, but it won't. Specially since all phones are the exact same hardware, with WP7.
The point about TLB mappings might be valid... if it weren't for the fact that these are all single-CPU, single-core processors (in WP7 devices). There's no need for a kernel to support SMP. In fact, you don't *want* a SMP kernel on such a processor; there are performance optimizations you can make for single-hardware-thead systems.
Historically, Microsoft has actually shipped two copies (per architecture) of the NT kernel on their desktop OS install media, one for SMP and one for single-core. The installer would use the correct one for the hardware. There is no technical reason that they couldn't do similar with WP8, shipping one NT kernel for single-core phones (which would be able to run on ARM v6) and one for multi-core (which would require ARM v7).
As for the RAM issue, that's a red herring. The RAM requirements of a basic MinWin system are far below the half-gig of WP7 devices. Even adding the phone's extra libraries and user interface, it should still be possible to implement msot if not all of the software features of WP8 while leaving a comfortable overhead for running and app or two at a time (that being all that WP7 officially allows anyhow).
@sensboston: The first that I'd heard of Microsoft running NT on ARM was 2010, when multi-core ARM v7 was already available.
Actually, I agree that the guy doesn't seem to know what he's talking about; according to Wikipedia (unreliable but in this case I see no reason to expect incorrectness), the Snapdragon processors use the ARM v7 instruction set anyhow.
@GoodDayToDie, last two days I've heard a lot of very different (but all BS and incompetent) explanations from MS employees... Seems like guys in marketing department don't have enough engineering knowledge, and can't announce any realistic-looking reason. But may be they don't have to: for general public some unknown "martian" words like "TLB mapping", "GDT and IDT" etc. sounds very "reasonable"
guilhermedsx said:
Oh c'mon, if our CPUs were the same old Qualcomms from Android 1.6 days I would believe it, but they are last-gen Snapdragons, goddamit!
I'm pretty sure Microsoft could support it as easy as adding two drivers, but it won't. Specially since all phones are the exact same hardware, with WP7.
Click to expand...
Click to collapse
I really agree with that!! how loudly do we have to yell? But in my point of view nothing about it will be done, microsoft need money and need for yesterday, and yes they will sacrificate the poor white sheeps (that would be us) and watch them bleed just to launch "a completely new OS" that our phones "doesnt support".
I've searched high and low for this but can't find any information. Does anyone know what is the source of the Android that comes pre-installed on various Chinese/Taiwanese tablets with Intel Atom (x86) processors? Is an image available somewhere? I'm pretty sure it can't just be Android-x86 as these tablets often use Atoms with PowerVR SGX 5xx graphics which IIRC are not supported by Android-x86 .
Like as not, you guessed right the first time...
I realize this is a pretty late response, but...
What you are probably looking for is Android-x86.org, in fact, after all.
I would not be one bit surprised, if any cheap-ish Chinese x86 tablet, you find, is running a knock-off of the Android-x86 project. The Chinese manufacturers may list atoms with PowerVR graphics chips, but what's listed, and what's functionally supported, when you receive the tablet may be two entirely different things.
That said, Android-x86 runs reasonably well, if you don't mind tweaking the kernel config to fit your hardware, before compiling. (Reasonably <> perfectly, of course...)
XTCrefugee said:
I've searched high and low for this but can't find any information. Does anyone know what is the source of the Android that comes pre-installed on various Chinese/Taiwanese tablets with Intel Atom (x86) processors? Is an image available somewhere? I'm pretty sure it can't just be Android-x86 as these tablets often use Atoms with PowerVR SGX 5xx graphics which IIRC are not supported by Android-x86 .
Click to expand...
Click to collapse
tekowalsky said:
Chinese manufacturers may list atoms with PowerVR graphics chips, but what's listed, and what's functionally supported, when you receive the tablet may be two entirely different things.
Click to expand...
Click to collapse
The fact that the cedarview/clover trail Atoms have PowerVR chips is down to Intel. That's how they're designed. It's not something an OEM could change, Chinese or otherwise.
Without hardware graphics support, cedarview Atoms are pretty hopeless. They simply aren't capable of doing things like HD video, or pretty much anything related to 3D graphics. There's some limited Linux support, but aside from that it's Windows only if you want a capable system. Without an Android driver (which Android-x86 lacks) it really wouldn't even be worth trying, believe me.
Most likely (as others have said in other threads) these tablets run Android-x86 with some custom (probably unlicensed) PowerVR driver
I know the current answer is not possible with current released source code (only support for tegra 2/3). And a 2nd answer is nothing official is announced regarding any shield source code release. However I want to throw this out there as a topic of discussion.
How likely do you guys feel Linux for tegra (straight Linux not android and possibly dual boot /w android) is going to find its way to the shield and what it could mean for the shield?
For those that don't quite see the point, look into the openpandora project. While desktop experience computing is a major advantage of having straight Linux in that form factor of a handheld, arguably the greatest advantage it also offers is direct access to the HAL (hardware abstraction layer; Frame buffer etc etc) it gives a significant boost in performance in emulators and games over android even with its use of the NDK. Removes even the most minor latency in games for the most purest of experiences.
Games / emulators can be written in straight c, c++, assembly, or a plethora of different programming languages without being wrapped in java or using the multiple abstraction layers android uses and you get the full potential of your hardware.
This isn't an android hate post by any means, but more of a promotion of Linux for tegra and what it could benefit if paired with shield.
So thoughts? chances of seeing it supported? Interest? Ideas? Potential additional uses?
johnsongrantr said:
I know the current answer is not possible with current released source code (only support for tegra 2/3). And a 2nd answer is nothing official is announced regarding any shield source code release. However I want to throw this out there as a topic of discussion.
How likely do you guys feel Linux for tegra (straight Linux not android and possibly dual boot /w android) is going to find its way to the shield and what it could mean for the shield?
For those that don't quite see the point, look into the openpandora project. While desktop experience computing is a major advantage of having straight Linux in that form factor of a handheld, arguably the greatest advantage it also offers is direct access to the HAL (hardware abstraction layer; Frame buffer etc etc) it gives a significant boost in performance in emulators and games over android even with its use of the NDK. Removes even the most minor latency in games for the most purest of experiences.
Games / emulators can be written in straight c, c++, assembly, or a plethora of different programming languages without being wrapped in java or using the multiple abstraction layers android uses and you get the full potential of your hardware.
This isn't an android hate post by any means, but more of a promotion of Linux for tegra and what it could benefit if paired with shield.
So thoughts? chances of seeing it supported? Interest? Ideas? Potential additional uses?
Click to expand...
Click to collapse
I am unaware of a L4T build, and it likely would be lacking some significant features (like touchscreen support). That said, I also disagree with the statements about being faster due to direct access to the HAL. While it is true that L4T would give you direct access to the frame buffer, what it *doesn't* give you is any GPU support. The GPU turns into nothing but a pixel pusher. All rendering must be done in software on the processor. While this isn't a big deal for older emulators on platforms which don't support native 3D, games that do support the GPU for more than pixel pushing can run faster with less latency because the system isn't as busy rendering the graphics.
agrabren said:
I am unaware of a L4T build, and it likely would be lacking some significant features (like touchscreen support). That said, I also disagree with the statements about being faster due to direct access to the HAL. While it is true that L4T would give you direct access to the frame buffer, what it *doesn't* give you is any GPU support. The GPU turns into nothing but a pixel pusher. All rendering must be done in software on the processor. While this isn't a big deal for older emulators on platforms which don't support native 3D, games that do support the GPU for more than pixel pushing can run faster with less latency because the system isn't as busy rendering the graphics.
Click to expand...
Click to collapse
If L4T is built for tegra 4 and not specifically for the shield, it would undoubtedly be missing quite a few device specific drivers. I'm sure it's a bit of work to port that stuff over from android source. My understanding it's not the brunt of the work such as the chipset and gpu, having full support would make things much easier I'm sure. Thanks for the info about it probably not being worked on though, it's a little disappointing, but at least I won't have my hopes on it being released in the near future. Hopefully L4T isn't a forgotten project, and one can only hope it eventually finds it's way to being officially supported on shield.
One thing that was suggested in not so many words was possibly opening up the 3d GPU driver source for tegra 4. I am speaking out of turn for sure and should probably sit patiently until something is publicly released, and base my comments off something solid rather than hearsay, but if true it would hopefully allow for the hardware acceleration rather than just a pixel pusher. I'm out of my lane in questioning it and giving a comparison, but for the openpandora they have at least some level of gpu hardware acceleration with their powervr GPU because Texas Instruments provided it. It may only be at the same level as your talking about and just taking some of the load off the CPU rather than processing complex graphics but the difference between the point in which they implemented hardware accelerated graphics and non-hardware accelerated was quite noticeable, at least on that platform. I know they don't have full GPU driver source on that platform either just compiled binaries unfortunately. I know they would have appreciated the same level of support that was suggested for tegra 4.
I wouldn't say only older emulators and 2d games would see a benefit from straight linux support. There is some newer emulators like PPSSPP that runs visually faster on linux than it does under android on the same hardware and same clock speed and kernel. Also highly optimized emulators like pcsx rearmed that runs significantly faster on linux than android (retroarch) That's just performance clock for clock on the same hardware. That also doesn't go into the audio and input lag (however insignificant) it is still detectable under android even if the program uses the NDK. Now I would accept that it's only because of the lack of the same background processes and services, but I imagine and have been told it's more than that. It is directly linked to android's use of it's HAL's
Thanks for your insight and detailed answer, it's much appreciated, hopefully it will continue, it's good to have someone who knows what they're talking about to talk to that won't just flame you or blow you off.
Raw linux on the shield would make for a damn sweet machine but most of your reasons for doing so can be done on a rooted android device anyway (with some trickery you can bypass dalvik - yes, dalvik, android is not actually java - entirely and run native code on the linux kernel, but its not easy).
Do you have any more information about that? I've seen chrooted Linux on android is that what you're talking about?
Sent from my SPH-L900 using Tapatalk 4 Beta
resurrecting the 2nd oldest post in this catagory to show this
http://www.youtube.com/watch?v=sAvXLqPKxow
source here
https://github.com/linux-shield/kernel
Knew it would be possible, if only he had the drivers to wrap that up fully.
SixSixSevenSeven said:
Knew it would be possible, if only he had the drivers to wrap that up fully.
Click to expand...
Click to collapse
So far I just followed his instructions on the kernel, haven't setup a rootfs yet but if you want a copy of what I got so far you can follow below. Looks like it builds just fine.
http://forum.openhandhelds.net/index.php/topic,448.0.html
Disclaimer: This is an open discussion thread for How to do virtualization on Android! It's not a reference or guide! But hope this thread can lead us towards making a way to do it!
Intro: Once phones was a tiny piece of electronic device which was mainly used to talk and sending text messages! (I am talking about mobile phones off course! )
Then here comes smartphones like the symbian one and then iphones and Android!
They opened a lot more way to do on a device rather than only talking or texting!
But still we needed to rely on laptops or desktops to do extensive tasks which we couldn't do (yet) on smartphones!
The main reason was the lack of technology or the memory and processing power limitations on these device!
I remember I bought my first Redmi 2 at a cost of 200$ back in April 2015 which featured quadcore Qualcomm processor, 1GB of RAM and 8 GB of internal storage space!
But now the time has changed! Technology advanced exponentially! After 3 years of my first Xiaomi device, I bought another one (Mi A1) with almost the same price! Whuch features double (on the basis of cores) processors and 4X RAM and 8X internal spaces!
In the mean time on the mainstream computing counterpart, virtualization technology becomes so popular that if not all but most of the servers runs based on it! We have also docker now!
We can now use or test any software/OS on any device (mainstream computers off course) by the grace of virtualization!
On the other hand, Android devs still needs to do the hard work to port ROMs let the OS itself! And yet we can't run Windows on a Android device!
But wait! Android is also a Linux! Isn't it?
So, if Linux can run QUEMU/KVM, why not Android?
And most of the Android SOCs now are 64bit!
So, can't we just make it happen? Can't we just find a way to do virtualization and run any OS on a virtual environment right in our hand?
May be!
I don't know if any guys working on this or not!
But here's how to:
1) Enable virtualization support on kernel
2) Make an apps for Android for manging the virtual machines (like VirtualBox, VMWare etc.)
I think the Android kernels (most of them) supports virtualization already!
The hardest part is to make it compatible with the frontend Android! Which brings the apps and interfaces!
I know there's wine exist for Android! But that's just a complete different thing what I am talking about!
And I wasnt able to run wine on my tissot (Xiaomi Mi A1)!
Thanks everyone who is reading!
Give your valuable opinion and ideas!
Hope someone like @CosmicDan can make it!
ARMv8 (every phone) doesn't have hardware virtualisation extensions, so it would be as slow as emulation.
For that, we already have QEMU and KVM. But it's too slow to be of any practical use.
If you want proper virtualisation, you need ARMv8.1, which no phone has.
CosmicDan said:
ARMv8 (every phone) doesn't have hardware virtualisation extensions, so it would be as slow as emulation.
For that, we already have QEMU and KVM. But it's too slow to be of any practical use.
If you want proper virtualisation, you need ARMv8.1, which no phone has.
Click to expand...
Click to collapse
Hmm! I just realised the hardest part: it's ARM and not x86_64!
ProttoyX said:
Hmm! I just realised the hardest part: it's ARM and not x86_64!
Click to expand...
Click to collapse
That's emulation, not virtualisation.
You can use QEMU, Bochs or DOSBox to emulate x86 (x86_64 is probably impossible, idk but it's pointless to try). But it's dog slow and always will be.
CosmicDan said:
That's emulation, not virtualisation.
You can use QEMU, Bochs or DOSBox to emulate x86 (x86_64 is probably impossible, idk but it's pointless to try). But it's dog slow and always will be.
Click to expand...
Click to collapse
Hmm! Got it! This thing came into my mind when I was reading about servers based on ARM! Wondered if they provides virtualization/container service or not! And ARM provides more cores than x86_64! I guess it's it's related to RISC/CISC thing! Not sure though!
ARM servers uses ARMv8.1?
AND PLEASE DON'T MIND ABOUT ENDING EVERY SENTENCE WITH (!)! PLEASE!
No one can always be rude! ?
I am surely not!
Again thanks for what you’ve done for the tissot and other staffs! You are genius! ?
ProttoyX said:
Hmm! Got it! This thing came into my mind when I was reading about servers based on ARM! Wondered if they provides virtualization/container service or not! And ARM provides more cores than x86_64! I guess it's it's related to RISC/CISC thing! Not sure though!
ARM servers uses ARMv8.1?
AND PLEASE DON'T MIND ABOUT ENDING EVERY SENTENCE WITH (!)! PLEASE!
No one can always be rude! ?
I am surely not!
Again thanks for what you’ve done for the tissot and other staffs! You are genius! ?
Click to expand...
Click to collapse
Yes those ARM servers would be 8.1. It's not so much a RISC vs CISC thing but more an SoC vs CPU thing. Our devices are SoC's - sure they have many GHz and cores but they're still a lot slower that a proper CPU which has countless of extensions designed for accelerating tasks, and have more IPC capability and other such things (in short GHz/core count is comparable across different platforms or architectures, it's more relative than that). Our SoC's simply don't have those extensions that would make this feasible.
CosmicDan said:
ARMv8 (every phone) doesn't have hardware virtualisation extensions, so it would be as slow as emulation.
For that, we already have QEMU and KVM. But it's too slow to be of any practical use.
If you want proper virtualisation, you need ARMv8.1, which no phone has.
Click to expand...
Click to collapse
Every ARMv8,and even ARMv7 has.On v8 it's called EL2 while on v7 it's HYP mode.However the biggest headache is that most SoC vendors do not allow users to enter it even with bootloader unlock.
On Qualcomm there are no way except a low level powerful exploit. On Exynos it is possible,needs a specific SMC to trustzone,and can be done only with an unlocked bootloader with custom kernel.
fxsheep said:
Every ARMv8,and even ARMv7 has.On v8 it's called EL2 while on v7 it's HYP mode.However the biggest headache is that most SoC vendors do not allow users to enter it even with bootloader unlock.
On Qualcomm there are no way except a low level powerful exploit. On Exynos it is possible,needs a specific SMC to trustzone,and can be done only with an unlocked bootloader with custom kernel.
Click to expand...
Click to collapse
do you have any references links on this? maybe a cve for the qualcomm exploit?