Commit Graph

148 Commits

Author SHA1 Message Date
72918cdc18 Rewrite syscall stub and SyscallsFrame structure 2023-05-05 17:33:33 +03:00
71c9306828 Make syscall handler stub easier to debug 2023-05-04 22:40:18 +03:00
52f506e882 Remove multiboot2 boot code 2023-04-27 05:06:07 +03:00
c1eaabf97b Bug fixes 2023-04-25 05:14:12 +03:00
03b667f5c0 Fix i386 and aarch64 compilation issues 2023-04-23 07:55:27 +03:00
cd0a470e1d Fix a bug where GetCurrentProcess returned null inside DSDT 2023-04-23 07:50:09 +03:00
dc6fd148fc Reserve more pages for SMP trampoline 2023-04-23 06:28:12 +03:00
89d747e52c Update timing implementation 2023-04-23 05:30:58 +03:00
fa4713fdff Fix kernel crash after an interrupt occurs on the BSP 2023-04-11 11:30:37 +03:00
046c693a52 Use an enum to specify what ist to use 2023-04-11 11:28:35 +03:00
70e11f17e7 Implement std::atomic and remove the old implementation Atomic and rename vector.hpp to vector 2023-04-10 05:29:41 +03:00
b4dbf2c281 QoL and bug fixes 2023-04-10 03:11:46 +03:00
98c137566d Replace __attribute__ with a macro from types.h 2023-04-07 05:22:14 +03:00
540152a339 Add support for 2MB and 1GB map 2023-04-07 01:39:11 +03:00
76239ec4ad Add Get() function for every cpuid struct 2023-04-06 18:36:16 +03:00
5e5819e3be Fix compilation issues 2023-04-06 18:11:01 +03:00
b8186bb3d9 Make rsp to be at physical address 2023-04-04 21:08:45 +03:00
b265b4aced Make aarch64 compilable 2023-04-04 19:36:45 +03:00
f81922f63d Move syscall handler to SystemCalls.cpp 2023-04-04 03:25:25 +03:00
d2c241fcb6 Wrong block comment for nasm files 2023-04-04 02:21:14 +03:00
25256d81a8 Added license headers to all project files 2023-04-04 02:19:05 +03:00
28b0a393bf Add FramebufferType 2023-03-30 19:23:55 +03:00
9e21c5326b Support i386 2023-03-29 03:02:49 +03:00
93afcd2210 QoL improvements 2023-03-27 20:11:32 +03:00
028115a1b0 Boot screen & change shutting down/rebooting procedure 2023-03-25 12:05:33 +02:00
9ce301907a QoL improvements 2023-03-24 16:22:42 +02:00
7391a283a3 Use physical address for Kernel.FileBase 2023-03-23 23:26:42 +02:00
6c1e2e50a4 Add GetKernelStack 2023-03-23 23:21:50 +02:00
86c290f830 Remove broken code 2023-03-23 23:21:34 +02:00
6b01a21a71 Change Interrupts::Handler 2023-03-23 20:48:09 +02:00
f86f3d9293 Rename std functions to match the standard 2023-03-23 04:56:49 +02:00
c23385a243 Add more tables to ACPI SearchTables() 2023-03-22 20:23:38 +02:00
115557a551 For Virtual() use KernelPageTable as page table 2023-03-20 00:11:10 +02:00
bac24e520e Move bootloader code to a separate directory 2023-03-19 21:59:38 +02:00
ac88a1edb7 Zero tss stack tables 2023-03-06 03:21:06 +02:00
5c91f23527 x32 is now compiling 2023-03-04 21:17:19 +02:00
207eb77160 Debug messages 2023-03-03 16:14:13 +02:00
75883030ad Renamed "interrupts.hpp" to "ints.hpp" 2023-02-28 12:58:09 +02:00
65dfa325e9 Optimize 2023-02-27 22:20:02 +02:00
392ebc9be2 Renamed "__no_instrument_function" 2023-02-27 22:19:40 +02:00
62e9d7b9c9 fixme 2023-02-24 10:15:05 +02:00
c817be50ff Put CPU namespaces in separate files to make cpu.hpp smaller 2023-02-22 01:48:38 +02:00
73e5f13d35 Signal all cores to stop on exception 2023-02-19 00:51:44 +02:00
0f1f66668b Optimize smp GetCurrentCPU() 2023-02-15 07:13:25 +02:00
2c714bbcbc Optimize GetCurrentCPU 2023-02-14 16:07:02 +02:00
4501826025 Kernel now uses SSE instructions properly 2023-01-03 06:36:15 +02:00
ffdbc6e598 Call BeforeShutdown before shutting down 2022-12-29 05:03:59 +02:00
e53bc14240 Fixed tasking SSE 2022-12-29 02:05:07 +02:00
0ac4fa3e14 APIC timer should tick every 1ms 2022-12-24 06:24:26 +02:00
873b2e0051 VirtualBox now works with SMP enabled 2022-12-21 21:46:25 +02:00