Drew Galbraith
838ef01a2a
[Zion] Add a keyboard interrupt handler and a driver manager.
2023-11-25 11:14:30 -08:00
Drew Galbraith
a93aa3a426
[Zion] Add an invalid opcode handler.
2023-11-22 12:10:18 -08:00
Drew Galbraith
2a984a93ec
[Zion] Add a shim Floating Point Exception handler.
2023-11-21 15:17:32 -08:00
Drew Galbraith
d99624daf6
[zion] Move to using the LAPIC timer over the PIT.
2023-08-01 20:18:47 -07:00
Drew Galbraith
c35cef65fe
Don't mistakenly mask interrupts in user space
2023-06-12 19:01:09 -07:00
Drew Galbraith
bd32e85164
Fix race condition in page fault handler.
...
We enabled interrupts before getting the value of cr2 in the handler.
If the handler was preempted, cr2 could have been overriden by a page
fault in a separate thread or process.
2023-06-07 22:24:50 -07:00
Drew Galbraith
629dca278b
Enable the PIC and add a timer.
...
This causes a GP fault after the timer runs for some time.
2023-05-29 21:52:01 -07:00
Drew Galbraith
747c2a4e17
Add a page fault handler
2023-05-18 10:59:45 -07:00
Drew Galbraith
9fc1aa15ef
Add an interrupt descriptor table.
...
Set up a very basic handler for divide by zero and
general protection faults.
2023-05-17 22:54:37 -07:00