I have oxc0000000 => 0x00000000, and 0x00000000 => 0x00000000, but when I execute the line
Code: Select all
kernel_dir->tables[0] = 0;
[edit] sorry, i pasted the wrong bochs dump
Code: Select all
<bochs:2> creg
CR0=0x60000010: pg CD NW ac wp ne ET ts em mp pe
CR2=page fault laddr=0x00000000
CR3=0x00000000
PCD=page-level cache disable=0
PWT=page-level writes transparent=0
CR4=0x00000000: osxsave smx vmx osxmmexcpt osfxsr pce pge mce pae pse de tsd pvi vme
<bochs:3> r
eax: 0x00000000 0
ecx: 0x00000000 0
edx: 0x00000543 1347
ebx: 0x00000000 0
esp: 0x00000000 0
ebp: 0x00000000 0
esi: 0x00000000 0
edi: 0x00000000 0
eip: 0x0000fff0
eflags 0x00000002
id vip vif ac vm rf nt IOPL=0 of df if tf sf zf af pf cf
This will not happen though if interrupts are disabled, but my idt is being set with all virtual addresses.