Answers:
大小差异有几个原因:
第一个和最后一个原因所起的作用几乎不及64位Windows附带的32位软件-但为完整起见,应考虑它们。
sxs
文件夹与(2),而不是(1)有关。尽管32位DLL是在 WoW64 下执行的,但并行程序集不是WoW64的一部分。但是,WinSxS文件夹可以为需要相应DLL的程序提供32位和64位二进制文件 -本质上具有DLL的32位和64位版本。
WinSxS
在.iso 的文件夹内找到)引起的。
由于以下两个原因,通常64位版本要比32位版本大。
首先要考虑的是编译器的类型和执行软件的运行时环境。如果该软件是使用生成本机代码的编译器构建的,并且在没有运行时环境的情况下运行,则可能会看到生成的代码大小存在细微差异,这与CISC处理器中的较大指令集有关。
其次,如果将软件编译为在.NET等运行时环境下运行,您将看不到任何大小差异,因为编译器会生成相同的(中间)代码。
最后,Windows的64位版本包含完整的64位版本以及某些32位版本的对应版本。这是必需的,因为某些软件是32位的,并且需要在Windows 64位中运行而无需修改即可运行。
sxs
.iso中的文件夹对于32位是177m,对于64位是315m。isowindows
内部的文件夹install.wim
对于32位是7.9g,对于64位是11.9g。在该文件夹中,我们又有WinSxS
一个32位的3.9g和64位的6.9g。并排的东西是这里最大的数据块,在64位版本的Windows中,对于32位和64位应用程序都存在。具有更大的二进制文件和某些双重版本的应用程序几乎不会影响isos的大小。