Windows 8 on x86 android devices?

Search This thread

J94w

Senior Member
Jul 26, 2011
54
12
I wonder if it would be possible to do an emulation inside of windows on arm

What I am thinking is that the full windows 8 ARM is installed on a tablet, and then when you hit "desktop" it would switch on the emulator to do a x86/x64 emulation

That would be wonderful in the fact that the Metro Apps can take granted of the ARM, while the desktop is used to run normal everyday software which makes less development

And it could be vice versa for a desktop; running an emulator for the Metro Apps, and having full windows 8 installed on the machine

With tech getting better with arm quad core processors, and more than 2GB of ram (virtual or not), plus a good GPU, I think that would be possible and awesome (of course dont forget that 1TB solid state drive ;))
 

dazza9075

Senior Member
Jul 22, 2007
2,858
493
Suffolk
Except its not that easy. Take x86 and emulating some small device like a phone, or old games console, is fairly straight forward, x86 has the grunt to do it and the device doesn't need much emulation its self, what i mean by that is that the device has limited uses.

Emulating x86 on an arm CPU would be like tugging an oil tanker with a pedal boat, of course that does depend to what extent you need to emulate it, and I think there is the problem, there is so much scope with x86 that Ms couldn't easily do it and support it as well as cover all its bases, more possible is that someone can develop a limited use emulator, for a specific use or set of functions

Sent from my HD2 using XDA Windows Phone 7 App
 

spunker88

Senior Member
Sep 8, 2006
1,318
334
Upstate NY
I thought of this as well, and we wouldn't even have to wait for Windows 8 the same could be done with Windows 7. I would love getting an Intel phone in a few years when the SoCs are a little faster. Then use something like a Motorola Lapdock to dock and you get a full x86 Windows experience. Instead of a laptop its on your phone, it wouldn't be your primary system but a pocketable netbook. This is the future once technology catches up and hopefully Microsoft can bring this idea to market.
 
  • Like
Reactions: mtmerrick

J94w

Senior Member
Jul 26, 2011
54
12
I would have thought that arm would be able to compile and run with out a hitch, especially with the new quads coming out.. who knows maybe intel will bring something usable.

But really, how come a ARM processor cannot handle both an emulator and a actual windows for arm? I thought they were they same thing, just slower compared to a x86 (well not now since the new quads).
 

dazza9075

Senior Member
Jul 22, 2007
2,858
493
Suffolk
I would have thought that arm would be able to compile and run with out a hitch, especially with the new quads coming out.. who knows maybe intel will bring something usable.

But really, how come a ARM processor cannot handle both an emulator and a actual windows for arm? I thought they were they same thing, just slower compared to a x86 (well not now since the new quads).

you need to have an understanding of how a CPU works to understand that its very difficult to emulate the whole thing.

an ARM CPU is a RISC CPU, the idea being that by making it simple it can be faster. Which is true to an extent, in a number of scenario's. It was seen as "the" solution back in the 90s but ultimately failed to gain any traction in the desktop market, hence we have a x86 dominated market.

What RISC did bring is the ability to have high numbers of cycles in a very short pipe line making it very efficient is some cases, hence why it has such a low power requirement and is great for small devices like phones and also why its taking Intel so long to develop a good x86 ultra low power CPU

But this is also its failure, because x86 is a longer pipe, or fatter if you'd rather, it can do more per cycle than a ARM CPU, a good way of thinking about it is to say it has more grunt, more bang per buck.

So lets take emulating a x86 CPU, even tho you can have 4 threads running at once on an ARM CPU it doesn't mean it could stitch those 4 threads together to emulate a single x86 instruction. or to put it another way, take a knitted woollen jumper, have 4 people grab a different strand and pull it apart, easy right? ok. now ask those 4 people to put it back together again... suddenly a lot harder isn't it!

a 1GHz ARM and a 1 GHz x86 CPU are running the same number of cycles a second, but the volume of work PER cycle is significantly less in the ARM, in the same way a current gen AMD 2GHz CPU is slower than a Intel 2GHz CPU, same speed, but it has less ability.

So take all that, combine it with the fact that x86 is VERY complex and you get an idea why emulating it on a weaker CPU is a lot harder than you may think.

the other way around is easy tho, ARM on x86 would be slower but because x86 has more grunt and ARM isn't as complex its a lot more feasible.

Im not saying x86 on ARM cant happen, im saying that its not going to be very good.

Oh the other thing you mention about just compiling it, what you have here is a program, not just written in a different language but also for a different system, now by using a cross platform programing language you get a head start but it is still trying to talk to the hardware in x86, all those calls would need to be intercepted and converted in to a ARM equivalent,

