Part of series osdev |
http://lxr.linux.no/#linux+v2.6.25.6/arch/x86/boot/header.S#L110
_start:
start_of_setup:
http://lxr.linux.no/#linux+v2.6.25.6/arch/x86/boot/header.S#L229
_start
jumps to start_of_setup:
main()
http://lxr.linux.no/#linux+v2.6.25.6/arch/x86/boot/main.c#L122
start_of_setup:
calls main()
go_to_protected_mode()
http://lxr.linux.no/#linux+v2.6.25.6/arch/x86/boot/pm.c#L153
main()
calls go_to_protected_mode()
protected_mode_jump:
http://lxr.linux.no/#linux+v2.6.25.6/arch/x86/boot/pmjump.S#L31
go_to_protected_mode()
calls protected_mode_jump:
startup_32:
http://lxr.linux.no/#linux+v2.6.25.6/arch/x86/boot/compressed/head_32.S#L35
protected_mode_jump:
jumps to startup_32:
decompress_kernel()
start_kernel()
http://lxr.linux.no/#linux+v2.6.25.6/arch/x86/boot/compressed/misc.c#L368
startup_32:
calls to decompress_kernel()
http://lxr.linux.no/#linux+v2.6.25.6/init/main.c#L507
startup_32:
calls to start_kernel()
rest_init()
http://lxr.linux.no/#linux+v2.6.25.6/init/main.c#L432
start_kernel()
calls to rest_init()
kernel_init()
cpu_idle()
http://lxr.linux.no/linux+v2.6.25.6/init/main.c#L808
start_kernel()
create thread and call to kernel_init()
init_post()
http://lxr.linux.no/#linux+v2.6.25.6/init/main.c#L769
kernel_init()
calls to init_post()