Microsoft: No Windows 8 ARM Support For x86 Apps 413
jcombel writes "It turns out Microsoft's app compatibility will be limited to one architecture or another. Yes, Windows 8 will run on your ARM tablet, but your x86 Office 2003 will not. In his explanation, Steven Sinofsky reasoned, 'If we allow the world of x86 application support like that, or based on what we call desktop apps in our start yesterday, then there are real challenges in some of the value propositions for system on a chip,' he said. 'You know, will battery life be as good, for example? Well, those applications aren't written to be really great in the face of limited battery constraints, which is a value proposition of the Metro style apps.'"
Well... (Score:5, Funny)
Re: (Score:3)
Re: (Score:2)
Indeed. We're talking about Win8 running on devices where extra cycles mean shorter battery charge life. Throwing in an emulation layer means a whole lot of extra cycles.
Re: (Score:2)
That's just it, aren't they still using .NET? That doesn't compile to native, except for a JIT compiler, which still leaves the assemblies cross platform (other tan tags that say 'do' or 'don't' run on platforms x, y and z.
Re:Well... (Score:4, Insightful)
http://www.smartplanet.com/blog/smart-takes/nvidia-eyes-arm-based-supercomputers/13343 [smartplanet.com]
But Intel is a fierce competitor and they will not sit around while someone eats their market share. They have crushed the competition before (Cyrix, PowerPC, DEC, AMD) and they will attempt to do so again. To me what is different about ARM is that the adoption is happening automatically and organically in the market place. It is not a force-fed situation with expensive marketing campaigns and an army of sales people.
http://www.dailytech.com/IDF+2011+Intel+Looks+to+Take+a+Bite+Out+of+ARM+AMD+With+3D+FinFET+Tech/article22719.htm [dailytech.com]
Emulation has worked on Macs (Score:3)
it would be just idiotic to emulate another architecture.
Yet Apple did exactly that for the 68K to PowerPC transition and for the PowerPC to x86 transition. Microsoft is still doing that for the .NET Framework (x86, PowerPC, or ARM emulating a hypothetical processor that runs IL), and all major browser makers are doing that for JavaScript. Even Nintendo did that for its Classic NES Series on Game Boy Advance (ARM emulating 6502).
Re: (Score:2)
it would be just idiotic to emulate another architecture.
Yet Apple did exactly that for the 68K to PowerPC transition and for the PowerPC to x86 transition.
No they didn't, they just bundled both binaries inside the same file.
Re: (Score:2)
You are ignorant. Don't contradict someone without doing even a modicum of research.
The early PowerPC Macs emulated the 68k to run 68k binaries. The early Intel Macs came with Rosetta, to run PowerPC binaries.
Re: (Score:2, Informative)
Re: (Score:3)
Re: (Score:2)
Re: (Score:2)
Maybe you don't.
I'm actually impressed by Microsoft making this move. At one time NT supported a bunch of different architectures and you had to compile for each of them. It sounds like they are getting back to their roots.
If you want your app to run everywhere, write to the virtual machine. If you want the advantages native code gets you, cross compile. None of this is new.
I'm sure somebody will make an x86 tablet to run Windows 8. The trade off will be a 3 hour battery life rather than an 8 hour battery l
Re: (Score:2)
The API is the same, so it just comes down to instruction set differences; Apple helped ease their transition from 68k to PPC with "fat" binaries, and then from PPC to x86 with "universal" binaries. Basically, you write your software so that it's compatible with both instruction sets (and since they're both little endian, this should be pretty trivial for most programs), and the compiler compiles for both instruction sets and bundles that into one binary.
As for emulating another architecture, well, again, t
Re: (Score:3)
Re: (Score:3)
Seems to me that his won't be an issue, though I don't know anymore about it that anyone else. While the libraries the API accesses will be compiled differently based on architecture, the APIs themselves ought to be the same, I'd think. So your code calls win.api.dosomething(). When the call happens on an ARM machine it goes to a dosomething.dll library which is compiled for ARM and returns a value. When the call happens on an x86_64 machine it goes to dosomething.dll which is compiled for x86_64 and re
Re: (Score:3)
I think you need to take a look at the architecture slides again. Look right in the middle under Metro style apps. They couldn't place it in any more of a central role THAN RIGHT IN THE CENTER.
Re: (Score:2)
You could always buy one of the numerous x86 tablets that has come out to date, some of which are actually available with hardware that might run Windows 8 OK, and run Windows 8 on that. I've heard good things about AMD's current offering, although the last time I messed with an AMD laptop, I got burned hard and I'm still bitter.
Re: (Score:3, Insightful)
Re: (Score:3)
Re: (Score:2)
Re: (Score:2)
Then either spend a stack of money [motioncomputing.com] to get am x86 tablet that does have an 8 hour battery life, or find the developer of the app you want to run, and ask if they can compile it with the /ARM switch turned on.
If your so concerned about having an 8-hour tablet that runs your desktop software, then those are really your only choices. An iPad / Android / WebOS / Chrome tablet won't do it.
Re:Well... (Score:4, Insightful)
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
You are dealing with a touchscreen, most Windows apps are not designed for that and will be really annoying to use anyhow.
Re: (Score:2)
Re:Well... (Score:4, Insightful)
>>It's so odd how the people that want a tablet with the functionality of a real computer are looked at like they're bizarro
Seriously. When I complained on Slashdot that tablets aren't as good as PCs at relatively simple and common things like web browsing, email, and office apps, I got flamed for having my expectations set too high.
Really? I'm not asking a tablet to be able to play DXHR or Crysis or something. My 100MHz Win95 computer could handle email, web browsing, and word processing smoothly. Is it too much to expect a Honeycomb tablet, with its 10x faster Tegra core, to be able to do these very simple things smoothly? Instead, there's weird input lag all over the place and while it works for short trips away from home, I'd never want to be stuck using it for long periods of time.
Re:Well... (Score:5, Insightful)
Your 100MHz Win95 computer could not handle "web browsing" on today's internet. If you visit plain text pages maybe, but not if you're going to be doing what most people do, which is facebook, youtube, etc.
I doubt your 100MHz Win95 computer could "smoothly" handle a basic news site today.
Re: (Score:2)
Well...
I've got a 64MB Pentium-90 machine here under my desk. It dual-boots between FreeDOS and Damn Small Linux. The DSL side has a copy of Firefox 2.0 that can run somewhat bearably. I would never try running Flash nor playing videos, but it's OK for web fora and downloading files.
FreeDOS has Arachne for Web browsing, but honestly it's kind of a joke.
Re: (Score:2)
Your 100MHz Win95 computer could not handle "web browsing" on today's internet. If you visit plain text pages maybe
Most of the pages I look at are text sites. The others are once they reach my desktop, thanks to adblocker and noscripts
Dial-up and low-color (Score:2)
My 100MHz Win95 computer could handle email, web browsing, and word processing smoothly. Is it too much to expect a Honeycomb tablet, with its 10x faster Tegra core, to be able to do these very simple things smoothly?
Your 100 MHz PC was also handling indexed-color pixels with no alpha blending as well as the far simpler web page layouts that were common at the time. Furthermore, "smoothly" was interpreted in context of the 0.02 to 0.05 Mbps Internet connections that were common in the Windows 95 era.
Re:Well... (Score:4, Funny)
It's like the people that were going off about how iPad's don't need USB functionality, insinuating that there is no point to having USB on the tablet. Uh, what? Who could possibly see more connectivity or functionality as a bad thing?
Connectivity is good, but not with a churlish port like USB, which is so often used by the hoi polloi.
We need to have the patience to wait while Apple develops a proprietary "iPort", which will provide exclusive connectivity to approved devices that meet the elite standards of the iPad and its users.
Re: (Score:2)
A tablet is not, and should not be, a PC.
Why? Seriously, when was this decided? I hear it all the time, how people that desire more out of a tablet are somehow wrong in wanting that because "it's not a PC." What the hell is a "PC"? Why does a tablet have to be placed outside of that group? Is a laptop a PC? Is a Macbook Air a PC? But it's portable!! But wait, it has a keyboard!!! OH NOES!!!!
Come on. The argument that tablets, by definition, should not do one thing or the other is ridiculous...tablets are a Laptop with the keyboard remove
Re:Well... (Score:5, Insightful)
TBH, it doesn't take a genius to work it out. If you're using the ARM instruction set, your apps aren't going to run on x86, and vice versa (run nicely, or run at all). Although it's theoretically possible (Turing-complete and all that), the performance hit by doing so would be the same as just emulating the other environment (which kinda makes trying to "save battery" - the least of my concerns with a Windows tablet - a waste of time, because you'll be doing extra work to emulate something else).
The way Apple got around it was to make a "dual-binary", where you could have one executable contain two sets of executable code - one for ARM, say, and one for x86 - and with formats like ELF, this is a cinch. You execute whatever one you can and hope the programmers had the foresight to include both.
But, again, without a recompile, that old version of Office will always be x86 or have to be emulated as if it WAS an x86 program. Did you think MS and every software manufacturer were going to go and recompile every Windows program in existence just so you can run it on Windows 8? And have every business in the world moan that Windows isn't compatible with itself even though MS told it it was? Only MS-controlled and newly-written software would be available that way, and most businesses would rather ditch the OS than be forced down the path of which software they MUST run.
No, they'll produce new programs which *COULD* have run on both but they are deliberately deciding not to, but in two different versions. That way, if the ARM one doesn't work / sell, they can blame the platform. There is nothing stopping them doing what Apple did with newer programs except possibly an Apple patent or two (and the two have a lot of patent-sharing between them, not to mention each owning parts of the other). This way, they get two lots of money from you and/or they can make ARM seem like a waste of time because "it can't do Windows" rather than a new market they could swamp overnight.
They were never intending to make it work properly on ARM, the same way that the Windows NT ports supported Intel IA-32, MIPS R3000/R4000, Alpha, PowerPC, Itanium, AMD64 and ARM. It's a niche and they rely on third-party applications to sell their OS - they have to keep *some* backwards compatibility and businesses churning out x86 Win32/64 code or their operating system has nothing to live for any more. A lot of money goes Microsoft's way because of the way you "have" to buy Windows on the machine. If they start selling things on ARM, they would have to try to get that same sort of exclusivity / reputation for necessity that they have on x86, and it wouldn't fly.
I have a feeling it would also show up their programming teams because I very much doubt that most of their code would run on different endianness, etc. processors, different memory architectures, etc. because it's just so focused on x86.
MS never wanted to put "Windows" as most people know it on a tablet - they know it wouldn't work for them and cause them more hassle than it was worth, even if they introduced new terminology. People would still want to know why they can't put their ten-year-old copy of Sage on it, and why the OS was bundled with the machine they bought if they couldn't do that.
In theory, there is NOTHING stopping them porting Windows proper to another architecture, including all their top applications, and nothing preventing a situation similar to Apple's Universal Binary, or even just an emulator from doing this job with relatively little effort beyond what they have (e.g. you have an NT codebase on this platform already!). The problem is that it will destroy their marketing strategies - they won't be able to ensure they're bundled on every ARM machine, and if they were, they would get a million-and-one criticisms about how its not as fast as Windows on x86 and why did they let people waste money on it?
Re: (Score:2)
Re: (Score:2)
We're talking about tablets here, battery life is a big concern
Why? Oh yeah because you want to ask your device to do something that it's not designed for. Market won't tolerate a bigger battery because then that adds weight/size problems. But you want to give the illusion of being able to do more, while actually doing less. If your computing needs are so intensive then there's a whole category of device that already exists called a "laptop" that will give you both the horsepower and battery life you want.
This is basically a case of "I want my cake and I want to eat
Re: (Score:2)
Android uses it with Dalvik .NET/CLR (which I believe is what the GP was hinting at)
Windows Phone 7 uses it with the
Dunno if apply uses it or not.
So... why not?
Re: (Score:2)
Libcpu [libcpu.org] is trying to do static translation between binaries, writing binary (ARM, X86, etc) frontends to LLVM, which then compiles to another architecture.
Maybe MS (or ARM) could give them a hand?
Re: (Score:3)
If only there were a mainstream language that runs on nearly every platform out there... [java.com]
Re:Well... (Score:5, Insightful)
Losing one for a hundred sounds good
Maybe.
But if we are to believe this. then MS will have:
None of which will run each other's apps, and only one of which is even close to compatible with existing Windows software.
And they're planning to let this loose on the general population?
I'm getting some popcorn. This should be fun to watch.
Re:Version of Windows (Score:3)
Don't you mean:
"Windows Starter, Windows Home Basic, Windows Home Premium, Windows Small Business, Windows Enterprise, Windows Azure with Synch, Windows Media Edition"? (Or some such)
All THAT times 3 tablets!
Re: (Score:3)
Comment removed (Score:4, Interesting)
Re: (Score:3)
Re: (Score:2)
Well... Mac OS and iOS both have same name apps (Pages, Numbers, Keynote, Safari, etc.) and they don't work on the different platforms.
Fork Windows? (Score:3)
Fork Microsoft, Fork U 2!
But what we all want to know is... (Score:3)
Re:But what we all want to know is... (Score:4, Informative)
This has already been answered by MS, and the answer is "mostly". Windows 8 for ARM is restricted to "Metro" apps. The available languages for developing Metro apps are C++, C#, VB.NET, or JS+HTML5. All of these, except for C++, can run on both platforms without changes.
Re: (Score:2)
See, I knew that Microsoft would insist that the ARM platform was special in some way that justified turning it into a walled garden. So if the two bits of information I've heard: Metro Apps will only be available via Microsoft's Store, and Win 8 on ARM can only use Metro Apps, then it really looks like Microsoft is trying to bring the worst of crippled, DRM-laden computing up from the smart phone level to the tablet and likely even the PC eventually (since Metro Apps will be locked similarly on the PC.)
Re: (Score:2)
Translation: (Score:2)
Waah porting is hard and stuff!
Re: (Score:2)
Waah porting is hard and stuff!
Except they will port Office to ARM. TFS says you won't be running Office 2003 on ARM, which we all knew anyway. Running an x86 emulator on top of an already severely underpowered CPU wasn't every in the cards.
Re: (Score:2)
A dual core GHz arm core is underpowered?
Re: (Score:2)
In what world do you live that you actually think this is a reasonable question?
We're talking over an order magnitude in difference in capability.
Re: (Score:2)
In what world do you live where 1 dual core 1GHz processor is not enough for common or even very uncommon user tasks?
If you were talking about a compute farm or a server then yes what I asked would be an unreasonable question.
But we are talking about legacy x86 user apps! Games will either be ported to the new architecture or simple casual gaming stuff. You're not using this tablet for rendering Toy Story 3, you're not using it for playing the latest FPS, you're not using it to solve airflow across an aircr
Re: (Score:2)
But you should be comparing it to a 2003 processor, and so the 2012->2015 tablets that it will be running on should vastly out perform them.
Even then, it's a word processor! How much CPU can it possible need? *ducks*
Re: (Score:2)
And it's not like they're technically incapable of making x86 code work on other platforms - WOW for IA64, anyone?
Emulation works OK when you're emulating a slower CPU on a faster one; it totally sucks ass when you're emulating a faster CPU on a slower one.
Certainly they could detect Windows calls in the x86 software they're emulating and then make direct calls into Windows APIs rather than emulating the whole of Windows, but anything CPU-intensive will run at the speed of a disabled slug.
Awesome... (Score:3)
Re: (Score:3)
Re: (Score:2)
As for tablets - no one has noticed that this is all about vendor lock-in?
We noticed. It's about tablets, so we assume lock-in comes standard, so why state the obvious?
Re: (Score:3)
The obvious solution is to avoid changing OS. Why would you want to?
For one thing, a non-free operating system's publisher will eventually stop publishing security updates. For another, hardware eventually fails, and the hardware that replaces it may not run the old operating system.
Re: (Score:2)
So, once again we're going to end up having to replace a metric shit ton of applications because of an OS change.
Not every piece of software needs to be produced by Microsoft. Why can't a 3rd party emulator fill in the need?
Digital signature (Score:2)
Why can't a 3rd party emulator fill in the need?
Because Microsoft will likely decline to digitally sign it, just as Apple yanked a rerelease of a Commodore 64 game from its App Store because the player could reset the emulated C64 to the REPL of ROM BASIC. People would have to pay $99 per year for a developer license in order to run the emulator.
Re: (Score:2)
"So, once again we're going to end up having to replace a metric shit ton of applications because of an OS change."
Who is this "we" of which you speak? I didn't buy a fucking WinCE tablet and I'm not buying a fucking Windows 8 tablet either. A tablet is a notebook which is missing vital pieces, not a productive enterprise tool.
Re: (Score:2)
his is a NEW edition of Windows
Again, people only buy Windows because it runs Windows apps... and ARM Windows won't run Windows apps unless the developer recompiles them.
Metro will be cross compatible.
That's because Metro apps are basically just web pages (HTML + CSS + Javascript). So why would I buy Windows to run them?
Re: (Score:2)
Only on ARM! .... How many desktops/laptops are you going to replace with ARM based machines?
Do you complain that you can't run full OSX apps on an Ipad/Iphone? ... This is a NEW edition of Windows - Metro will be cross compatible.
The moment that ARM becomes bigger, I am sure we will see more compatibility, .NET apps will most likely receive a update that makes them run (when not using pinvoke), and give it time, we will probably see x86 emulators.
Yeah, just wait for the CEO (or other managers) to come in with his Win8 ARM Tablet, and try to do some of his daily tasks, only to find that he can't get the application to work, at which point he calls up tech support and simply says "It's Windows 8."
Re: (Score:2)
Win 8 is a tablet/phone OS and reflects MS's growing conviction that tablets are the future.
I remember Bill Gates holding up a tablet PC and telling me it was the future of Windows.
Ten years ago.
No shit sherlock (Score:4, Informative)
Applications written for x86 will remain x86, applications written cross-platform (e.g.
Re: (Score:3)
Re: (Score:2)
Re: (Score:2)
Only if you used the fat binaries - you couldn't just take a PowerPC only binary and run it on an x86 Mac.
Re: (Score:3)
You could, using Rosetta. It translated ppc -> x86 instructions on the fly. Support for that was dropped in Lion though.
Re: (Score:2)
Re: (Score:2)
And Microsoft never has.
But even Apple hasn't tried to let you run x86 desktop apps on an ARM tablet. And with good reason.
Re: (Score:2)
Given the way that MS prefers software to be packaged and distributed, though, I'm not sure whether or not they would necessarily want a direct equivalent to the "fat binary".
MSI format software installers don't actually execute directly, they are handl
Microsoft: No Windows 8 ARM Support (Score:2)
No problem, I was going to use my fingers anyway.
*Bada boom tish*
Right so... (Score:2)
Re: (Score:2)
To make you buy more memory?
Well, duh. (Score:5, Insightful)
Having failed for years to sell anyone a phone that looks like the Windows desktop, Microsoft will now make the Windows desktop look like their phone. It's backwards but it's Microsoft.
I took a peek at the Windows 8 developer preview yesterday. Nothing about it makes sense when you try to look at it as a PC desktop. Everything about it makes sense when you assume that Priority One is to "kill Google" and "kill Android." Keep this in mind when looking at Windows 8.
Re: (Score:2)
Intel: Windows 8 on ARM will not run legacy x86.
Slashdot: well, duh
MS: What Intel said is "not factual and misleading"
Re: (Score:2)
In that case a much simpler desktop experience (Metro) isn't really backwards, but it is really followi
Re: (Score:3)
The C# and VB.NET versions actually compile to .NET bytecode. The C++ native and Javascript versions obviously don't.
Nothing new (Score:2)
Android is fragmented in an almost identical way with apps being written for specific chips, such as Tegra.
Furthermore, Metro apps WILL work across both x86 and ARM windows 8 builds, much like regular Android apps will (or at least, are supposed to) work on any regular Android device.
Re: (Score:2)
That's less due to Android, and more due to the OEMs producing the devices. It's them that make it a minefield. And it's goofball apps that do things like record phone conversations, interact with specialized hardware on the devices, or side step screwball stuff from the "customized" Androids they're putting on things.
Re: (Score:2)
IT's a whole mixture of things, really. From the OEM who releases a device/chipset-specific SDK, to the developer who decides to use it instead of the "general" ones, there's a lot of blame to go around and I very much doubt that Windows 8 will be much different.
Hopefully the ARM version will have some special branding so people will easily be able to tell them apart from the x86 versions. Even if it's a case of Windows 8 Professional E vs. Windows 8 Professional.
Probably better off this way (Score:2)
Battery life aside, I imagine it would be incredibly painful to use a desktop application on a tablet. In a roundabout way, maybe this will devs will make some effort redesign desktop apps to fit the form factor.
open source folks may make it work anyhow (Score:2)
Just get the DOSbox core with x86 emulation in there, identify the callouts to libraries that you've got implemented in ARM to improve performance, and you're probably do pretty well.
Heck, a port of DOSbox on its own will be enough to make many GoG games work. (This is how I play "Master of Magic" on my iPad.)
Barring that, well, glue the x86 emulator into WINE and there's probably some potential.
Re: (Score:2)
Just get the DOSbox core with x86 emulation in there, identify the callouts to libraries that you've got implemented in ARM to improve performance, and you're probably do pretty well.
And require each user to pay $99 per year for an App Hub subscription to run it because Microsoft won't accept DOSBox to the Metro app store.
Re: (Score:2)
Ah, have they said that the system won't let any software get installed unless it's in the Metro app store? I haven't heard a single hint of that yet -- got a pointer?
In any event, that just means it'll require a jailbreak, and that will happen.
Corrected Quotation (Score:2)
'If we allow the world of x86 application support like that, or based on what we call desktop apps in our start yesterday, then there are real challenges in some of the value propositions for system on a chip,' he said.' and as you already know, we don't like challenges'.
Obvious, but are they porting MS Office to ARM? (Score:2)
Well that should have been obvious. What about the MS Office port to WinARM?
Everyone knows (or should) that the ARM tablets were NEVER going to run native x86 code. The question that Sinofsky still seems to be waffling on is the status of MS Office port for ARM. They showed that at CES, but it's disposition remains unclear.
But his Build comments indicate no x86 ports will be coming to WinARM, and that only Metro programs will be accepted for WinARM. So does that mean only 3rd party ports won't be accepted
Windows 8, the OCHO (Score:2)
Every time I see these Windows 8 stories I keep thinking ESPN 8, the Ocho.
We need a new slashdot meme around here anyway.
Enjoy,
Duh? (Score:2)
I'm all for MS-flaming but how could anyone possibly be disappointed or shocked by this? It's like expecting 68k Macs to run PPC binaries. You might want it, just like you want a unicorn pony, but you don't say "OMG! NO UNIKORN PONIES? I THOT WE WERE GETTING THEM!!1 Y NOT? EVERYONE ELSE GETS UNIKORN PONIES! ANDROID ARMS HAVE XEON EMULATORS, MIRCO$OFT $UX!!"
Are they talking binary compatibility or APIs? (Score:2)
Re: (Score:2)
Re: (Score:2)
Enterprise is still glued to Windows XP
Not Windows 95?
Re: (Score:2)
Once bitten twice shy.
Re: (Score:2)
(...) it just means developers have to compile both x86 and ARM versions.
Quod erat demonstrandum.
App Store (Score:2)
Re: (Score:2)
In other shock news, AMD64 apps don't work on x86 !!
Which is why almost no-one sells 64-bit apps for Windows yet.
This merely reiterates the problem with Windows on ARM: most people only buy Windows because they have Windows programs they want to run, but most Windows programs won't run on ARM.