开头路径中的“.”代表“arch/x86/”
1. .boot/header.S: start_of_setup
2. .boot/main.c: main() -> pm.c: go_to_protected_mode()
3. .boot/pmjump.S: protected_mode_jump
4. .boot/compressed/head_32.S: startup_32() -> decompress_kernel()
5. .kernel/head_32.S: startup_32() -> head32.c: i386_start_kernel()
6. init/main.c: start_kernel() -> rest_init()
7. rest_init()先new thread kernel_init(),后执行kernel_idle();
8. kernel_init() -> init_post() -> kernel_execve("/sbin/init")[PS.不尽然,可以传递init启动参数]
阅读(2776) | 评论(0) | 转发(0) |