Question about Win32 programs


Recommended Posts

With everything now 64 bit as in computer systems, will we ever see the day that Win32 goes away? or is there some issue that prevents it from dying?

Link to comment
Share on other sites

Don't see it happening any time soon... that's a crapton of backwards compatibility being tossed out the window for zero benefit as lots of programs will cease to run, never mind older systems are transformed into scrap, and there's nothing gained from doing that, your system isn't going to suddenly get faster just because WoW64 disappeared.  The OS is 64 bits, the programs that actually merit/need 64 bits are already there.. it's not hurting anything having the compatibility there.  32 bit version of the OS itself?  *shrug* already happened with Windows Server, you never know.   But Win32 app support, not likely.

Link to comment
Share on other sites

Doubt it, the footprint of the binaries is barely nothing (And only going to get smaller as hard drive sizes increase), and with the way AMD extended x86 to support 64bit there's no reason to get rid of 32bit support.

It took until the introduction of 64bit CPUs for 16bit support to be dropped, and even then only because 64bit CPUs refuse to run 16bit code (While running 32bit code is normal for them)

Edit: Because of the similarities between 32bit and 64bit mode in x86, not only is there no reason to get rid of it, it's also beneficial for applications to be able to switch based on the type of work they do, 64bit harms some workloads.

Link to comment
Share on other sites

Doubt it, the footprint of the binaries is barely nothing (And only going to get smaller as hard drive sizes increase), and with the way AMD extended x86 to support 64bit there's no reason to get rid of 32bit support.

It took until the introduction of 64bit CPUs for 16bit support to be dropped, and even then only because 64bit CPUs refuse to run 16bit code (While running 32bit code is normal for them)

Edit: Because of the similarities between 32bit and 64bit mode in x86, not only is there no reason to get rid of it, it's also beneficial for applications to be able to switch based on the type of work they do, 64bit harms some workloads.

There are two (and only two) reasons for the continuance of x32 - backward-compatibility for users of older hardware, and backward-compatibility for critical systems that require older hardware.

 

x64 doing harm to some workloads?  Excuse me - I have never heard of a workload being harmed due to INCREASED precision - the biggest reason for the interest in x64 in the first place.  (I'm not even referring to Windows, but to TruUNIX and Solaris - first FOR the aforementioned SPARC, then later with Solaris for x64; both of which are still available today.)  Or is there still a "vested interest" in keeping some applications away from Windows in x64 form?  (At least ONE Neowinian has in his forum signature how Linux dominates the TOP500, and is exclusive to the top one percent (of supercomputers) - how many of those Linux-based supercomputers run an x32 distribution of Linux?  The answer (I suspect) is likely to be "none" - which THEN begs the question of "why not" if x64 is supposed to be so "horrible" for some niche uses.  Here is the state of reality in merely ordinary-folks computing today -

 

1.  There are exactly zero x32 operating systems in regular use in any formfactor larger than tablets - except by personal choice.  Even the three x32 operating systems still in regular use - Windows, Android, and Linux - are all in danger due to lack of interest - in all three cases, they will be replaced-in-place by their already-existing x64 counterparts.  In other words, the HARDWARE in use is going to force the issue - whether developers want otherwise or not.  (The three bare-metal installs of Windows 10 I am flogging today are all x64 - despite NONE of the hardware being newer than that of Windows 7.)  x64-based Android exists today - and not just for Intel and AMD.  As of now, Visual Studio can target x64-based Android as easily as x32 Android - using Visual Studio 2013 Community and newer.  In other words, not only is x64 no harder to target than x32 Android - it costs no more.  Considering that the same suite - and same situation - applies to Windows, what do YOU think developers will do when the last vestige of x32 hardware out in the wild (for either Windows OR Android) goes away?  They will move to x64 out of necessity - they aren't stupid.  If anything, Android-based hardware - due to all too many of it being priced in the "throwaway" category, will move that way before Windows hardware does. (In fact, here's a question concerning Windows 10 for phones - does an x32 version even exist?)

 

2.  As x32 hardware in the wild goes away, why should x32 application software be retained? (I am referring to any reason - INCLUDING content consumption.)  I'm not even referring to Windows alone - but any OS - or Linux distribution, or UNIX, for that matter.

 

3.  Lastly, there is a claim that x64 harms some workloads - exactly WHAT workloads, and how does x64 harm them, while x32 does not?  (Something smells really bad - and it's not Namor's aftershave.)

Link to comment
Share on other sites

Don't see it happening any time soon... that's a crapton of backwards compatibility being tossed out the window for zero benefit as lots of programs will cease to run, never mind older systems are transformed into scrap, and there's nothing gained from doing that, your system isn't going to suddenly get faster just because WoW64 disappeared.  The OS is 64 bits, the programs that actually merit/need 64 bits are already there.. it's not hurting anything having the compatibility there.  32 bit version of the OS itself?  *shrug* already happened with Windows Server, you never know.   But Win32 app support, not likely.

Please - let's get serious.

The ONLY reason why there isn't more x64 software out there is due to personal preference in all too many cases (of users, of developers, or of both coming together) - the application space, the gaming space, and even the utility space are proving that.