a simple program could easily be done with a basic emulator, but some x86 programs would likely be very complex, meaning the emulator would need to be setup to emulate anything the program might throw at it, which in turn means a much harder piece of work and the reason MS probably doesn't want do it, its also the reason that even if it did work it would be slow (in some cases) because the ARM CPU is RISC and your trying to make it do the work of a x86, it might take dozens of cycles to achieve what the x86 CPU can do in a single cycle.

I hope that helps, ive simplified things somewhat before folk jump up and down, :) but that is essentially the problems it would face.
 
Last edited:

J94w

Senior Member
Jul 26, 2011
54
12
Thanks, that makes more sense

Well I would love to see if Intel can bring something better than ARM for mobile devices especially with x86

But it would also be cool to see what they can do on ARM, even if it will be slower
 

dazza9075

Senior Member
Jul 22, 2007
2,858
493
Suffolk
Thanks, that makes more sense

Well I would love to see if Intel can bring something better than ARM for mobile devices especially with x86

But it would also be cool to see what they can do on ARM, even if it will be slower

Definitely.

Interestingly what intel might end up doing is going backwards and using older Pentium cores, or even P2/3. slapping several of them on a single die, shrink them to 22nm and turn down the juice, essentially turning it in to a many core CPU it would need some sort of controlling CPU dealing with all the threads because the OS wouldn't be setup to handle it and it would need the newer SSE and co, instruction sets added but it should mean a significant reduction in power usage that can scale depending on workload, ie turn 75% of the cores off if not needed.

but yes, they need to do something, im sure the tech people in Intel R&D are going mental with working with low power x86 and cursing all the additions over the years :D
 

Rakeesh_j

Senior Member
Jan 13, 2010
526
88
Microsoft (and the hardware manufacturers of current Android devices) don't want this to happen on ARM devices, because having an open bootloader and a myriad of Linux distributions would hurt their ecosystems. All ARM W8 tablets will come with locked bootloaders by specification, just like Android ones. Existing Android devices and others like the TouchPad will be very difficult to port this to because the bootloader security is different from current devices.

That's not true, only certain Android OEM's lock their bootloaders, namely HTC and Motorola. Samsung bootloaders for example are not locked.
 

ShadowEO

Senior Member
Mar 15, 2012
493
136
31
Columbus, Ohio
That's not true, only certain Android OEM's lock their bootloaders, namely HTC and Motorola. Samsung bootloaders for example are not locked.

Agreed, but Microsoft has made UEFI security a mandatory requirement for Windows 8 ready devices (whether this can be disabled is up to the manufacturer though). Technically though, this isn't about bootloaders and more about UEFI firmwares which are (supposedly) the next generation replacements for a BIOS.

Hopefully we won't have to see this as too restricting (meaning hopefully manufacturers will give a way to disable this, which is not prohibited by the Microsoft Windows 8 Ready specification) and will continue to be able to use whatever OS we want with our Windows 8 Ready PCs.

How did we get on this topic anyway? I thought we we're contemplating the overhead of an x86 emulator on an ARM tablet..

Either way, it would take significantly more instructions to make up even a simple instruction that's found in an x86 processor, which would be pretty slow performance wise, not to mention very inefficient as opposed to porting applications to the ARM architecture.

Sent from my LS670 using XDA
 

blackhand1001

Senior Member
Sep 3, 2011
1,302
685
Agreed, but Microsoft has made UEFI security a mandatory requirement for Windows 8 ready devices (whether this can be disabled is up to the manufacturer though). Technically though, this isn't about bootloaders and more about UEFI firmwares which are (supposedly) the next generation replacements for a BIOS.

Hopefully we won't have to see this as too restricting (meaning hopefully manufacturers will give a way to disable this, which is not prohibited by the Microsoft Windows 8 Ready specification) and will continue to be able to use whatever OS we want with our Windows 8 Ready PCs.

How did we get on this topic anyway? I thought we we're contemplating the overhead of an x86 emulator on an ARM tablet..

Either way, it would take significantly more instructions to make up even a simple instruction that's found in an x86 processor, which would be pretty slow performance wise, not to mention very inefficient as opposed to porting applications to the ARM architecture.

Sent from my LS670 using XDA

For x86 they made it mandatory that you must be able to disable it as well as add additional signatures. They did the opposite on ARM, saying that you must not be able to disable it nor add signatures.
 
  • Like
Reactions: timmytim

dazza9075

Senior Member
Jul 22, 2007
2,858
493
Suffolk
Lets wait an see shall we, since RT is an OEM device only there is a good chance security will be higher on it, even more so if MS subsidisers some of the build cost to keep prices down, which I wouldnt rule out by the way! If they do that to keep prices low then they have every right to keep it locked down to them, of course it doesn't matter as the gods on here will fix it ;-)

