locked
Can old X86 based application run on ARM based Windows 8 platform?

All replies

  • Majority of applications that would run in Windows 7 should be able to run in Windows 8 if you use 32bit version of Windows 8, then 32bit application should work. But you could try them and if you see any compatibility issues , then post back here.
    Tuesday, October 18, 2011 8:57 AM
  • You mean a native x86 code will be able to run on ARM architecture?
    Well this is the world we live in And these are the hands we're given...
    Tuesday, October 18, 2011 11:51 AM
  • No, Classic Windows x86 applications will not run on Windows 8 on ARM. The Metro based applications because they HTML based and are self contained packages will work across architectures though. But if you want to run apps like AutoCAD, PhotoShop, QuickBooks on Windows 8 on ARM, the developers will have to recompile them for that architecture. Microsoft has promised to have a version of Office available for it by the time it ships.
    Teching It Easy: With Windows |ActiveWin | Notebooks | Microsoft MVP

    Tuesday, October 18, 2011 4:09 PM
  • Since it is new architect , then they should be some new compilation and method to run programs. What I mean is that if you have Arm-base PC, try run Windows 8 on it and try applications and if you seen any error please report them here.
    Wednesday, October 19, 2011 5:16 AM
  • No, Classic Windows x86 applications will not run on Windows 8 on ARM. The Metro based applications because they HTML based and are self contained packages will work across architectures though.
    Metro aplications are not HTML based; they are WinRT based. Javascript/HTML is just one way of writing WinRT applications.
    But if you want to run apps like AutoCAD, PhotoShop, QuickBooks on Windows 8 on ARM, the developers will have to recompile them for that architecture. Microsoft has promised to have a version of Office available for it by the time it ships.
    As I understand it, this will not just be a matter of recompiling, because Microsoft is not porting the whole Win32 API to ARM. Rather these applications will have to be ported from Win32 to WinRT. If they are well-written, the underlying functionality can be re-used but the GUI will have to be rewritten.
     

    David Wilkinson | Visual C++ MVP
    Wednesday, October 19, 2011 10:31 AM
  • Am I right that Visual Studio now supports builds for ARM platform? (I mean unmanaged code, not the MSIL).

    So am I right that you will have to recompile unmanaged code to managed one when moving to WinRT? If so, I don't see how you could do a code reuse here. Could you?


    Well this is the world we live in And these are the hands we're given...
    Wednesday, October 19, 2011 11:10 AM
  • Am I right that Visual Studio now supports builds for ARM platform? (I mean unmanaged code, not the MSIL).
     
    So am I right that you will have to recompile unmanaged code to managed one when moving to WinRT? If so, I don't see how you could do a code reuse here. Could you?
    WinRT is not managed, though it can be programmed in the managed languages C# and VB.NET. It can also be programmed in C++ or Javascript/HTML, which are unmanaged.
     
    Whatever language you use, the parts that do not depend on Win32 (typically the business logic) can be re-used. The parts that depend on Win32 (typically the GUI) cannot.
     
    Actually, as I understand it, some parts of Win32 have been ported to WinRT, but certainly not the parts that involve GDI or GDI+ calls, which wipes out classic Win32 GUI applications, and MFC applications, and WinForms applications.
     

    David Wilkinson | Visual C++ MVP
    • Edited by davewilk Wednesday, October 19, 2011 12:19 PM typo
    Wednesday, October 19, 2011 11:46 AM
  • As I understand it, this will not just be a matter of recompiling, because Microsoft is not porting the whole Win32 API to ARM. Rather these applications will have to be ported from Win32 to WinRT. If they are well-written, the underlying functionality can be re-used but the GUI will have to be rewritten.

    This is not true, at least for Microsoft-written (approved?) programs. This video shows IE10 (desktop) with Adobe Flash running on a Snapdragon processor: http://www.youtube.com/watch?v=Yw7M4OYgpck. The interface seems to be consistent across architectures (that is, the desktop is available on ARM just as it is on x86).

    VS11 has an ARM compiler, and it would seem an odd decision to not let developers re-compile their x86 programs for use on future Windows 8 tablets. Microsoft is certainly pushing Metro style apps for now (and for devices with touch input, this probably makes sense), but it's quite likely that the desktop interface will still be available for all architectures.

     

    Wednesday, October 19, 2011 1:11 PM
  • As I understand it, this will not just be a matter of recompiling, because Microsoft is not porting the whole Win32 API to ARM. Rather these applications will have to be ported from Win32 to WinRT. If they are well-written, the underlying functionality can be re-used but the GUI will have to be rewritten.
    This is not true, at least for Microsoft-written (approved?) programs. This video shows IE10 (desktop) with Adobe Flash running on a Snapdragon processor: <http://www.youtube.com/watch?v=Yw7M4OYgpck>. The interface seems to be consistent across architectures (that is, the desktop is available on ARM just as it is on x86).
    OK, but the messages from Microsoft have been rather mixed on this issue.
     
    My applications use C++ with MFC and standard GDI, and I have been assuming that they will not run on ARM. But who knows?
     

    David Wilkinson | Visual C++ MVP
    Wednesday, October 19, 2011 1:25 PM
  • OK, but the messages from Microsoft have been rather mixed on this issue.
     
    My applications use C++ with MFC and standard GDI, and I have been assuming that they will not run on ARM. But who knows?

    Agreed about mixed messages. I hope it's just because they're pushing Metro style apps/WinRT, especially for tablets.

    There's some more discussion about the issue by Mary Jo Foley here: http://www.zdnet.com/blog/microsoft/microsoft-desktop-apps-will-run-on-windows-8-on-arm/10756

    I think that it's significant that the first demonstration of Windows running on ARM showed only the desktop experience, with the command prompt and Office (15?). Getting Office to work suggests that a lot of Win32 must be available.

    Wednesday, October 19, 2011 1:34 PM
  • OK, but the messages from Microsoft have been rather mixed on this issue.
     
    My applications use C++ with MFC and standard GDI, and I have been assuming that they will not run on ARM. But who knows?
    Agreed about mixed messages. I hope it's just because they're pushing Metro style apps/WinRT, especially for tablets.
    When I first heard that x86 applications might/would not run on ARM (which I assumed meant could not be recompiled for ARM), I thought this implied that the entire desktop mode would not be available on ARM.
     
    At first I thought this was terrible, but later I thought that it would be a good product differentiator: low end-tablets (ARM, Metro only, compete with IOS/Android), and high-end tablets (x86, Metro+Desktop, only Microsoft has this, no competition).
     
    But it seems this is not the plan.
     

    David Wilkinson | Visual C++ MVP
    Wednesday, October 19, 2011 1:55 PM