111 Commits

Author SHA1 Message Date
Alex
a452b9acd1
Add support for legacy Multiboot aka Multiboot1 2023-09-06 22:43:33 +03:00
Alex
6d95cd5261
Rework for APIC & added support for x2APIC 2023-08-31 01:07:55 +03:00
Alex
622214003f
Update GDT & IDT structures 2023-08-25 02:53:35 +03:00
Alex
83bd843e2b
Move ACPI and DSDT files to Core directory 2023-08-24 04:29:39 +03:00
Alex
aa108c08f6
Rework IDT 2023-08-24 03:14:52 +03:00
Alex
bef0897442
Fix 32-bit compilation 2023-08-23 16:59:21 +03:00
Alex
ef3b761d4f
Removal of NASM support and migration of .asm files to .s 2023-08-11 04:57:32 +03:00
Alex
2c51e4432f
Update kernel 2023-08-06 04:53:14 +03:00
Alex
41db477173
Update kernel 2023-06-10 13:11:25 +03:00
Alex
d527121883
Add implementation for GDT & IDT on x32 and QoL fixes 2023-05-17 03:28:57 +03:00
Alex
dc6fd148fc
Reserve more pages for SMP trampoline 2023-04-23 06:28:12 +03:00
Alex
89d747e52c
Update timing implementation 2023-04-23 05:30:58 +03:00
Alex
fa4713fdff
Fix kernel crash after an interrupt occurs on the BSP 2023-04-11 11:30:37 +03:00
Alex
046c693a52
Use an enum to specify what ist to use 2023-04-11 11:28:35 +03:00
Alex
70e11f17e7
Implement std::atomic and remove the old implementation Atomic and rename vector.hpp to vector 2023-04-10 05:29:41 +03:00
Alex
b4dbf2c281
QoL and bug fixes 2023-04-10 03:11:46 +03:00
Alex
98c137566d
Replace __attribute__ with a macro from types.h 2023-04-07 05:22:14 +03:00
Alex
540152a339
Add support for 2MB and 1GB map 2023-04-07 01:39:11 +03:00
Alex
76239ec4ad
Add Get() function for every cpuid struct 2023-04-06 18:36:16 +03:00
Alex
5e5819e3be
Fix compilation issues 2023-04-06 18:11:01 +03:00
Alex
d2c241fcb6
Wrong block comment for nasm files 2023-04-04 02:21:14 +03:00
Alex
25256d81a8
Added license headers to all project files 2023-04-04 02:19:05 +03:00
Alex
93afcd2210
QoL improvements 2023-03-27 20:11:32 +03:00
Alex
9ce301907a
QoL improvements 2023-03-24 16:22:42 +02:00
Alex
6c1e2e50a4
Add GetKernelStack 2023-03-23 23:21:50 +02:00
Alex
86c290f830
Remove broken code 2023-03-23 23:21:34 +02:00
Alex
6b01a21a71
Change Interrupts::Handler 2023-03-23 20:48:09 +02:00
Alex
115557a551
For Virtual() use KernelPageTable as page table 2023-03-20 00:11:10 +02:00
Alex
ac88a1edb7
Zero tss stack tables 2023-03-06 03:21:06 +02:00
Alex
5c91f23527
x32 is now compiling 2023-03-04 21:17:19 +02:00
Alex
207eb77160
Debug messages 2023-03-03 16:14:13 +02:00
Alex
75883030ad
Renamed "interrupts.hpp" to "ints.hpp" 2023-02-28 12:58:09 +02:00
Alex
65dfa325e9
Optimize 2023-02-27 22:20:02 +02:00
Alex
62e9d7b9c9
fixme 2023-02-24 10:15:05 +02:00
Alex
c817be50ff
Put CPU namespaces in separate files to make cpu.hpp smaller 2023-02-22 01:48:38 +02:00
Alex
73e5f13d35
Signal all cores to stop on exception 2023-02-19 00:51:44 +02:00
Alex
0f1f66668b
Optimize smp GetCurrentCPU() 2023-02-15 07:13:25 +02:00
Alex
2c714bbcbc
Optimize GetCurrentCPU 2023-02-14 16:07:02 +02:00
Alex
4501826025
Kernel now uses SSE instructions properly 2023-01-03 06:36:15 +02:00
Alex
e53bc14240
Fixed tasking SSE 2022-12-29 02:05:07 +02:00
Alex
0ac4fa3e14
APIC timer should tick every 1ms 2022-12-24 06:24:26 +02:00
Alex
873b2e0051
VirtualBox now works with SMP enabled 2022-12-21 21:46:25 +02:00
Alex
cddf0426e3
Fixed compiler warnings 2022-12-21 20:05:57 +02:00
Alex
48e8f0c513
Updated TaskStateSegment structure 2022-12-21 05:13:59 +02:00
Alex
0a2e8f7154
Updated bitmap command 2022-12-20 00:47:46 +02:00
Alex
eab80c215c
Fixed wrong stack pointer & new tss command for crash screen 2022-12-07 04:15:20 +02:00
Alex
f86777a856
KPT global variable 2022-12-06 09:30:09 +02:00
Alex
0289054900
Changed a lot of files. Summary: profiler support; "SafeFunction"; UnlockDeadLock kernel config; Code optimization & more 2022-11-28 08:25:37 +02:00
Alex
fa921fe626
Update files 2022-11-18 06:46:43 +02:00
Alex
1a6665fd67
Not useful 2022-11-18 05:25:33 +02:00