Sent from my HD2 using XDA Windows Phone 7 App
 

Rakeesh_j

Senior Member
Jan 13, 2010
526
88
Lets wait an see shall we, since RT is an OEM device only there is a good chance security will be higher on it, even more so if MS subsidisers some of the build cost to keep prices down, which I wouldnt rule out by the way! If they do that to keep prices low then they have every right to keep it locked down to them, of course it doesn't matter as the gods on here will fix it ;-)

Sent from my HD2 using XDA Windows Phone 7 App

The problem with relying on exploits is that there's no guarantee you'll find an exploit. And even if you do, closing it is merely a patch away.
 

dazza9075

Senior Member
Jul 22, 2007
2,858
493
Suffolk
The problem with relying on exploits is that there's no guarantee you'll find an exploit. And even if you do, closing it is merely a patch away.

Where there's a will there's a way, in my opinion I couldn't care less, I'll be getting an x86 tablet, I don't see the point in getting a tablet with with its balls chopped off so lock down isn't a big issue


Sent from my HD2 using XDA Windows Phone 7 App
 

blackhand1001

Senior Member
Sep 3, 2011
1,302
685
When did they say you must be able to disable it? As far as I'm aware they only allow disabling it to be optional. And an OEM copy of windows will refuse to boot if it is disabled.

"20. MANDATORY: On non-ARM systems, the platform MUST implement the ability for a physically present user to select between two Secure Boot modes in firmware setup: "Custom" and "Standard". Custom Mode allows for more flexibility as specified in the following:

a) It shall be possible for a physically present user to use the Custom Mode firmware setup option to modify the contents of the Secure Boot signature databases and the PK.
b) If the user ends up deleting the PK then, upon exiting the Custom Mode firmware setup, the system will be operating in Setup Mode with Secure Boot turned off.
c) The firmware setup shall indicate if Secure Boot is turned on, and if it is operated in Standard or Custom Mode. The firmware setup must provide an option to return from Custom to Standard Mode which restores the factory defaults."
 

Rakeesh_j

Senior Member
Jan 13, 2010
526
88
Where there's a will there's a way, in my opinion I couldn't care less, I'll be getting an x86 tablet, I don't see the point in getting a tablet with with its balls chopped off so lock down isn't a big issue

I've heard that argument before, as well as "if man can build it, man can unbuild it" but I've been in many hacking/development scenes where this has fallen apart. Ultimately yes, exploits always exist, because in theory you could just rebuild the whole thing from scratch without the forced signature checks. However the lengths you must go to achieve these exploits can become impractical to the point that people just give up and the development just quietly dies off.

The tivo scene is a big example of this. I used to be a very active member of the modding scene where we would run our own scripts on tivos to add features (for example, I was the very first person to transfer a recording from one tivo to another tivo, long before tivo themselves later added that feature.) However by the third generation it became necessary to do SMC rework just to run custom code. This slowed development on the S3 platform to a crawl, but it still existed to a degree.

In the S4 generation, the CPU itself actually checks for signatures, which then goes along down the chain of trust (bios > kernel > initrd etc.) I figured out a way around this, but the method requires building a daughterboard, and it's just not worth doing. There is no development going on at all for the S4 platform.

The same thing can happen with any platform.
 
Last edited:
  • Like
Reactions: dazza9075

Product F(RED)

Senior Member
Sep 6, 2010
9,883
2,105
Brooklyn, NY
Agreed, but Microsoft has made UEFI security a mandatory requirement for Windows 8 ready devices (whether this can be disabled is up to the manufacturer though). Technically though, this isn't about bootloaders and more about UEFI firmwares which are (supposedly) the next generation replacements for a BIOS.

Hopefully we won't have to see this as too restricting (meaning hopefully manufacturers will give a way to disable this, which is not prohibited by the Microsoft Windows 8 Ready specification) and will continue to be able to use whatever OS we want with our Windows 8 Ready PCs.

How did we get on this topic anyway? I thought we we're contemplating the overhead of an x86 emulator on an ARM tablet..

Either way, it would take significantly more instructions to make up even a simple instruction that's found in an x86 processor, which would be pretty slow performance wise, not to mention very inefficient as opposed to porting applications to the ARM architecture.

Sent from my LS670 using XDA

That's funny. I have an ASUS M5A97 Mobo in my computer that does UEFI; it has a mouse and keyboard interface with a full GUI rather than traditional BIOS.
 

