为什么64位的系统还有“C:\Program Files(x86)”文件夹?

为什么64位的系统还有“C:\Program Files(x86)”文件夹?

一切都要从1978年说起,英特尔在这年发布了世界上第一款 x86 指令集架构的处理器「Intel 8086」。

之后这个系列的处理器名称都以数字 86 作为结尾,比如 Intel 8086、80286、以及 80486,所以慢慢的这个系列就被简称为 x86 了。

x86 从 1985 年发布的 Intel 80386 处理器开始使用「32 位架构指令集」,称之为 x86_32(此前都是 16 位),随着 Intel 不断推出新的 32 位处理器,慢慢大家发现 32 位 和 x86 通常指的都是一个东西,所以 32 位也被简称为 x86 ,这也是为什么现在我们看到的x86 几乎都默认指 32 位。

然而谁能想到 AMD 在2003年一个翻身,抢在英特尔之前发布了 64 位 处理器,并将其命名为「AMD 64」,从此 x86 正式进入了 64 位 的时代。

64 位 不光数字上领先 32 位,在性能和应用场景上也得到了大幅提升(后面讲),之后英特尔也跟进推出了与之兼容的处理器,命其为「Intel 64」,两者被统称为 x86_64,往后 x86_64 被简称成了 x64。

在硬件上,32 位支持的内存是 2^32 Byte,也就是最大只支持 4 GB 内存。而64位支持 2^64 Byte,也就是 17179869184G = 16777216TB内存 ≈ ∞ 。64 位处理器解决了内存地址总线的问题。

另外, 64 位处理器的「寄存器」也是 64 位,曾经 32 位处理器一次运算需要 4 个「寄存器」,在 64 位处理器上只需要 2 个就够了。好处就是速度更快了。

在 Windows 系统中,32 位系统单个程序进程最多只能使用 2GB 内存空间,这就导致 Adobe 等吃内存的软件几乎无法工作,所以这些大型软件都没有 32 位版本。在 64 位系统则中没有这方面的限制。

其次,在 Windows 32 位系统下 C:\ProgramFiles\ 是软件默认安装目录,C:\ System32\ 是系统文件和 DLL 库的目录。

在 64 位系统中,C:\Program Files\ 是 64 位软件的默认安装目录,而C:\Program Files(x86)\ 是 32 位软件的默认安装目录。因为 DLL 文件也分 32 位和 64 位的缘故,所以 64 位系统中 C:\Windows\System32\ 目录用来放 64 位 DLL 文件,C:\Windows\SysWOW64\ 目录则存放 32 位的 DLL。

此博客主要参考下面的一片文章:

简单归纳一下32位、64位、x86、x64的区别和联系_x86为什么是32位-CSDN博客

感觉有用的话,点个赞再走呗!

相关推荐

昋的解释
365提款注单审核

昋的解释

📅 08-03 👁️ 7544
秘密森林
365bet大陆网站

秘密森林

📅 07-04 👁️ 3833
闲鱼小法庭要等多久开庭?多久出结果?
365bet大陆网站

闲鱼小法庭要等多久开庭?多久出结果?

📅 06-28 👁️ 3622