Age | Commit message (Collapse) | Author |
|
Clean up everything in the i386 arch directory. This code has been in
dire need of refactoring for a long while. All the inline assembly
functions and the data structures related to the architecture should be
placed into their own header file. Now the scheduler can access
registers and ISRs without having to deal with arch-specific code.
Signed-off-by: Danny Holman <dholman@gymli.org>
|
|
Move all the functions that control IRQ lines to the PIC driver. This
allows the IDT controller to handle only raw interrupts no matter where
they come from.
Signed-off-by: Danny Holman <dholman@gymli.org>
|
|
Actually install the ISR handlers to the IDT.
Signed-off-by: Danny Holman <dholman@gymli.org>
|
|
Remove the irq number from the irq handler. This information is already
stored in the ISR frame structure.
Signed-off-by: Danny Holman <dholman@gymli.org>
|
|
Call the page fault handler when a page fault occurs instead of just
dumping the registers and halting.
Signed-off-by: Danny Holman <dholman@gymli.org>
|
|
Add a infinite while loop just in case the "hlt" instruction fails.
Signed-off-by: Danny Holman <dholman@gymli.org>
|
|
Remove several preprocessor macros that serve no purpose and pollute the
source file.
Signed-off-by: Danny Holman <dholman@gymli.org>
|
|
The serial_writestring function is small enough and platform-agnostic,
and therefore it should be moved into the main serial header and marked
as inline.
Signed-off-by: Danny Holman <dholman@gymli.org>
|
|
Add support for rudementary system calls and IRQ interrupts.
Signed-off-by: Danny Holman <dholman@gymli.org>
|
|
Simplify the interrupt descriptor table setup and frame assembly.
Signed-off-by: Danny Holman <dholman@gymli.org>
|
|
Include information about the current stack frame in the IDT handler(s).
Signed-off-by: Danny Holman <dholman@gymli.xyz>
|
|
Fix the i386's general exception handler to actually work. Fix provided
by Jon Sanderson (jjs295356@gmail.com).
Signed-off-by: Danny Holman <dholman@gymli.xyz>
|
|
Create files that add IDT support for i386.
Signed-off-by: Danny Holman <dholman@gymli.xyz>
|