Microsoft's x86 on ARM64 Emulation: A Windows 10 Redstone 3 Fall 2017 Feature (zdnet.com)
Mary Jo Foley, reporting for ZDNet:Since January 2016 (and maybe before), there's been talk that Microsoft was working on bringing x86 emulation to ARM processors. Sources of mine are now saying that this capability is coming to Windows 10, though not until "Redstone 3" in the Fall of 2017. Here's why this matters: Microsoft officials continue to claim that Continuum -- the capability that will allow Windows 10 Mobile devices to connect to external displays and keyboards -- is going to be a key for the company, its partners and its customers. There's been one very big limitation to Continuum so far, however: It only allows users to run Universal Windows Platform (UWP), and not full-fledged x86 apps. What if an ARM64-based device could run x86 apps via emulation, the same way that the WOW (Windows on Windows) emulator allowed 32-bit apps to run on 64-bit Windows? That would make Windows 10 Mobile, which as of now, continues to support ARM only, and Continuum a lot more interesting, especially to business users who need certain Win32/line-of-business apps.
Not so much use for a lot of the legacy (especially legacy in-house applications) x86 apps that aren't being updated and which will perform perfectly adequately even under emulation on ARM.
Rather than just provide x86 emulation on ARM, we can use x86 emulation on ARM to run Oracle's x86 Java implementation. We can run the jRuby interpreter in that. And we can use jRuby to run this ATARI 2600 emulator.
I bet a lot of you folks can suggest a more absurd one than that.
Bruce Perens.
This is Microsoft. Crippling it is part of the plan.
Seven puppies were harmed during the making of this post.
emulation of x86 for apps not sufficient, that doesn't make drivers work.
Microsoft had the same basic thing on Windows NT 4 for Alpha. It had the FX!32 x86 emulator. IIRC it was a dynamic recompiler that saved off the recompiled code for faster operation the next time the app was run. Doesn't .Net also do this?
... that you had enough memory in your phone.
Don't You?
Sent as ripples into the electromagnetic field. No single photon has been harmed in the process.
It depends on how the emulation works. The emulator that Apple branded as Rosetta (and then had to stop selling once IBM bought the company that made it) had some compatibility code that let you expose native functions to emulated code. If you're spending a lot of time in system libraries and these are native versions exposed to the emulator then even an emulator that gets to 50% native speed (not unrealistic these days) will give good performance. Add to that, most desktop apps haven't been CPU-limited for quite a while.
I am TheRaven on Soylent News
Only one more year to wait to see how well, or poorly. x86 programs run on Windows Mobile devices. The problem will be that, I presume, that only 0.1 percent of Windows Mobile will have the horsepower to actually make this a useful thing to do. Looks to me like a Surface Phone could come out at the end of 2017 that will do the job with outstanding hardware, a high price, and will sell very well. Anything else will be ignored.
I was worried that I wouldn't be able to play minesweeper on the new ARM processors.
Is there some reason to not go this route? It seems a lot more obvious to me; no emulation needed. Continuum on Windows 10 Mobile on x86 solves most of these problems. I think Microsoft's last best chance for Windows Mobile to be anything other than a footnote is to support corporate desktops, and x86 phones that are also a corporate workers desktop seems like something they can manage in short order. At that point, good old-fashioned Microsoft inertia takes over and plenty of people start using their work platform as their personal device as well.
I don't see it conquering the world, but it's probably a profitable niche at least.
Keep in mind, a 10 year old single core PC is equivalent to a 3 year old dual core netbook.
An emulator that does some decent JIT is probably going to be reasonably fast. I don't know if it's 25% or 50% or 75%, but I don't think it's 10%.
“Common sense is not so common.” — Voltaire
3 year old dual core netbook
I thought the laptop companies had already stopped making netbooks before November 2013. (Source, from 3 years and 10 months ago)
What do apps use to talk to the hardware?
Drivers!
Brought to you by the geniuses that realized the nightmare of executable code in emails
the preceding comment is my own and in no way reflects the opinion of the Joint Chiefs of Staff
Is there anything about this better than an RDP solution now?
You mean other than not having to pay hundreds of dollars per year to a cellular carrier for a data plan so that you can run RDP while riding the city bus or otherwise out of range of Wi-Fi?
I can't even get qemu to emulate a raspberry pi faster than the pi itself on a Core i7 processor. I don't suppose going the other direction would work any better.
They quit calling them netbooks, yes.
But companies are still actively making and marketing 12" laptops and convertible tablets with ultra-low power (aka slow) x86 processors.
Dell offers laptops with Windows 10 and Intel Core m3-6Y30 0.9 GHz. That processor is from last year, it has a base frequency of 900 MHz and a boost up to 2.2 GHz. If you run anything other than Windows 10 on it, it probably won't boost though.
“Common sense is not so common.” — Voltaire
I remember way back when, when Apple shifted Macs from 68000-based processors to the Power PC. Instantly, the fastest 68000-based Mac was the 68000 emulation mode of the Power PC. And native was faster still.
(-1: Post disagrees with my already-settled worldview) is not a valid mod option.
I have a 8" x86 tablet running Windows 10, and it may be one of the worst mobile devices I've ever possessed. I got it for free with the purchase of a 13" laptop from the Microsoft store, so I can't bitch too much, but oh my god is Windows 10 a terrible terrible terrible small screen experience. I wish I could unlock the thing and installed x86 Android on it. As it is, it sits in a drawer and maybe, if I feel like paying for the mini HDMI cable and a Bluetooth keyboard, I might throw it on my TV to run VLC
The world's burning. Moped Jesus spotted on I50. Details at 11.
Is there much need for this, even in the corporate world?
I think what's much more useful in the corporate world is screencasting, so that the screen is essentially agnostic and you can project any video source on it, not be limited to x86 phone apps. That way if you want to use a windows mobile app with attachable keyboard, that's fine. If on the other hand you use an iPhone or Android app, it will still work just fine.
Microsoft has to face facts: They've lost the mobile market and have to create standards that others are compelled (either due to corporate environment or actual user needs) to follow.
Help! I'm a slashdot refugee.
Maybe other apps? It's hard to tell.
It's not like he's ever making sense anyway.
---
According to the latest ruleset, this post should be modded as Vorpal Flamebait +5.
Some pretty major changes have been going on since Satya took over.
Like buying companies like Nokia and then firing everyone then dropping the product(s). Yeah. Big changes.
Seven puppies were harmed during the making of this post.
IIRC, Ballmer was running things when Windows RT was out. Satya was managing Azure
"terrible terrible terrible on screen experience"
FTFY! :)
I think the branding of "netbook" became toxic, so we don't see it anymore. But the equipment still exists, people still buy them. sub-$300 tiny underpowered laptops are still offered by the usual suspects. In my experience netbooks are a waste of money, and I usually recommend people save up until they have around $650 to spend for a laptop, depending on their needs.
I don't think Chromebook sales are enough to really matter, compared to PC sales they are around 2% of the market. Probably closer to 10% (wild guess) for the really low-end. And while I think a Chromebook with a crappy cpu is a more usable device than Windows 7, 8 or 10 on the same crap cpu, being able to run Windows apps usually wins out. (I'm a Linux guy, but most people don't make the same choices as I do for buying gear)
There is an unconfirmed rumor that new ChromeOS development is ending, and the team is moving into a maintenance only mode. I'm still looking for conformation on what is currently only a word-of-mouth buzz in the valley. (people switching teams at Google, leaving Google, etc) It may only be a thinning of team that has grown too large.
“Common sense is not so common.” — Voltaire
As a professional developer for Android OS, kernel and driver. Sometimes Android makes stupid choices and lives with those stupid choices for several releases.
Microsoft's core VM team for .NET is probably pretty good at designing and writing JITs.
But Microsoft is unlikely to dump any resources in doing this right unless they have a key customer paying them to do it.
“Common sense is not so common.” — Voltaire
But companies are still actively making and marketing 12" laptops
Therein lies the rub. A 12" screen starts to climb out of the size class where a laptop can fit in a bag that doesn't scream "this is an expensive laptop; please steal it and take it to a pawn shop".
sub-$300 tiny underpowered laptops are still offered by the usual suspects. In my experience netbooks are a waste of money, and I usually recommend people save up until they have around $650 to spend for a laptop
I have a 10" Dell netbook from six and a half years ago, but it's showing its age, and I fear not being able to find replacement parts once it finally does bite the dust. Is there a market for laptops that are smaller than 12" but not underpowered?
I don't think Microsoft would ever allow that. Back in either 2010 or 2011, Microsoft decided that they want windows to turn into a crappier version of iOS, only "better" because it runs on desktops AND phones. Sound stupid? That's because it is.
Remember the windows 8 start menu? That was just a preview of what Microsoft wants, and the backlash just told them to slow down, but they still have their hearts set on controlling 100% of the user experience. This can also be thought of as a realization of the goals of palladium.
At any rate, Microsoft doesn't want to see any more native win32 applications, they want app developers to use crappy, API limited, and ugly UWP so that it is the ONLY future of windows. They also can revoke end users' ability to sideload at any time, which means they can eventually extract a 30% cut of every single copy of every single application that every windows user runs.
If they're planning to let you run arbitrary win32 exe's on ARM, why don't they just provide you with the tools to port your win32 exe instead of relying on X86 emulation? Or do they think their emulator works as a sandbox to mitigate the security issues in win32 code?
Posted from my Android phone. Oh, I can change this? There, that's better...
Normaly, the less powerfull architecture is virtualized/emulated in the more powerful one.
That's why you could run (whay back when) X86 on alpha, but not the other way around.
If we asume ARM64 in Mobiles, X86 in Workstations, Desktops and Laptops, and a mix of both in tablets, we see that ARM64 is the weaker architecture, NOT BECAUSE OF THE ARCHITECTURE ITSELF (that's open to debate), but because of thermal disipation limits and power (battery) limitations.
Therefore, the emulation will probably be ARM64 emulated on top of X86 Hardware.
Besides, just to top it off, Microsoft is an ARM licensee, so they can implement the ISA however they see fit (including via emulation), while emulating X86 on top of ARM may open a can of legal worms with both intel (x86-32) and AMD (X86-64).
*** Suerte a todos y Feliz dia!
...no one will buy one.
Microsoft would have been better off to choose an Intel mobile chipset and worked on this other stuff. Then when it was ready they could switch to ARM if they liked. However, chances are that even if ARM does get x86 emulation it will be terrible. It'll eat batteries and it will chug. Microsoft should also be tooling up their Developer Studio to spit out universal binaries using LLVM or similar. If an exe is compiled natively on first invocation then it doesn't matter what processor it runs on and performance should be good on all of them.
Intel just dumped 10 billion dollars into a sink hole trying to run ARM out of town only to end up running back home with their tail between their legs. AMD might have again have a competitive product on the desktop next year but they've been in poor shape for a long time. I can't imagine AMD management wanting to sign up to repeat Intel's expensive failures. Maybe if Microsoft offered a deal where they took all the risk/cost off their hands this might sign on. But Microsoft doesn't seem like they want to actually stick their neck out there and do the hard work to fight it out in mobile so I doubt they would offer that. They just want to show up and win because for some reason they think people actually want Windows on their phone.
Last year I got one of those, mainly because it included a 1 year subscription of Office that I could keep in case the hardware was not good enough.
I'll agree that the small screen (1280x800) experience was not great, even after upgrading from 8 to Windows 10. For me, not being able to use Firefox (or Chrome) using just the touchscreen was what convinced me to sell the hardware and just keep the O365 subscription.
The tablet was a Lynx 7" with an atom CPU just like what powered the Tesco Hudl2 - a very good budget Android tablet. Overall it was OK hardware, but not really worth having, compared to any comparable mini PC that could be plugged in to the TV.
Wouldn't that hybrid CPU that AMD is making for both x86 and ARM work for Microsoft in this case?