arch/i386/i386/machdep.c

init386 関数

IOPORTとIOMAPの登録

IOPORTとIOMAPをextent managerに登録しているぽいが、良くわからないので後回し。

GDT(Global DescriptorTable)の作成

gdtに、セグメント情報を作成します。gdtdescriptor型のポインタであり、256個のdescriptor型配列であるbootstrap_gdtのアドレスが格納されています。

gdtには、次のセグメント情報が格納されます。

LDT(Local Descriptor Table)の作成

ldtに、セグメント情報とGATE CALLを作成します。ldtdescriptor型の256個の配列になっています。

IDT(Interrupt Descriptor Table)の作成

GDTR[Global Descriptor Tbale Register]にldtのアドレスをセット

IDTR[Interrupt Descriptor Tbale Register]にidtのアドレスをセット

割り込みコントローラの初期化

isa_defaultirq関数をcallして、割り込みコントローラの初期化を行ないます。

Last modified: Mon Jun 30 19:09:11 2008 JST