The difference in size for the Windows 8 Consumer Preview ISO images, between the 64 bit and the 32 versions is 800 Mb or a difference of 24%.
I've never seen a difference so large.
Why is there such a big difference?
The difference in size for the Windows 8 Consumer Preview ISO images, between the 64 bit and the 32 versions is 800 Mb or a difference of 24%.
I've never seen a difference so large.
Why is there such a big difference?
There are several reasons for the size discrepancy:
The first and last reasons do not contribute nearly as much as the 32-bit software that ships with 64-bit Windows - but for the sake of completeness, they should be considered.
In 64bit-versions, Microsoft deploys additional software. For example, there are two versions of Internet Explorer (64 and 32bit). Another example is the whole runtime system for Win32-applications.
Also, binary code will get bigger.
Probably the sum of this these makes the big difference.
64-bit versions is generally bigger that 32-bit version for a couple of reasons.
The first thing to consider is the type of compiler and the runtime environment where the software executes. If the software is built with a compiler that produces native code and runs without a runtime environment, it is possible to see small differences in generated code size, which is related to larger instruction set in CISC processors.
Second, if the software is compiled to run under a runtime environment, such as .NET, you will not see any size differences, since the compiler generates the same (intermediate) code.
Finally, the 64-bit version of Windows contains the complete 64-bit version with some of the 32-bit version counterparts. This is required since some software is 32-bit and need to run without modification in Windows 64-bit.
sxsfolder inside the .iso is 177m for 32bit, 315m for 64bit. thewindowsfolder inside theinstall.wiminside the iso is 7.9g for 32bit, 11.9g for 64bit. and inside that folder we have againWinSxSwhich is 3.9g for 32bit and 6.9g for 64bit. the side-by-side stuff is the biggest chunk of data here and it's there for both 32bit and 64bit apps in the 64bit version of windows. having bigger binaries and some double versions of applications has almost no impact on the size of the isos. – akira Mar 01 '12 at 09:51sxsfolder has to do with (2), not (1). The side-by-side assemblies are not part of WoW64, although the 32-bit DLLs are executed under WoW64. However, the WinSxS folder is there to provide 32-bit and 64-bit binaries for programs which require the respective DLL - essentially having both a 32-bit and 64-bit version of the DLL. – Breakthrough Mar 01 '12 at 12:29sxsare not delivered by the .iso ... 3rd party apps. but for those apps thatsxslayer exists. so, the "truth" would be just that: the sxs folder is damn big. and its neither 1) nor 2) but something in between :) – akira Mar 01 '12 at 13:42WinSxSfolder in the .iso]). – akira Mar 01 '12 at 17:36NULLconstant is commonly equal to0, optimizing compilers will note this, and as per the C-standard, all variables take an initial value of zero. For these variables, the constant values in their opcodes can thus be omitted, and placed into the base segment of the code (as opposed to the data segment, where each variable is defined with an explicit value). This also reduces the size increase of the executable, further supporting your viewpoint. – Breakthrough Mar 07 '12 at 12:40