Exactly how many x32 CPUs are even of use in the smartphone or tablet space? (The answer in terms of the production lines of both Intel and Global Foundries is exactly the same - zero.  What's interesting HERE is that Global Foundries - unlike Intel - is an ARM licensee.  However, GF is producing only x64 flavors of ARM - why?)  While ATOM was originally developed in x32 (when XP was Microsoft's desktop OS du jour), not a single x32 ATOM CPU is even produced by Intel today - for any use.  Even Atom for IoT is x64-only.  The only thing keeping x32 Office afloat are niche-usage plug-ins that haven't transitioned to x64 yet; remember, Office had an x64 version available as of Office 2010.  the cost for crossgrades is the same - whether individuals or enterprises - you can crossgrade from x32 to x64 (same version) for the same cost - none.

In fact, I can tell you exactly how many Win32 applications my desktop (and two notebooks) use between them - one.  Shockingly, it's Visual Studio 2015 Ultimate CTP6.  While the majority of the components are x64, the IDE itself is x32.  (It's installed on my mobile development platform.)  Where the choice between x32 and x64 is available, unless performance is poorer in x64 - and I have seen exactly zero cases of that - x64 will win - and it has since I crossgraded back with Windows Vista..  I had HALF the amount of system RAM I have today - nowadays, the RAM loadout of my weaker notebook (which incidentally has the largest screen) matches that - and it runs Windows 10 10049 x64 as only OS. .

 

If you are asking x32 to stay for reasons of personal preference say so - otherwise don't give me this song-and-dance about x32 being preferable - especially on x64 hardware - when it turns out that the jury not only may still be out, but it turns out that there's been some serious sandbagging going on.

Link to comment
Share on other sites

With everything now 64 bit as in computer systems, will we ever see the day that Win32 goes away? or is there some issue that prevents it from dying?

 

From what it appears parts of Win32/Win64 are being deprecated already and the remaining parts are being pushed further down the stack so that they form the basis of WinRT which is where all the effort so far as being focused on. Regarding the broader argument of 32bit vs. 64bit - it is possible to compile a 32bit application whilst taking advantage of the features that come as part of running a 32bit application in long mode (long mode being a 64bit operating system hosting a 32bit application) meaning many of the advantages of x86-64 ISA improvements can be taken advantage of by 32bit applications without having to move wholesale to 64bit.

Link to comment
Share on other sites

Hello,
 
Every so often, I come across a corporate customer who has standardized on 32-bit systems for some reason, and they're running their modern PCs with ~3.5GiB of usable RAM on Windows 7 Enterprise.  The reasoning behind this is usually "compatibility with some legacy line-of-business app" and the discussion trails off from there. 
 
What is the real issue? 
 
I couldn't really say, but one has to wonder if "we bought something with old dependencies" or "we no longer employ people who are capable of updating the code" or some other costs-benefits issue which means the customer would have to do a forklift upgrade (e.g., completely replace some mission-critical systems, hardware, software, perhaps even networking gear as well).  It could even be tied to a senior person not "trusting" 64-bit systems because they had a bad experience with Microsoft Windows XP 64-bit Edition or a 64-bit version of Microsoft Windows Vista back in the day, and are now enforcing a dictum of "no 64-bits" as a result.

 

As PGHammer noted, the re-emergence of Windows-based Tablet PCs, with their dual-core Atom CPUs, 1 or 2GB of RAM, and 16GB+ of RAM pretty much make 32-bit versions of Windows a requirement, just because of the BOM costs for such systems.  As quad-core processors, DRAM and eMMC come down in price, I'm sure we'll start seeing these Tablet PCs with 64-bit pre-loads, but it's just going to take a while to get there.

 

In any case, Microsoft historically has provided ten years of support for desktop versions of Windows, so if Microsoft Windows 10 is released this year, we can expect to see 32-bit versions supported until 2025, unless Microsoft changes their end of life policy.

 

Regards,

 

Aryeh Goretsky

Link to comment
Share on other sites

Please - let's get serious.

*snip* 

If you are asking x32 to stay for reasons of personal preference say so - otherwise don't give me this song-and-dance about x32 being preferable - especially on x64 hardware - when it turns out that the jury not only may still be out, but it turns out that there's been some serious sandbagging going on.

Not once did I say the word "preferable." Not once.. please re-read what I said. I mainly said "backwards compatible." I don't care how many x86 programs you have.. out of a gazillion users, a sample of one is meaningless. Just looking at my games partition I can see dozens of programs that are x86 only and will never be rebuilt for 64 bit. And that's just reasonably current stuff, never mind thousands of older ones. Just this year alone I've worked on dozens of systems for clients, can guarantee you plenty of x86 software out there.

And that's just games. The number of x86 only programs out there is probably staggering, and a lot of it is still actively developed. Again, I can see the OS itself going x64 only, but dropping the WoW64 subsystem is just idiotic and gives zero benefit, and loses compatibility with an untold number of programs. A backasswards move that adds a lot of unnecessary restrictions and does nothing to improve the OS as a whole.

