Commit Graph

17 Commits

Author SHA1 Message Date
86a119ea51 scheduler: Fix page table switch for scheduler
The userspace process may map pages where the kernel has allocated data and cause a crash.

This patch fixes this issue by having a separate IRQ handler which sets the kernel page table at the start of SchedulerInterruptHandler() and restores it in SchedulerHandlerStub() function.
2024-11-17 03:11:20 +02:00
ab6529f6e6 memory: Add kernel stack manager 2024-10-30 02:28:49 +02:00
85b6fdef80 Implement Virtual Terminal and fix /dev/kcon 2024-09-22 13:17:19 +03:00
87e263f5fe Fix warning "ignoring changed section attributes for .text" 2024-04-01 20:52:55 +03:00
7d1041a3bd Refactor interrupt handling code 2024-03-13 18:46:01 +02:00
f34f6f94c6 Change the IDT table to use interrupt gate 2024-02-28 04:48:05 +02:00
3eb25c8e14 Remove unnecessary calls to CPUID.Get() 2024-02-25 18:43:11 +02:00
578b8f74da Refactor Timer::OnInterruptReceived method signature 2024-02-23 05:31:49 +02:00
1bc7c4b4dd Fix ExceptionHandlerStub to work with CPU::ExceptionFrame 2024-02-15 22:09:33 +02:00
b0575ba4f2 Rename "SafeFunction" macro to "NoSecurityAnalysis" 2024-02-04 04:31:30 +02:00
96daa43d38 Update kernel 2024-01-19 06:47:42 +02:00
cfee4807c4 ISR 0x1 should have RING3 2023-10-20 01:42:24 +03:00
da7e9d781f GetCurrentCPU reporting wrong ID 2023-10-20 01:42:02 +03:00
889e1522a3 Restructured and rewritten entire codebase 2023-10-09 01:16:24 +03:00
32a17c5e63 Update files 2022-10-10 23:31:46 +03:00
9b7c1fb369 i686 now compiles (but not booting) 2022-10-10 19:55:52 +03:00
f746110fbe Implemented GDT & IDT 2022-10-10 09:00:32 +03:00