x86_64、amd64和64位之间有什么区别?

我使用的是x86_64位的Ubuntu系统,但是每当我尝试使用其他64位镜像进行现场启动,比如昨天发布的GNOME 3.16,都无法成功。
有时候,当我尝试运行一个64位镜像的虚拟机时,也会出现问题。
这是什么原因呢?x86_64、amd64和64位之间有什么区别呢?
我的笔记本型号是Hp Pavillion dv4 1506tx。 处理器是2.20 GHz Intel Core 2 Duo Processor T6600。

当您尝试运行虚拟机时,您看到了什么错误信息?您的CPU缺少一些硬件(VT-x),这是大多数64位CPU都具备的,因此64位虚拟机可能无法运行或只能在编辑配置文件后才能运行。 - Mark Plotnick
首先,我的虚拟机中没有选项可以创建一个64位的虚拟机。我只有32位的选项。尽管我的操作系统是64位的。 而且,如果我尝试安装,会显示错误的内核。 - jgm
如果我的处理器是64位的,它是否仍然需要虚拟化支持来运行64位操作系统作为虚拟机? 为什么一个普通的64位操作系统在我的电脑上甚至无法启动? - jgm
这个内核需要一个x86_64的CPU,但是只检测到一个i686的CPU。 无法启动 - 请使用适合您的CPU的内核。这是在VirtualBox中安装64位虚拟机时出现的错误。 - jgm
你说的“以live方式启动”是指你试图在实际的计算机硬件上(而不是虚拟机)引导64位发行版,但失败了吗?我以前见过这种情况,对于Windows 8.1来说尤其如此,它的64位版本需要CPU支持VT-x,其他操作系统也可能有类似的要求。 - Mark Plotnick
1它们都是一样的,但是amd64是出于历史原因在Unix/Linux中使用的命名。 - Sergiy Kolodyazhnyy
AMD64可以在64位的AMD机器或英特尔机器上使用。对于那些不了解历史的人来说,这个名称有误导性。 - user3799318
3个回答

这可能不能解决确切的问题,但我会澄清x86_64、amd64和64位之间的区别。
每个微处理器都实现了一个指令集(也称为指令集架构或ISA)。
64位ISA或64位处理器的地址总线长度为64位。Intel/AMD具有可变长度的指令-它们的长度从1字节到15字节不等。因此,指令长度并不确定处理器的类型(32位/64位)。
x86_64是特定的64位ISA的名称。这个指令集于1999年由AMD(Advanced Micro Devices)发布。后来,AMD将其重新命名为amd64。
与x86_64不同的其他64位ISA是IA-64(由Intel于1999年发布)。

1+1 另外,CPU 还有一个数据总线和一个地址总线 - 在 x86_64(也称为 amd64)中,两者都是 64 位的。Intel Pentium 32 位指的是地址总线,因此物理内存限制为 4GB,但它采用了 64 位的数据总线。 - tinmac
1+1 是因为我一直以为它首先被命名为 amd64,但似乎 AMD 自己将其品牌化(带有商标)为 "AMD x86-64"。请参见这里这里 - Philip Couling

其实... AMD64是AMD创建的真正的64位架构,Intel获得了许可并至今使用它(就像AMD在32位CPU上获得了使用x86的许可一样)。 据我所知,x86_64只不过是一个能够处理额外内存的32位CPU,以满足所谓64位系统所需的内存(就像一个能够识别和使用超过4GB RAM的32位系统)。

这个与现有的答案有什么不同? - Thomas Ward
6不,x86_64才是真正的64位架构。你把它和i686 PAE混淆了(使用操作系统的虚拟内存表实现的物理地址扩展),后者可以将内存支持扩展到32位内存空间之外(超过4GB)。 - MariusM
2x86是一系列指令集架构的家族,它有不同的位数,如16位、32位和64位。所以我认为你对32位的理解是错误的。请查看此链接获取更多信息:link - scarface_90

维基百科关于x86指令集架构的文章中解释了这些名称之间的区别:
在其文献和产品版本名称中,微软和Sun将AMD64/Intel 64统称为x64,在Windows和Solaris操作系统中使用。Linux发行版将其称为"x86-64",其变体为"x86_64"或"amd64"。BSD系统使用"amd64",而macOS使用"x86_64"。

3虽然这个链接可能回答了问题,但最好在这里包含答案的关键部分,并提供链接作为参考。仅有链接的答案如果链接页面发生变化,就会失效。- 来自评论 - David
绝对准确的答案! - undefined