Page 1 of 1

Help with 64-bit IDT in EFI.

Posted: Thu Oct 22, 2026 5:29 pm
by icr09
Nice to meet you all. For those who don’t know me, I’m a low-level developer with daily experience in OS development (OSDev). I’ve recently stepped away from legacy-style development to explore modern OSDev practices, and I’ve run into a challenge I haven’t been able to solve yet: the IDT (Interrupt Descriptor Table). I’ve searched through various resources—including OSDev-specific materials and the Intel manuals—but I’m still struggling to find the information I need. I’d prefer not to rely on AI for the answer; could someone provide me with some guidance on this? [-X



sources:



Intel® 64 and IA-32 Architectures Software Developer’s Manual Volume 3 (3A, 3B, 3C & 3D): System Programming Guide, April 2022


- https://wiki.osdev.org/Interrupt_Descri ... ple_Code_2

Honestly, I would appreciate it if anyone could help me. Making this change is a huge challenge for me, but it’s something new, and I want to learn about 64-bit IDTs.

thanks.

Re: Help with 64-bit IDT in EFI.

Posted: Thu Oct 22, 2026 7:31 pm
by Octocontrabass
icr09 wrote: ↑Thu Oct 22, 2026 5:29 pmbut I’m still struggling to find the information I need.
What information do you need? You've already found the Intel manuals, so I'm not sure what else you could be looking for.

Re: Help with 64-bit IDT in EFI.

Posted: Fri Oct 23, 2026 3:29 am
by icr09
Hello, thanks for your response. I need some help with turning that theory into code—I’m not sure what the next steps should be. I’ve already created the `struct`, but now I’m stuck and don’t know how to proceed.

Re: Help with 64-bit IDT in EFI.

Posted: Fri Oct 23, 2026 6:01 am
by AnotherIdiot
icr09 wrote: ↑Fri Oct 23, 2026 3:29 am Hello, thanks for your response. I need some help with turning that theory into code—I’m not sure what the next steps should be. I’ve already created the `struct`, but now I’m stuck and don’t know how to proceed.
Read the SDM, and write some assembler. You already have the struct and how it should work. The SDM defines everything the CPU should be able to do. You could also just follow the IDT tutorial, its public domain so its safe to use, no attribution.

Re: Help with 64-bit IDT in EFI.

Posted: Fri Oct 23, 2026 12:01 pm
by Octocontrabass
icr09 wrote: ↑Fri Oct 23, 2026 3:29 amI’ve already created the `struct`, but now I’m stuck and don’t know how to proceed.
That struct is an IDT entry. An IDT is an array of (usually) 256 IDT entries. You need to create that array, fill each entry with appropriate values, and tell the CPU your array is an IDT with the LIDT instruction.