Skip to content

linux arch x86 boot header.S

jminrang edited this page Feb 22, 2013 · 1 revision
code 16
16bit code

ljmp $BOOTSEG, $start2

cs = $BOOTSEG, ip = $start2
코드 줄 아끼기 좋음

msg_loop: bios call 을 이용하여 메세지 출력 why > video memory에 쓰는것보단 표준이서?

bs_die: 여기에서는 메세지 출력 못하면 죽는다. ljmp $0xF000, $0xFFF0 =⇒ 0xFFFF0 reboot 루틴이 있다.

그이외의 대부분은 나중에 쓰는 정보로 컴파일 과정에서 채워진다. 그리고 어느 section 에 할당되는지 알아야 한다.

이외의 부분은 C 함수 불러오기 위한 초기화, setup_sig check heap, bss, stack initialize

jmp main

Clone this wiki locally