i havent had this much trouble in a long time!
basicly, i am still following JamesM's tutorial and i have reached the multitasking section. but having implemented the code from this section, i am running into an old error: receiving a page fault when switching page directory.
it is not like it was before though. it runs fine until i have cloned the kernel directory and load the physical address into CR3. but the most annoying thing is it does not get handled, it just throws a triple fault and exits. here is the bochslog:
Code: Select all
00164721852i[CPU0 ] CPU is in protected mode (active)
00164721852i[CPU0 ] CS.d_b = 32 bit
00164721852i[CPU0 ] SS.d_b = 32 bit
00164721852i[CPU0 ] EFER = 0x00000000
00164721852i[CPU0 ] | RAX=00000000c0082000 RBX=0000000000106ff8
00164721852i[CPU0 ] | RCX=0000000000000300 RDX=00000000c0082000
00164721852i[CPU0 ] | RSP=0000000000106f58 RBP=0000000000106f68
00164721852i[CPU0 ] | RSI=000000000002d73a RDI=000000000002d73b
00164721852i[CPU0 ] | R8=0000000000000000 R9=0000000000000000
00164721852i[CPU0 ] | R10=0000000000000000 R11=0000000000000000
00164721852i[CPU0 ] | R12=0000000000000000 R13=0000000000000000
00164721852i[CPU0 ] | R14=0000000000000000 R15=0000000000000000
00164721852i[CPU0 ] | IOPL=0 id vip vif ac vm RF nt of df IF tf sf zf af pf cf
00164721852i[CPU0 ] | SEG selector base limit G D
00164721852i[CPU0 ] | SEG sltr(index|ti|rpl) base limit G D
00164721852i[CPU0 ] | CS:0008( 0001| 0| 0) 00000000 000fffff 1 1
00164721852i[CPU0 ] | DS:0010( 0002| 0| 0) 00000000 000fffff 1 1
00164721852i[CPU0 ] | SS:0010( 0002| 0| 0) 00000000 000fffff 1 1
00164721852i[CPU0 ] | ES:0010( 0002| 0| 0) 00000000 000fffff 1 1
00164721852i[CPU0 ] | FS:0010( 0002| 0| 0) 00000000 000fffff 1 1
00164721852i[CPU0 ] | GS:0010( 0002| 0| 0) 00000000 000fffff 1 1
00164721852i[CPU0 ] | MSR_FS_BASE:0000000000000000
00164721852i[CPU0 ] | MSR_GS_BASE:0000000000000000
00164721852i[CPU0 ] | RIP=0000000000101b7f (0000000000101b7f)
00164721852i[CPU0 ] | CR0=0xe0000011 CR1=0x0 CR2=0x0000000000108130
00164721852i[CPU0 ] | CR3=0xc0082000 CR4=0x00000000
00164721852i[CPU0 ] >> cld : FC
00164721852p[CPU0 ] >>PANIC<< exception(): 3rd (14) exception with no resolution
Thanks in advance!
James.