57

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?

wizlog
  • 13,573

3 Answers3

77

There are several reasons for the size discrepancy:

  1. 64-bit Windows contains a translation layer (Windows 32-bit on Windows 64-bit, or "WoW64") that allows it to run 32-bit software.
  2. 64-bit Windows also contains 32-bit versions of various programs (Internet Explorer) and libraries (in the WinSxS folder). As noted in the comments, this is the most significant reason for the size difference.
  3. 64-bit memory addresses are twice as long as 32-bit memory addresses, so 64-bit pointers are also twice as long. 64-bit programs that make heavy use of pointers will be noticeably larger than their 32-bit counterparts.

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.

Breakthrough
  • 34,847
rob
  • 14,388
11

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.

HCL
  • 649
2

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.