i686和x86_64有什么区别?


Answers:


69

i686是32位版本,而x86_64是OS的64位版本。

64位版本将更好地扩展内存,特别是对于需要在同一过程中使用大量内存的大型数据库之类的工作负载。不要考虑在32位计算机上运行(重要的)数据库服务器。

但是,对于大多数其他事情,32位版本还可以。32位代码占用的内存更少,因此您将拥有更多的其他存储空间。操作系统可以使用的内存限制没有什么不同,只是每个进程的内存。

因此,这实际上取决于您要使用它的用途。如果您打算为大型服务器开发软件或运行大型服务器,请使用64位。否则使用32。


1
如果RAM小于或等于4GB,则不应安装64位操作系统。如果您有4GB以上的RAM,则应安装64位OS。否则,您将无法访问所有RAM。
d -_- b 2012年

3
@toor我不同意,1)32位操作系统能够使用超过4G的ram和PAE等(现在已成为标准),2)并非所有进程的地址空间都可以映射到(不同的)物理RAM,因此即使您的RAM略少于4G,使用64位OS也很有用。
MarkR 2012年

3
@toor当然,如果您要使用2-3 Gb的私有匿名页面运行单个进程,则在32位OS上将变得很困难。在这种系统上,地址空间的耗尽是一个严重的问题,而不是耗尽(虚拟)内存。但是,切换到64位内核和用户空间可能会导致任务消耗更多的内存,甚至可能超出您的目标。在某些情况下,也许64位内核,32位用户空间是好的。
MarkR 2012年

1
如果您有64位处理器,请运行64位OS!h,似乎很明智
Sam Watkins 2013年

2
你们都没有提到64位二进制文​​件通常是在支持64位汇编的情况下编译的,这很奇怪!在某些情况下,能够利用64位操作可以显着提高应用程序的速度。值得一提的是Crypto(OpenSSL等)。如果您的处理器支持64位,则通常最好使用64位应用程序!
jduncanator 2014年

121

简短答案:

i686 = 32-bit Intel x86 arch 
x86_64 = 64-bit Intel x86 arch

18
这个答案对我来说最有用,尤其是当我已经知道32位和64位时。让我失望的部分是“ i686”。通常,我只希望x86
安东尼

4
为什么x86_64包含“ 86”部分?
mmdemirbas 2012年

3
关于为什么选择“ 86”的好问题。只好查了一下我自己。 serverfault.com/questions/188177/…–
thrag

8
为了推广“386”, “486”, “586”, “686” -绰号为架构-可以追溯到像“80386”芯片, “80486”等
布拉德

3
@Brad正确无误:) 64位(或者在本例中为x86_64中的_64位)仅指x86指令集的扩展。它仍然是相同的程序集(-ish),但是它增加了新的指令来处理64位整数等。因此,x86为何仍然有意义。当人们说x86时,大多数时候他们实际上是指32位,因为x86也适用于64位计算机。
jduncanator 2014年

31

ix86通过处理器的生成来指示处理器指令集。例如:Intel Pentium,Intel Core2Duo,AMD K6。ix86已经存在了很多年,如果您拥有2000年以后生产的处理器,它可能至少具有i686指令集。没有其他指示符暗示这将是32位版本。

x86_64表示使用64位寄存器和地址空间。仅当您具有64位处理器并且要使用64位版本的操作系统时,才选择此选项。

这是你的选择。我相信所有AMD Turion处理器都支持64位。您只需要决定要使用Arch Linux的64位版本还是32位版本。


0

macemoneta解释

基本上,不同的内核名称标识了编译器要优化的指令集。i686 CPU可以运行i586和i386指令,因此,正如您所观察到的,i686可以运行i386内核。但是,它的执行效果可能不如为i686专门编译的最优。

这些是您通常会遇到的名称:

x86_64处理器

  • AMD的Athlon 64,Athlon 64-FX和Opteron
  • 英特尔EMT64处理器-Nocona Xeon,奔腾4使用Prescott内核的E0修订版(又名奔腾4,型号F)

i686处理器*所有Intel 32位Pentium(不包括Pentium 1和Pentium MMX)*所有AMD 32位Athlon

i586处理器

  • 所有32位AMD K
  • 奔腾1
  • 奔腾MMX

i386处理器

  • 与Intel 80386兼容的CPU的通用“最低公分母”名称(包括上述所有内容,但没有利用这些较新CPU上的扩展指令)。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.