Slashdot Mirror


Microsoft: No Windows 8 ARM Support For x86 Apps

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.'"

37 of 413 comments (clear)

  1. Well... by LoudNoiseElitist · · Score: 5, Funny

    ...that just killed my desire for Windows 8 on a tablet. Thanks anyway, Microsoft.

    1. Re:Well... by ge7 · · Score: 2

      And why exactly? It's pretty obvious you need different builds for x86 and ARM versions. You can still get them if you want to, but it would be just idiotic to emulate another architecture. Native executables is the only good way to go.

    2. Re:Well... by LoudNoiseElitist · · Score: 3, Insightful

      I'm not sure why this is being marked as a troll. It's a serious statement. Why would I want to dive into a new OS if they immediately cut down a large majority of the apps that could be run on it? Sure the battery life may not be as good, but why not give us that option? What if I want this on a tablet for work, and would like to run a more work-friendly x86 app?

    3. Re:Well... by ge7 · · Score: 2

      If battery life isn't that big of a concern to you, then get a x86 Windows tablet. That you get all the x86 programs running natively. I'm also quite sure many developers will compile ARM versions of their programs too.

    4. Re:Well... by ledow · · Score: 4, 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?

    5. Re:Well... by Muad'Dave · · Score: 2
      --
      Tiller's Rule: Never use a word in written form that you've only heard and never read. You will end up looking foolish.
    6. Re:Well... by ShakaUVM · · Score: 3, 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.

    7. Re:Well... by Waffle+Iron · · Score: 3, 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.

    8. Re:Well... by ozmanjusri · · Score: 4, Insightful

      Losing one for a hundred sounds good

      Maybe.

      But if we are to believe this. then MS will have:

      • A version of Windows running on ARM (WP7)
      • A version of Windows running on ARM (W-8) that looks the same, but runs on slightly bigger machines
      • A version of Windows running on X86 (W-8) that also looks the same, and might be installed on similar looking tablets

      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.

      --
      "I've got more toys than Teruhisa Kitahara."
    9. Re:Well... by PopeRatzo · · Score: 4, Insightful

      My 100MHz Win95 computer could handle email, web browsing, and word processing smoothly

      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.

      --
      You are welcome on my lawn.
    10. Re:Well... by TheRaven64 · · Score: 2

      Calling the Win32 API from .NET is not a problem. There will be a native version of this on ARM. The problem is if you call some x86 DLL that you distribute, not if you call into the system libraries.

      --
      I am TheRaven on Soylent News
    11. Re:Well... by DrgnDancer · · Score: 2

      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 returns a value. Assuming the main instance of your code is running in the .NET virtual machine, calls to outside APIs ought to fine (assuming the APIs are the same). Your issue will be that you can't compile an app for ARM (a native app) and expect it to run on x86.

      Some people seemed to be expecting this, but I can't imagine how they'd do it without a huge performance hit.

      --
      I don't need a million points of light, just two points of multi-mode fiber and a 10 Gig-E router.
    12. Re:Well... by hairyfeet · · Score: 3, Interesting

      Oh you don't need to break out the popcorn as i saw EXACTLY what this trainwreck is gonna do last Xmas. See there was this place selling "Windows netbooks" with in tiny print "Windows Compact Edition" but since it looks like XP and consumers have no fucking clue what any of that means they sold out on a "first come first served no refunds" sale. So what happened?

      They were dumped en mass on Craigslist when folks found they couldn't run Win apps and that is EXACTLY what is gonna happen with this moronic clusterfuck. When folks see the word Windows they are gonna rightly assume that it actually runs WINDOWS PROGRAMS because if it don't? Then why would they buy Windows? hell they could just run Android or buy an Apple iDevice!

      The only nice thing I predict that will come from the massive trainwreck that Win 8 is shaping up to be, complete with retailers having masses of ARM Win devices they'll have to take a Touchpad sized bath on, is that FINALLY Ballmer will end up forced to "pursue other interests" and hopefully they can get Ozzie back or maybe one of the Office guys to take the helm and right the ship. Because this is just another example of Ballmer having a raging hard on for his competitors and completely ignoring his companies strengths and weaknesses trying to play "Me too! Ohhhh me too!" and it WILL come back to bite him in his sweaty monkey ass.

      --
      ACs don't waste your time replying, your posts are never seen by me.
    13. Re:Well... by rabun_bike · · Score: 3, Insightful

      The vast majority of Microsoft commerical products are developed in C++. There are instances of Microsoft commercial applications and tools written in .NET but the core product offerings SQL Server, MS Office, Windows, and even Visual Studio are all written in C++. This means those applications have to be ported to the ARM processor which is very doable. I imagine the more tenuous issue has to do with Microsoft's very longtime relationship with Intel and the x86 instruction set. If Microsoft starts embracing the ARM instruction as an equal to Intel x86 that would cause riffs in the WinTel alliance. The market has forced Microsoft's hand already on releasing a specific version of Windows 8 to run on the ARM and that has not pleased Intel. But Intel had to capitulate and cannot blame them since Intel's own chip really cannot fully compete with the ARM on several levels. What I think will be interesting is to see if Microsoft continues the port to ARM and offers not only Windows 8 on ARM laptops and workstations but also begins to port their other core applications to the ARM instruction set. After being involved on way or another for decades in the computer industry, the ARM chip and its adoption rate seem very similar to how Intel began on disconnected PCs and then moved to portable PCs and finally into the data center and beyond. Likewise, the ARM chip have started out on low power, small devices and some are foreseeing the adoption of this efficient chip architecture into laptops, desktops, and data centers with several large companies like Nividia and Dell taking a large gamble on it. In fact, the ARM chip is being considers for a super computer. From a chip architectural perspective, it is easier to scale go up than down.
      http://www.smartplanet.com/blog/smart-takes/nvidia-eyes-arm-based-supercomputers/13343

      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

    14. Re:Well... by Attila+Dimedici · · Score: 3, Insightful

      Yes, but the reason to buy a Windows tablet is because it runs the software I already have. If a Windows tablet won't run the software I already have, then there is no rason not to buy one of those others. The question is, what is the market for an ARM Windows tablet if it doesn't run the software I already have?

      --
      The truth is that all men having power ought to be mistrusted. James Madison
    15. Re:Well... by KingMotley · · Score: 2

      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.

    16. Re:Well... by WorBlux · · Score: 2

      Not necessarily LLVM lets you use a intermediate representation that can be interpreted or even compiled the rest of the way with fairly good results. The tech is there is you want it going forward, It's just going backwards that is the real problem.

    17. Re:Well... by jonadab · · Score: 2

      > You ask them what operating system they have and they'll say "Windows" without any qualifiers.

      That's only the tech-savvy ones, people who actually know what an operating system is -- about 1% of the population. More common answers from regular folks include "What's that?", "I don't know", "Microsoft XP", "Word", "Dell", "HP", "Umm... Microsoft?", "Microsoft Works", "Firefox", and "Yahoo".

      --
      Cut that out, or I will ship you to Norilsk in a box.
  2. But what we all want to know is... by Chrisq · · Score: 2

    Will there be support for ARM apps on the x86 platform?

    1. Re:But what we all want to know is... by Sc4Freak · · Score: 3, 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.

  3. Awesome... by AngryDeuce · · 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. Man, I love this war on backward compatibility and long product life cycles. Not only is our hardware designed for the dump, but now our software is, too. The future sure is looking bright...

    1. Re:Awesome... by Dunbal · · Score: 2

      The obvious solution is to avoid changing OS. Why would you want to? There's no good reason to upgrade and several good reasons to not upgrade. It's a simple decision. As for tablets - no one has noticed that this is all about vendor lock-in?

      --
      Seven puppies were harmed during the making of this post.
    2. Re:Awesome... by tepples · · Score: 2

      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.

  4. No shit sherlock by EdZ · · Score: 3, Informative

    This was part of the initial announcement that Win 8 would be available on ARM. Of course x86 applications aren't going to work! You think everything is going to be run through a monumentally slow VM on already underpowered (compared to x86) hardware?
    Applications written for x86 will remain x86, applications written cross-platform (e.g. .NET) will work on both. Not news.

    1. Re:No shit sherlock by sangdrax · · Score: 2

      You could, using Rosetta. It translated ppc -> x86 instructions on the fly. Support for that was dropped in Lion though.

    2. Re:No shit sherlock by UnknowingFool · · Score: 2

      The story is that back in May Intel said that Windows 8 on ARM would not be backwards compatible which we all knew to be the case.. MS immediately issued a statement that all but called Intel a liar.

      --
      Well, there's spam egg sausage and spam, that's not got much spam in it.
  5. Right so... by CapuchinSeven · · Score: 2

    basically for the same reasons as to why full OSX isn't put on iPads. So tell me again the point of having full Windows on a tablet when we're going to end up being limited anyway? Starting to lose interest already.

  6. Well, duh. by IGnatius+T+Foobar · · Score: 5, Insightful

    Well, duh. Microsoft never intended to make x86 software run on ARM. Microsoft wants you to write "Metro style" apps which are written in .NET and will run on Windows 8 x86, Windows 8 ARM, and Windows Phone.

    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.

    --
    Tired of FB/Google censorship? Visit UNCENSORED!
    1. Re:Well, duh. by XDirtypunkX · · Score: 2

      The C# and VB.NET versions actually compile to .NET bytecode. The C++ native and Javascript versions obviously don't.

  7. Probably better off this way by yankeessuck · · 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.

  8. Emulation has worked on Macs by tepples · · 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. 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).

    1. Re:Emulation has worked on Macs by Dog-Cow · · 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.

    2. Re:Emulation has worked on Macs by stackOVFL · · Score: 2, Informative

      Here's a link about the 68k emulator for PowerPC if anyone is interested: http://en.wikipedia.org/wiki/Mac_68K_emulator

    3. Re:Emulation has worked on Macs by EXrider · · Score: 2

      Wrong, they provided the ability to run fat binaries containing native code compiled for either platform and they provided emulators in both cases to execute 68K and PPC code. This was the case in 68K to PPC in Classic Mac OS and PPC to x86 in Mac OS X.

      --
      grep -iw skynet /etc/services
  9. Re:Version of Windows by TaoPhoenix · · Score: 2

    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!

    --
    My first Journal Entry ever, in 8 years! http://slashdot.org/journal/365947/aphelion-scifi-fantasy-horror-poetry-webzine
  10. Fork Windows? by Jeremiah+Cornelius · · Score: 2

    Fork Microsoft, Fork U 2!

    --
    "Flyin' in just a sweet place,
    Never been known to fail..."
  11. Re:Version of Windows by UnknowingFool · · Score: 2
    You got it all wrong. MS naming be more like:
    • Windows 8 Starter Basic (ARM tablet)
    • Windows 8 Starter Premium (x86 tablet)
    • Windows 8 Starter (x86 laptop)
    • Windows 8 Starter Ultra (x86 desktop)
    • Windows 8 Home (x86 laptop/desktop)
    • etc
    --
    Well, there's spam egg sausage and spam, that's not got much spam in it.