とほほ

0.01 なカーネルなんですが、init/main.c の main() 手続きに jmp する明示的な記述が無くって困ってたんですが IA32_Arh_Dev_Man_Vol3_i.pdf の 9.8 にて保護モード動作のサポートにあたって初期化が必要なデータ構造が列挙されます。
その中の一つとして

プロセッサが保護モードに切り替わるときに実行されるコードをストアしているコード・セグメント

という記述を発見。よくよく考えてみたらカーネルの本体って 0x1000 にコピーされてるはずなので head.s で gdt と対応付けられてるはずで、上記の条件を満たしているのかどうなのか。
ただ、そーゆー意味だと head.s な after_page_tables で push されてる

	pushl $main

ソレは一体何なんだ、って話なんですがorz
とりあえずその先を読みますな方向で。