Link to comment
Share on other sites

There are two (and only two) reasons for the continuance of x32 - backward-compatibility for users of older hardware, and backward-compatibility for critical systems that require older hardware.

 

x64 doing harm to some workloads?  Excuse me - I have never heard of a workload being harmed due to INCREASED precision - the biggest reason for the interest in x64 in the first place.  (I'm not even referring to Windows, but to TruUNIX and Solaris - first FOR the aforementioned SPARC, then later with Solaris for x64; both of which are still available today.)  Or is there still a "vested interest" in keeping some applications away from Windows in x64 form?  (At least ONE Neowinian has in his forum signature how Linux dominates the TOP500, and is exclusive to the top one percent (of supercomputers) - how many of those Linux-based supercomputers run an x32 distribution of Linux?  The answer (I suspect) is likely to be "none" - which THEN begs the question of "why not" if x64 is supposed to be so "horrible" for some niche uses.  Here is the state of reality in merely ordinary-folks computing today -

 

1.  There are exactly zero x32 operating systems in regular use in any formfactor larger than tablets - except by personal choice.  Even the three x32 operating systems still in regular use - Windows, Android, and Linux - are all in danger due to lack of interest - in all three cases, they will be replaced-in-place by their already-existing x64 counterparts.  In other words, the HARDWARE in use is going to force the issue - whether developers want otherwise or not.  (The three bare-metal installs of Windows 10 I am flogging today are all x64 - despite NONE of the hardware being newer than that of Windows 7.)  x64-based Android exists today - and not just for Intel and AMD.  As of now, Visual Studio can target x64-based Android as easily as x32 Android - using Visual Studio 2013 Community and newer.  In other words, not only is x64 no harder to target than x32 Android - it costs no more.  Considering that the same suite - and same situation - applies to Windows, what do YOU think developers will do when the last vestige of x32 hardware out in the wild (for either Windows OR Android) goes away?  They will move to x64 out of necessity - they aren't stupid.  If anything, Android-based hardware - due to all too many of it being priced in the "throwaway" category, will move that way before Windows hardware does. (In fact, here's a question concerning Windows 10 for phones - does an x32 version even exist?)

 

2.  As x32 hardware in the wild goes away, why should x32 application software be retained? (I am referring to any reason - INCLUDING content consumption.)  I'm not even referring to Windows alone - but any OS - or Linux distribution, or UNIX, for that matter.

 

3.  Lastly, there is a claim that x64 harms some workloads - exactly WHAT workloads, and how does x64 harm them, while x32 does not?  (Something smells really bad - and it's not Namor's aftershave.)

I'm not really sure where to start, but lets tackle the big issue first, I'm not talking about 32bit Windows, I'm talking about WoW64, the 32bit subsystem in 64bit Windows (Which consists of a copy of the 32bit system libraries and like a 10KB driver for handling it).

And you know you can use 64bit types on a 32bit machine right? using a 64bit computer doesn't make your calculations more "precise", it really just means you have a bigger address space (Things like register size and bus width don't really factor into it, the last Intel CPU with a 32bit bus was a 486, and my 2500K has 128bit registers) The biggest difference between 32bit and 64bit mode on a modern PC, is that 64bit mode guarantees you have SSE support, so you don't need runtime checks. You can use 64bit types in a 32bit app, and 32bit types in a 64bit app, it depends on the type of work you're doing.

Rather unsurprisingly, 64bit code takes up more room than 32bit code, because certain things (like pointers) are based on the environment it's running under. And it turns out that incresing the code size means it takes up more room in a CPU cache, and the data the code uses also takes up more space due to these pointers, and then loading the extra code and data into memory takes longer because there's no functional difference between a 32bit and 64bit x86 CPU (So 32bit code takes up less space and transfers quicker on these CPUs) That's one of the reasons that a 64bit OS and applications take up more RAM than the 32bit counterparts, even if the executable code (apart from things like pointer handling) is unchanged between them. Certain applications don't benefit from the increased address space, or already rely on things like SSE2 support in 32bit mode, those types of applications gain nothing from being a 64bit app, and suffer from the increased RAM and cache footprint.

Edit: Also, 32bit Linux in danger? Linux just recently gained a new 32bit mode to work around some of the downsides of 64bit operating mode (Keeping the benefits, while using things like 32bit pointers to reduce code size)

  • Like 2
Link to comment
Share on other sites

It still lives doe to lazy programmers and bad IT/Corporate management still using antique software when there are superior and moderns equivalents available

Link to comment
Share on other sites

I am working on a 512-bit OS.

I need the upper level access because I am also building a desktop with 64 Yottabytes of RAM - mainly for email and watching videos on YouTube....

This discussion is so dated - you all need to "get with the program"

The future is all about mutating PSync 3D memtransresistor algorithms and parallel entanglement gates.

Stop living in the past !

(I had nothing to add to this discussion)  :(

Link to comment
Share on other sites

^ exactly!!!  Hyper-parallel photonic quantum computation with coupled quantum dots is where its at, these old timers and their 32 and 64 bit nonsense ;)

 
Link to comment
Share on other sites

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.