Intel: "ARM can't run legacy apps on Windows 8"

Should Intel be concerned over the end of the "Wintel" era? For the past decade, the strong duo of Intel processors and Windows operating systems dominated 90% of computers worldwide, although now the domination is slowly shrinking with the emergence of mobile devices displacing traditional computers. Opponents of "Wintel," at least the Intel part of the equation, might have been happy to learn earlier this year of Microsoft's decision to support the ARM architecture in Windows 8. There is a large ecosystem of mobile devices with efficient low-power processors, powering a wide range of mobile operating systems from iOS to Android to Windows Phone 7.

But now, the world's most widely used desktop operating system is making its presence felt in the mobile market. System on a Chip (SoC) manufacturers find this an exciting prospect. Well, except for one problem: backwards compatibility. Although it is still Windows 8 on the surface, the architecture it runs on is completely incapable of running any Windows application today. Almost all Windows applications are compiled for the x86 and x86_64 architectures (and a sprinkling of Itanium), and the low-power aspects of ARM processors make it very expensive for Windows to emulate the x86 architecture in software. In other words, unless developers are quick to recompile their applications, ARM on Windows is a whole new ecosystem with the familiar Windows GUI.

And that's where Intel has the upper hand, claims Renée James, Intel's general manager of its software and services group. James's comments, which were reported on by The Register, came at Intel's Investor Meeting at their headquarters in Santa Clara. James did make one interesting comment, that the "traditional" Windows 8 flavour for the x86 architecture will have a "Windows 7 mode" for legacy applications. It is unclear whether Microsoft is planning on a seamless virtual desktop for old legacy applications in a simlar manner as Windows XP Mode, or if these are simply compatibility shims for applications.

Regardless of the terminology used, James makes clear that only Intel will deliver both sides of the coin: a low-power solution that may make Intel chips more desirable than ARM chips thanks to the use of Tri-Gate transistors, and also backwards compatibility with a decades-old catalog of applications. Then there's the long standing relationship between Microsoft and Intel, which James pointed out:

We've been working with Microsoft on Windows for probably 20 years, this year. We've been their partner for a long time – everybody writes about it, everybody talks about it.

But what you may not know, is that we have an on-site development team in Redmond that actually works deep inside the OS to make sure that the platforms, and the features, and the new instructions – whatever new thing we're inventing – is ready to go at the time of introduction of the latest Microsoft environment.

Intel has a unified architecture. What that means is that applications and operating systems can run from one generation of Intel platform to the next generation, and the same applications are going to run, forward- and backward-compatible. You can run the same application between different versions of our architecture – between Atom, between Xeon, between Core – which is not the case for our competitors in the ARM ecosystem.

​Image Credit: Long Zheng

Report a problem with article
Previous Story

French anti-piracy firm Trident Media Guard hacked

Next Story

MacBook Air Sandy Bridge, Thunderbolt update expected in June

36 Comments

Commenting is disabled on this article.

ARM should be able to run legacy apps.
Microsoft should be working on a WOWARM ... Windows On Windows ARM emulation that would enable legacy apps to run much like how 16-bit apps could still run on newer Windows and how 32-bit runs on 64-bit Windows now.
If Microsoft really wants the ARM version of Windows to mean anything, I'm sure they will get this worked out.

netsendjoe said,
ARM should be able to run legacy apps.
Microsoft should be working on a WOWARM ... Windows On Windows ARM emulation that would enable legacy apps to run much like how 16-bit apps could still run on newer Windows and how 32-bit runs on 64-bit Windows now.

If Microsoft really wants the ARM version of Windows to mean anything, I'm sure they will get this worked out.

Tha would be very slow. WOW on x64 is a no-brained as the only thing needed is to do some registry/folder redirection and enable the compatibity bit for x86 processors. Look at WOW for Itanium processors as an example of the speed hit you'll encounter. Probably would be worse for a mobile processor.

Its going to be a long while before intel can achieve low powered chips that can compete with low powerd ARM chips. At least 5 or 6 years.

Natively compiled programs should be relegated to only games, drivers, and very high-performance stuff such as layout engines and runtime engines.

MS Lose32 said,
Natively compiled programs should be relegated to only games, drivers, and very high-performance stuff such as layout engines and runtime engines.

