I can’t believe this! (Gaming)

by Cody Miller @, Music of the Spheres - Never Forgot, Thursday, October 17, 2019, 10:54 (648 days ago) @ Xenos

The real reason is very simple: a 32 bit instruction will take up a full 64 bit instruction on a 64 bit OS. So every instruction used is taking up twice the space everywhere. In addition to support 32 bit applications you have to have in many instances a 32 bit version of the library needed as well as a 64 bit version. So two apps that use the same libraries but one is 32 bit and one is 64 bit, the 32 bit application can’t use the same library, even if the libraries are the same in functionality. If you extrapolate this, 32 bit apps potentially take up not just twice the disk space, but twice the memory to run. This doesn’t mean they necessarily run slower, but if you’re running against the limits of the memory you’re using 32 bit applications will make the problem even worse. There are even more issues, but this is a very basic representation of the problem.

See that doesn't seem so bad to me, since 32 bit apps are all old and small anyway.

Is there a reason it was designed this way? Is designing a 'universal' library impossible? Can the OS not be programmed to allow instructions of varying sizes?

If you are running a 64 bit app, can you not program 32 bit variables so save memory? That seems wasteful to have a 64 bit integer if you only need to count to ten.

Complete thread:

 RSS Feed of thread