GDT and IDT memory locations
Posted: Sat Dec 25, 2004 5:51 am
Hello,
I would like to know, in your opinion, where is the best locations (pro and cons) for the GDT and the IDT: at a fixed memory location (for example, bases = 0x500 and 0xD00) or along with the kernel code (bases = GDT and IDT first entries).
I ask this because I've tried them both and while both of them worked fine on any real computer, the fixed location technique caused me a lot of troubles on Bochs, like tripple faulting for no clear reason when loading the kernel at 1mb and using any interrupt or adding entries to the GDT (new segments and call-gates).
Thanks in advance.
I would like to know, in your opinion, where is the best locations (pro and cons) for the GDT and the IDT: at a fixed memory location (for example, bases = 0x500 and 0xD00) or along with the kernel code (bases = GDT and IDT first entries).
I ask this because I've tried them both and while both of them worked fine on any real computer, the fixed location technique caused me a lot of troubles on Bochs, like tripple faulting for no clear reason when loading the kernel at 1mb and using any interrupt or adding entries to the GDT (new segments and call-gates).
Thanks in advance.