![为什么我可以在我的电脑上安装 32 位或 64 位 Linux?](https://linux22.com/image/1347818/%E4%B8%BA%E4%BB%80%E4%B9%88%E6%88%91%E5%8F%AF%E4%BB%A5%E5%9C%A8%E6%88%91%E7%9A%84%E7%94%B5%E8%84%91%E4%B8%8A%E5%AE%89%E8%A3%85%2032%20%E4%BD%8D%E6%88%96%2064%20%E4%BD%8D%20Linux%EF%BC%9F.png)
可能重复:
32 位操作系统可以在 64 位处理器上运行吗?
我买了一台 PC 并在上面安装 Linux。显然,我可以在上面安装 32 位或 64 位 Ubuntu。这是为什么呢?
我以为操作系统的架构取决于处理器。例如,AMD 64 位处理器支持 64 位 Ubuntu,而不是 32 位,对吗?
答案1
x86 处理器以多种模式之一运行。64 位“长”模式是在 32 位 CPU 中已经存在的大量模式之上引入的附加模式。64 位 CPU 仍然保留所有旧模式,就像 32 位 CPU 保留旧 8086 的旧 16 位模式一样。
简单来说,自 20 世纪 70 年代末最初的 8086 CPU(它本身是更老的 CPU 8080 的衍生产品)问世以来,x86 架构经过多年的发展,已经添加了附加模式。
80386 支持所谓的 32 位或“受保护”模式。但是,为了兼容,它会以原始的 16 位 8086 模式启动。操作系统初始化程序的任务之一是在 32 位 CPU 上将其切换到此 32 位受保护模式。
从 AMD 对此的 64 位扩展开始(英特尔曾短暂地拥有一个竞争标准),还有另一种模式被添加,称为 64 位“长模式”。但是,至少在基于 BIOS 的系统上(UEFI 可能有所不同),此类 CPU 仍然以旧的 16 位模式启动。当操作系统完成所有设置后,它需要将 CPU 切换到 64 位模式来运行 64 位代码。
因此,每个 64 位 CPU 也是 32 位 CPU,也是 16 位 CPU。这取决于您将 CPU 置于哪种模式。