标签: linux-kernel linux-device-driver
我正在浏览Linux内核代码并且有兴趣知道哪个文件将负责设置长模式以支持64位,或者哪个将告诉操作系统将启动将是32位还是64位?
引导加载程序代码是否负责设置此模式?
答案 0 :(得分:0)
引导加载程序(通常是GRUB)正在引导一些Linux内核。这个内核可能是32位内核(然后只能运行32位程序)或64位内核。
64位Linux内核能够通过execve(2)系统调用运行32位二进制可执行程序(32位进程)或64位程序
因此大多数内核都是64位,可以运行32位或64位ELF可执行文件。
我想,根据它们的启动方式,Linux内核以32位模式启动(至少在GRUB启动时)。