0

Sorry for stupid question, but I don't understand how to map IRQs to interrupt vectors in protected mode (or long mode). Every information what I found is for real mode (http://wiki.osdev.org/Interrupts). In protected mode, vectors 0x8-0xf are for exceptions, not for IRQs. Then, where are IRQs?

EDIT: I know IDT (and GDT ...) and local APIC (local x2APIC)

EDIT: Good, I found some clues. IRQs can be mapped via I/O APIC. But, the datasheet about I/O APIC is from 1996 !! I can't find newer.

dev1223
  • 1,148
  • 13
  • 28
  • [You suck at searching](http://www.intel.com/design/chipsets/datashts/290566.htm). Really. It's linked on the Wikipedia page for APIC. Also, how much do you think changed in the IOAPIC since the original version? Why would it be developed any further? It's all MSIs these days, IOAPIC just has to manage the legacy interrupts (that are slowly, but surely fading away from the human memory). The exact description of the IOAPIC registers is also present on the OSDev Wiki. What else could you possibly need? – Griwes Apr 03 '14 at 16:30
  • Keep in mind that there's *no spoonfeeding* in OSDev. And spoonfeeding doesn't only refer to giving you solutions in form of code - it also refers to feeding one with links to datasheets. Sure, you will get help looking for datasheets, when you need something obscure and used by close to no-one, but not when looking for datasheets that are linked on Wikipedia (and that are easily google-able - really, the link I gave you is the first hit for "IOAPIC datasheet"), or that are throughoutly described in tutorials and wiki articles. – Griwes Apr 03 '14 at 16:33
  • Also: can you tell us how long you spent actually looking? The amount and character of edits clearly demonstrates you didn't get stuck before asking. – Griwes Apr 03 '14 at 16:35
  • Thanks for your reply. Now, I know what I want. – dev1223 Apr 03 '14 at 17:34
  • And I don't want to know where can I find code, I want to know the way. – dev1223 Apr 03 '14 at 17:38
  • http://www.jamesmolloy.co.uk/tutorial_html/5.-IRQs%20and%20the%20PIT.html and http://www.osdever.net/bkerndev/Docs/isrs.htm do provide code but there is still some theory there as well. – Breavyn Apr 03 '14 at 22:50

1 Answers1

-1

Try starting here: wiki - Interrupt Descriptor Table .

rcgldr
  • 27,407
  • 3
  • 36
  • 61
  • I know it (IDT, local APIC). But I can't find information about local APIC and mapping IRQs. – dev1223 Apr 02 '14 at 14:59
  • Would this be helpful? http://www.jamesmolloy.co.uk/tutorial_html/5.-IRQs%20and%20the%20PIT.html – Nayuki Apr 02 '14 at 15:31
  • @NayukiMinase, please don't - PIC is a legacy, long deprecated piece of hardware, and tutorials often lure newcomers into doing things some old, legacy way, that might or might not work on a computer bought next month. – Griwes Apr 03 '14 at 16:34