为什么 64 位版本称为 AMD64 而 32 位版本称为 i386?

ajs*_*sie 19 cpu ubuntu

我一直不明白这一点。

这就是我所知道的:如果您想处理超过 2GB 的 RAM,则为 64 位操作系统。否则,32 位操作系统。

所以在 Ubuntu 的主页上你可以下载 64 位或 32 位。但是 64 位称为 amd64,而 32 位称为 i386。

所以我必须有一个 AMD 处理器才能运行 amd64?和英特尔运行 i386?

如果有人对软件进行编码(比如说 Apache)。他必须编码一个 32 位和一个 64 位吗?是否有些软件只适用于 32 而不是 64,反之亦然?

提前致谢!

Jon*_*ser 30

64 位版本通常称为“amd64”,因为 AMD 开发了 64 位指令扩展。(AMD 在 Intel 开发 Itanium 时将 x86 架构扩展到 64 位,但 Intel 后来采用了相同的指令。)

32 位版本被称为 i386,因为这些芯片上使用的 32 位指令集是由英特尔发起的。

您几乎可以在任何支持 64 位的 x86 兼容芯片上运行 64 位版本,也可以在任何现代 x86 兼容芯片上运行 32 位版本。

根据您编写软件的方式,它可能需要或可能不需要重写为 64 位。(通常,编译软件需要更改,但并非所有解释软件——例如 Python 或 Perl——都需要更改。)


con*_*yer 6

几分钟前,我在回答您的类似问题时解释了名称的由来。


Ign*_*ams 5

AMD 推出了使用 64 位 ISA,因此称为 AMD64。Intel 有自己的版本 EM64T,它大多兼容。同样,英特尔首先在其 i80386 或简称 i386 上使用了 32 位 ISA。AMD 很久以前就从他们那里获得了许可。