57 Commits

Author SHA1 Message Date
da5335410d
core/x86_64: Add general protection fault handler 2025-02-15 22:19:08 +01:00
c4bb857c4e
core: Reserve physical page 0
In the kernel's early stages we access physical memory identity-mapped, so it's not very good for us to allocate that frame and then try to use it.
2025-02-15 22:18:49 +01:00
baf3d39e98
core: Make findMultibootTags take a context argument
Will be useful later.
2025-02-15 22:18:05 +01:00
d8236bc8f7
core: Add a page fault handler 2025-02-15 15:18:40 +01:00
18ec598394
core: Enable interrupts in platformEndInit()
This way, each architecture can re-enable interrupts whenever necessary
2025-02-15 15:18:24 +01:00
1ec239147a
core: Add workaround for QEMU-specific triple-faults without KVM
Without KVM, qemu inserts an invalid 12-GiB reserved entry at the end of the physical address space, making the kernel reserve way more space than necessary for the page bitmap (and overwriting the page directory pages).
2025-02-15 15:16:50 +01:00
fce8a58cf6
Ready. Set. Go!
Microkernel development in Zig, should be fun! =]
2025-02-13 22:39:48 +01:00