That seems to be the way things are going, or trying to go. Gone are the days where everything was a compiled/assembled app.

Tuishimi said,

That seems to be the way things are going, or trying to go. Gone are the days where everything was a compiled/assembled app.
I completely agree, however Apple is way behind the times in this respect. Windows developers can use .NET while Linux developers can use one of their many scripting languages, or Java, if they need higher performance, but the primary development language (Objective-C) for Macs is still natively compiled!

Uhm, aren't all the .net applications available today already capable of running on ARM, as .net executables are MSIL instructions compiled just in time to native machine code? If so, MS could use this as an opportunity to really push for .net and managed code adoption (and lead by example, I'd love to see a future version of Office/Visual Studio/the Windows shell completely written in managed code). Heck, doing so would even benefit Itanium, even though its window of opportunity has long since closed.

Intel acts as if Windows has never compiled for other processor architectures when it most certainly has. Here's an entire list: IA-32, x86-64, Alpha, MIPS, PowerPC, ARM, Itanium.

Gutierrez said,
**** you intel, the game is almost over

..and AMD too then?

Seriously, if Intel can compete in low power situations (and they're heading that way fast) ARM may not even be that relevant for Windows longer term. ARM is useful *now* but in two years?

All I can say is... duh!

I doubt Microsoft is positioning ARM as the future of computing. They are just slotting Windows into the Tablet market which doesn't have the same legacy app needs. ARM and x86 will be seperate SKUs just like you have x86, x86-64, and IA64 as current build SKUs.

Wasn't this obvious? I also wonder if this would somehow give Microsoft a chance to clean up the Windows system folders and thereby resulting in a smaller footprint than the x64/x86 versions.

Considering what Windows on ARM will mean, you are probably not expecting to run all Windows x86 apps. I am sure it will target the traditional Netbook market where computing is more casual. So, if you want an all day Netbook, ability browse the web, do light Office productivity (Microsoft has committed to bringing Office to ARM), then this is probably a decent solution. I am sure they are working on bringing Windows Live Essentials also to ARM, so that should be a decent start out for ARM notebooks. I don't expect to see the plethora of pro-apps like on x86. Hopefully companies like Adobe will bring products like Photoshop Elements to ARM too.

This is to be expected considering ARM is a different architecture all together. I'll be surprised if they do get x86 apps to work. On that note though I'm sure Microsoft will have something in the next version of Visual Studio that will probably allow you to just take your existing code and compile it for ARM and it will just work. Especially if it uses .Net framework.

It's like Mac and when they moved from PPC to Intel. PPC apps won't run on Intel Macs. They would have to be recompiled as either Universal or Intel and from what I read 10.7 is doing away with the Univeral bit so they will have to be compiled for Intel only on that version.

With Windows 8 having an app store can one can conclude that once the Tablet/Mobile edition is installed (the one's running on ARM), it will somehow lock to only allow installations through the store to avoid issues?

Sadelwo said,
With Windows 8 having an app store can one can conclude that once the Tablet/Mobile edition is installed (the one's running on ARM), it will somehow lock to only allow installations through the store to avoid issues?

what about developers starting to use the power of .NET/Silverlight? They work on X86 and ARM processors without the need for recompile. Let MS worry about the cross-platform issues

Shadowzz said,

what about developers starting to use the power of .NET/Silverlight? They work on X86 and ARM processors without the need for recompile. Let MS worry about the cross-platform issues
Or Java, or anything that doesn't compile to native code. Yet one more reason to let C++ die.

iKenndac said,
As a Mac user who went through a CPU architecture transition (PowerPC to Intel)... FEEL OUR PAIN!!

;-)


for most desktop users they will not notice anything.
Plus you got silverlight and .NET to create applications cross-platform.

I feel for the saps still running aplications built for windows 95, i know you are victims of circumstances or just lazy *******, but that will get companies to get off their asses and upgrade either to a web centric solution, or something like a universal binary sort of developement system for cross platform apps, which you bet your ass Microsoft is going to make available sometime in the future.

LauRoman said,
I feel for the saps still running aplications built for windows 95, i know you are victims of circumstances or just lazy *******, but that will get companies to get off their asses and upgrade either to a web centric solution, or something like a universal binary sort of developement system for cross platform apps, which you bet your ass Microsoft is going to make available sometime in the future.

This is what .NET is all about, and you are right, people should NOT be starting new development using the older API sets or coding models.

The only thing you are skipping, is that MS is already ahead of you, and has been moving towards this for over 10 years, with both .NET and web RIA technologies. (Office2000 was built around web technologies even, it just was too soon for the world to need them or realize they were useful.)

Microsoft has been about portability and new concepts of different types of portablity since they started designing NT, as it even has the 'OS subsystem' model that was a much newer concept than traditional code portability when it was designed.

They got stuck more x86 than they wanted with others yanking support NT on their architectures (DEC was bought out, IBM hated MS and had alliances with Apple with the PPC, etc.)

We will see W8 ARM tablets, netbooks and office computers. Nowadays, a windows 7 os with ms office suite can do virtually everything without third party applications. Maybe with windows live apps...

and this confuse me a lot
what will be the difference between windows 8 arm and windows ce 7?

its so difficult to rework a .net application to work on arm?

fehu said,
and this confuse me a lot
what will be the difference between windows 8 arm and windows ce 7?

its so difficult to rework a .net application to work on arm?

Probably only general availability. Where as Win 7 CE was a more closed off OS for POS system and the like, Windows 8: Arm Edition is consumer oriented -specifically for tablets and phones I would assume.

fehu said,
and this confuse me a lot
what will be the difference between windows 8 arm and windows ce 7?

its so difficult to rework a .net application to work on arm?

CE is an extremely lightweight RTOS for embedded applications. In general, consumers shouldn't even be aware of it.

so at this point is microsoft rewrithing something or are only slapping a new ui to wince7?
i've seen some tablet with plain wince7 and looked like win7 on a netbook, if they are not adding a wow for x86 on arm what is all this about?
if even the applications are not compatible is only a marketing jump to fight android and ios?

fehu said,
so at this point is microsoft rewrithing something or are only slapping a new ui to wince7?
i've seen some tablet with plain wince7 and looked like win7 on a netbook, if they are not adding a wow for x86 on arm what is all this about?
if even the applications are not compatible is only a marketing jump to fight android and ios?

This is the full blown version of NT, recompiled for ARM. It is not CE in any way, shape or form. Just forget about CE, you do not need to know it exists, only embedded developers do.

ok it's only curiosity
i always thinked that ce is the microsoft take on reliability performance and flessibility on arm, if win8 will not even be compatible with well everything, why brother to port a full nt kernel?

fehu said,
ok it's only curiosity
i always thinked that ce is the microsoft take on reliability performance and flessibility on arm, if win8 will not even be compatible with well everything, why brother to port a full nt kernel?

Well there are a lot reasons known and unknown.

The reasons known is that NT offers a lot of kernel and architectural features that WinCE is not capbable of providing. WinCE was designed based on some of NT's design, but was written very specifically to do things as fast and light as possible. (This is why WP7 is significantly faster than Android and iOS on comparable hardware.)

NT is a rather 'smart' OS architecture, that has brilliance in the kernel and the general OS model that makes it highly flexible and powerful, as it deals with higher level concepts and structures than WinCE or even iOS/OSX or Linux does. This is how they can morph it and add on new stacks, video subsystems, new schedulers, etc without having to rewrite or deal with the cascading issues that the other OSes would have to rewrite to make the same modifications work properly.

So NT is powerful, and it also can be fairly light, lighter than even Linux, which is something people don't realize. Microsoft just hasn't ever focused on making NT 'tiny' as it is a desktop and server OS, and they had WinCE to fill in the device and light OS market needs.

As far as ARM is concerned, there are things beyond what the 'misinformation' people at Intel throw out. Just like when they dismissed AMD64 technology as worthless, and then after realizing the world was paying attention and knew better, they brought out EMT64, and stopped the misinformation campaign.

So here are things to consider that we don't know:
• Running x86 code on ARM is not easy, but could in theory be done. And Microsoft has done technologies like this before going back to the VDM in NT that runs DOS/Win16 as well as realtime recompiling technologies like they helped DEC design for x86 code on Alpha versions of NT in the mid 90s, and to current VM and other virtualization technologies that could be used.

• Has anyone considered dual CPU designs, with both ARM and x86 CPUs in the computer, NT can easily handle this type of concept seamlessly - giving users the light features needed for ARM and then flipping on the x86 CPU as needed. A lot like the hybrid video concepts using the lower powered integrated GPU and flipping to the higher end GPU when needed.

• Microsoft has talked about puting Win8 on a 'chip', this could mean a lot of things beyond what is basically known. For example, it could be a custom chip designed by Microsoft that handles the x86 translation without the need for a x86 CPU, and be very light on resources and fast.

Maybe they are working towards a new level of portability that is beyond code portability, and provided by an OS on a chip concept. (Microsoft has some brilliant chip/CPU/GPU engineers, just look at the Xeon in the XBox and the whole designs that are standard in computers today based on Microsoft's unified shader and other post processing technologies that they designed for the XBox 360.)

• Eventually WinCE will be replaced, as hardware will be so fast, that it will be relegated to a small market of devices that need an OS this light. Right now Microsoft is showing Windows 8 (NT) running on iPad level hardware, and shoving web pages and graphics many times faster than the iPad can do with iOS. So this shift is coming faster than people realize, and Microsoft seems to be preparing for it.

• As for Applications, WP7 is the first major step in moving to a full .NET based OS platform, and all the Apps written for WP7 are not locked to any hardware or CPU, just as .NET applications on Windows 7 or the XBox 360 are not locked to the hardware either. They wanted to make this shift with Vista originally, but had to back off, as .NET was not mature enough at the time to provide everything Microsoft wanted Vista to do. If this happens, it could be the runs anywhere anytime concept that Java and other technologies have tried to make happen, actually happen, as .NET is not hindered by the performance and compatibility issues that are now a part of Java and other similar technologies.

If you go look up NT vs WinCE (even WinCE 7.x) there is a lot of difference in what NT can provide that is just not inherent to WinCE or will ever be. (NT is a true Object Based OS model, which in the early 90s gave it 'bulk' when compared to the UNIX model, but as hardware and applications have evolved in the last 20 years, NT's nature makes it faster and lighter, as it is not having to use 'alternative/bandaid/ducktape' that now adds overhead to the UNIX type models to utilize the hardware and application technologies. (Yes Linux and OS X are victim of the 'simplistic' nature of the UNIX model they adhere use.)

Microsoft talked years ago about NT replace the DOS/x86 OSes, and also talked about NT replacing WinCE someday as technology and computing power allowed. One has already happened with the death of Win9x/ME, and WinCE is running towards the end of use as well.

(Microsoft under-estimated the first NT replacement cycle, as NT 4.0 could have replaced Win95. They didn't realize that the NT developers working with a much 'heavier' architecture and portable C based OS could pull off making NT 4.0 faster than Win95. As Win95 could had no rules, no security, no overhead, and could even use fully optimized hand coded x86 assembly. -Which is also why many of the Win9X OS developers didn't make it to WinXP team, whoops.)

So this is them preparing at the very least to happen as needed instead of at a future date.

I'll stick to x86, thanks...
Unless I can run my legacy software without worries I won't touch ARM anytime soon...

James may have huge interests in keeping users away and I totally see how legacy applications are nothing to worry about for many, but for me it comes down to being incapable of doing stuff I need to do. Simples.

GS:mac

You'll be able to run normal x86 apps, they'll just be much slower than native ARM apps or running them on an x86 chip.

But even then, we're talking low power devices here, nothing is going to run super fast.

The_Decryptor said,
You'll be able to run normal x86 apps, they'll just be much slower than native ARM apps or running them on an x86 chip.

But even then, we're talking low power devices here, nothing is going to run super fast.

Emulating x86 on ARM won't just be slow, it'll positively crawl..

dangel said,

Emulating x86 on ARM won't just be slow, it'll positively crawl..

It won't matter anyway as applications will be native. The two markets that Microsoft is looking at are servers (this is easy enough, LAMP could be ported in about 24 hours) and tablets, which are really beyond the scope of x86 at the moment. I don't see either of these markets really needing legacy x86 code. This sounds like the typical Intel FUD, and honestly I don't blame Intel for it... they have something to fear here. This is more of a threat then the PowerPC every was.