今天在微博上看到有人问这个问题。在装好 64 位的 Windows 之后,能在系统盘(通常是 C 盘)下看到这么一个文件夹,它比我们都知道的 Program Files 文件夹多出来个”(x86)“的后缀。那这个带”x86″的文件夹和不带”x86″的有什么区别呢? 简单来说:Program Files (x86) 存放了一些 32 位的系统文件。它和正常的 Program Files 以及 Windows 文件夹一样,都属于系统文件夹,请勿随意改动。 64 位 Windows 中提供了一种技术,Windows on Windows 64(即 WoW64)。它可以使 32 位的应用程序正常地运行在 64 位的 Windows 中,这样用户在从 32 位到 64 位过渡的过程中,不会感受到很大的不便。为了能让 32 位的程序正常运行,64 位的 Windows 中自带了一大部分的 32 位的系统文件,当 32 位程序运行的时候,系统会给它虚拟出一个 32 位的环境,这样 32 位程序会以为自己运行在 32 位 Windows 中。Windows 的系统文件主要是存放在 %SystemDrive%\Program Files 和 %Windir%\System32 中(即通常的 C:\Program Files 和 C:\Windows\System32)。64 位系统中,这两个文件夹存放的是 64 位的系统文件,为了存放 32 位的同名系统文件,64 位系统中有另外两个文件夹与之对应,%SystemDrive%\Program Files (86) 和 %Windir%\SysWoW64(即通常的 C:\Program Files (86) 和 C:\Windows\SysWoW64)。 当 32 位程序需要访问 Program Files 或者 System32 中的文件时,系统会自动转向到 Program Files (x86) 或者 SysWoW64 中,这样 32 位的程序就可以正常的在 64 位 Windows 中运行了。类似的情况也发生在应用程序安装的时候,64 位的程序一般都会被安装到 Program Files 中,而 32 位的程序则是装在 Program Files (x86) 中。 从 64 位系统的角度来说,WoW64 只是提供了兼容 32 位程序的方法,而系统本身则完全是 64 位的,所以把 Program Files (x86) 和 SysWoW64 这两个文件夹删除,并不会影响系统的正常运行,但是这种做法是非常不推荐的。现在 64 位应用程序的普及率并不高,很多厂商不愿意在 64 位方面投入大量精力,比如常用的聊天工具和多媒体播放工具等。在实际使用过程中,很难避免使用 32 位的应用程序,所以还是把 WoW64 留着吧。 另外补充一些常见问题: 在命令行(DOS)下如何进行 Program Files (x86) 文件夹 32 位和 64 位系统有什么差异? |
|