【发布时间】:2014-05-06 13:46:09
【问题描述】:
我正在尝试了解 x86 和 ARM 架构上的 linux 启动过程,并想知道在 x86 上启动 linux 和在 ARM 上启动 linux 之间的区别。
我在x86上浏览过linux引导协议,发现内核分两步加载。
https://www.kernel.org/doc/Documentation/x86/boot.txt
1) 加载带有命令行参数分配的实模式内核代码。
2) 加载保护模式(非真实)内核代码。
是不是因为 x86 架构的地址空间异常?
我在 ARM 端看不到这种行为,其中 linux Image 被作为一个整体加载到映射到连续位置的逻辑内核空间的 CPU 地址中。
谁能提供我在这两种架构上的 linux 启动过程的见解?
【问题讨论】:
标签: assembly linux-kernel x86 arm bootloader