0

我正在浏览 Linux 内核代码,并且有兴趣知道哪个文件将负责设置长模式以支持 64 位,或者哪个文件会告诉操作系统要启动的是 32 位还是 64 位?

引导加载程序代码是否负责设置此模式?

4

1 回答 1

0

引导加载程序(通常是 GRUB)正在引导一些 Linux 内核。该内核可能是 32 位内核(然后只能运行 32 位程序)或 64 位内核。

64 位 Linux 内核能够通过execve(2)系统调用运行 32 位二进制可执行程序(在 32 位进程中)或 64 位程序

所以大多数内核都是 64 位的,可以运行 32 位或 64 位的ELF可执行文件。

我猜想,取决于它们的引导方式,Linux 内核以 32 位模式启动(至少在由 GRUB 引导时)。

于 2013-02-26T06:32:35.240 回答