Top Liked Posts

  • There are no posts matching your filters.
  • 4
    I would have thought that arm would be able to compile and run with out a hitch, especially with the new quads coming out.. who knows maybe intel will bring something usable.

    But really, how come a ARM processor cannot handle both an emulator and a actual windows for arm? I thought they were they same thing, just slower compared to a x86 (well not now since the new quads).

    you need to have an understanding of how a CPU works to understand that its very difficult to emulate the whole thing.

    an ARM CPU is a RISC CPU, the idea being that by making it simple it can be faster. Which is true to an extent, in a number of scenario's. It was seen as "the" solution back in the 90s but ultimately failed to gain any traction in the desktop market, hence we have a x86 dominated market.

    What RISC did bring is the ability to have high numbers of cycles in a very short pipe line making it very efficient is some cases, hence why it has such a low power requirement and is great for small devices like phones and also why its taking Intel so long to develop a good x86 ultra low power CPU

    But this is also its failure, because x86 is a longer pipe, or fatter if you'd rather, it can do more per cycle than a ARM CPU, a good way of thinking about it is to say it has more grunt, more bang per buck.

    So lets take emulating a x86 CPU, even tho you can have 4 threads running at once on an ARM CPU it doesn't mean it could stitch those 4 threads together to emulate a single x86 instruction. or to put it another way, take a knitted woollen jumper, have 4 people grab a different strand and pull it apart, easy right? ok. now ask those 4 people to put it back together again... suddenly a lot harder isn't it!

    a 1GHz ARM and a 1 GHz x86 CPU are running the same number of cycles a second, but the volume of work PER cycle is significantly less in the ARM, in the same way a current gen AMD 2GHz CPU is slower than a Intel 2GHz CPU, same speed, but it has less ability.

    So take all that, combine it with the fact that x86 is VERY complex and you get an idea why emulating it on a weaker CPU is a lot harder than you may think.

    the other way around is easy tho, ARM on x86 would be slower but because x86 has more grunt and ARM isn't as complex its a lot more feasible.

    Im not saying x86 on ARM cant happen, im saying that its not going to be very good.

    Oh the other thing you mention about just compiling it, what you have here is a program, not just written in a different language but also for a different system, now by using a cross platform programing language you get a head start but it is still trying to talk to the hardware in x86, all those calls would need to be intercepted and converted in to a ARM equivalent,

    a simple program could easily be done with a basic emulator, but some x86 programs would likely be very complex, meaning the emulator would need to be setup to emulate anything the program might throw at it, which in turn means a much harder piece of work and the reason MS probably doesn't want do it, its also the reason that even if it did work it would be slow (in some cases) because the ARM CPU is RISC and your trying to make it do the work of a x86, it might take dozens of cycles to achieve what the x86 CPU can do in a single cycle.

    I hope that helps, ive simplified things somewhat before folk jump up and down, :) but that is essentially the problems it would face.
    1
    Before anyone says anything, no, this is not another topic asking the stupid, worn out question "can I haz w8 on my kindle fire/nook/transformer prime/galaxySII/ect"

    At CES there are several android devices being shown off with x86 processors: Intel atom CPUs. Would it be possible, provided internal storage is big enough, to be able to run the full version of windows 8 on these pieces of hardware? I can't think of any reasons why not, and being able to run full versions of x86 windows off of a cell phone is just amazing. IMHO it'd be worth the price of a seat of windows 8, and dual booting with android ICS sounds incredible. So, is there anything I'm missing? Or would the hardware support it fairly easily? I can't think of any roadblocks, other than the annoyance of installing off of microSD.
    Why bother about it being on x86, windows 8 will run on ARM architecture too if I'm not mistaken
    1
    Not sure why it would be illegal. If you own a license of the OS, you should be able to run it on whatever you want - unless, like the Apple stuff there's some kind of EULA that states that you specifically can't. I seriously doubt MS would bother to screw with people who tried anyway.

    The Developer Preview of W8 is x86/x64 only anyway. Hopefully the beta coming in February will Feb will have arm support. I'm hoping to get it working on a Galaxy Tab 10.1 but who knows?

    One potential caveat. I've heard that the ARM version will only work with Metro apps. If that's the case, it will be far less useful. Forget running all that excellent software you already have and know an love.

    Greg
    1
    if it has an atom processor, it should be. as with anything cross-platform, drivers would be an issue, but that shouldn't be too hard to overcome.
    1
    I thought of this as well, and we wouldn't even have to wait for Windows 8 the same could be done with Windows 7. I would love getting an Intel phone in a few years when the SoCs are a little faster. Then use something like a Motorola Lapdock to dock and you get a full x86 Windows experience. Instead of a laptop its on your phone, it wouldn't be your primary system but a pocketable netbook. This is the future once technology catches up and hopefully Microsoft can bring this idea to market.