diff options
| author | Richard Qin <richard.qin.x@gmail.com> | 2025-12-10 01:19:32 +0800 |
|---|---|---|
| committer | Richard Qin <richard.qin.x@gmail.com> | 2025-12-10 01:19:32 +0800 |
| commit | 497e4a1b2f6f9181518e9887991c0464bd8f6bcf (patch) | |
| tree | efd498dd66b8995a4bd0e31ca6af454b4ef342d2 /build | |
| parent | c36e1b5e5e069ce1735dcc2a94aa45ba72ea2441 (diff) | |
| download | lume-497e4a1b2f6f9181518e9887991c0464bd8f6bcf.tar.gz lume-497e4a1b2f6f9181518e9887991c0464bd8f6bcf.tar.xz | |
feat: Add initial Supervisor Mode Trap Handler
Implement the initial mechanism for handling traps and exceptions in Supervisor Mode.
Set up the stvec Control and Status Register (CSR) to direct all S-Mode Traps (Interrupts and Exceptions) to a unified assembly entry point.
Implemented assembly code for saving and restoring the Trap Context (register state).
Provides the foundational framework necessary for future Timer Interrupts and System Calls.
Diffstat (limited to 'build')
| -rwxr-xr-x | build/kernel.elf | bin | 19104 -> 19384 bytes |
| -rw-r--r-- | build/src/drivers/uart.o | bin | 2688 -> 3640 bytes |
| -rw-r--r-- | build/src/kernel/main.o | bin | 7752 -> 7568 bytes |
| -rw-r--r-- | build/src/kernel/trap/handler.o | bin | 0 -> 11952 bytes |
| -rw-r--r-- | build/src/kernel/trap/trap.o | bin | 0 -> 1344 bytes |
5 files changed, 0 insertions, 0 deletions
diff --git a/build/kernel.elf b/build/kernel.elf Binary files differindex 6e2868c..9b56c35 100755 --- a/build/kernel.elf +++ b/build/kernel.elf diff --git a/build/src/drivers/uart.o b/build/src/drivers/uart.o Binary files differindex 6f45d67..035b61d 100644 --- a/build/src/drivers/uart.o +++ b/build/src/drivers/uart.o diff --git a/build/src/kernel/main.o b/build/src/kernel/main.o Binary files differindex 5188b34..f945e0a 100644 --- a/build/src/kernel/main.o +++ b/build/src/kernel/main.o diff --git a/build/src/kernel/trap/handler.o b/build/src/kernel/trap/handler.o Binary files differnew file mode 100644 index 0000000..322d37d --- /dev/null +++ b/build/src/kernel/trap/handler.o diff --git a/build/src/kernel/trap/trap.o b/build/src/kernel/trap/trap.o Binary files differnew file mode 100644 index 0000000..e7bde6b --- /dev/null +++ b/build/src/kernel/trap/trap.o |
