Commit Graph

57 Commits

Author SHA1 Message Date
f77f2bbf92 Introduce architecture-specific page map routines 2025-08-17 00:23:19 +02:00
5768d4bba6 Prepare for architecture-specific paging initialization 2025-08-16 19:58:00 +02:00
712107ae10 Simplify XTOS library 2024-06-12 18:40:52 +02:00
91e8a86ee2 Implement kernel undefined behavior sanitizer support 2024-06-12 16:19:24 +02:00
76e1fc6099 Enable hardware layer initialization code 2024-06-04 21:36:09 +02:00
7704e5d399 Initial kernel ACPI support 2024-06-04 16:24:13 +02:00
03727a61d3 Implement hardware layer pool memory management 2024-05-22 18:51:09 +02:00
74c1b03a6b Implement a system resources management routines 2024-05-16 23:08:59 +02:00
60a9e4b534 Rename source file with fb-related stuff, fix build 2024-05-13 15:59:24 +02:00
92ee74b494 Rework trap handling to access registers 2024-04-19 16:52:37 +02:00
04e22c127e Initial memory manager initialization code 2024-04-07 10:26:12 +02:00
c3831f82e7 Initial bit maps support 2024-03-12 19:15:02 +01:00
55fb9e2eb1 Implement RtlGetBaseExponent() routine for getting base(10) exponent of a given floating point value 2024-02-14 00:02:04 +01:00
99bdd917d9 Add basic kernel math support 2024-02-13 14:05:37 +01:00
460ba7c857 Fix the filename used for exports 2024-02-07 17:15:23 +01:00
f0204bf448 Enable linker map for xtoskrnl 2024-01-31 16:09:35 +01:00
8e61503de1 Implement RtlCompareGuids() kernel routine 2024-01-31 16:08:06 +01:00
9aafa63617 Move CPU and PIC support into common for i686 and amd64 place 2023-11-29 18:26:46 +01:00
f6c621c2a6 Basic processor initialization code 2023-11-28 22:31:39 +01:00
d17b06a180 Register interrupt handlers once the APIC initialization is done 2023-11-28 14:20:23 +01:00
e245754d95 Add running level management support 2023-11-25 23:14:15 +01:00
236927fba0 Move APIC related routines 2023-11-24 22:45:29 +01:00
1eecad21db Implement HlReadApicRegister() and HlWriteApicRegister() routines for basic APIC support 2023-11-20 15:26:03 +01:00
a359c9b2e8 Keep only atomic routines 2023-10-29 18:22:11 +01:00
a2e3e3d9a9 Compile rundown routines 2023-10-28 01:37:27 +02:00
f549ca54a1 Implement I/O registers related routines 2023-04-05 00:04:11 +02:00
d5dd87b889 Add initial kernel panic mechanism 2023-03-23 22:34:28 +01:00
1f8026db2f Implement RtlInterlockedCompareExchangePointer() and RtlInterlockedDecrementLongPtr() atomic routines 2023-03-17 18:06:53 +01:00
934dba37a1 Initial kernel events support 2023-03-17 16:46:18 +01:00
8f653c47dc Initial Deferred Procedure Call (DPC) support 2023-03-05 22:56:16 +01:00
e81fb68357 Initial support processor idle functionality 2023-03-02 16:25:41 +01:00
2f1c5a22a5 Add __C_specific_handler() and _except_handler3() stubs allowing to use '__try {} __except() {}' (SEH) constructions 2023-02-25 23:01:13 +01:00
9c74aafe3d Initial implementation of process initialization 2023-02-24 19:52:20 +01:00
c4d1f1cd0d Initial implementation of the thread initialization 2023-02-23 20:11:21 +01:00
88c17982e4 Thread initialization stub 2023-02-21 22:30:56 +01:00
3354075900 Initial Asynchronous Procedure Call (APC) support 2023-02-18 00:04:51 +01:00
ccaa28399a Initial semaphores support 2023-02-16 19:29:36 +01:00
98884516a1 Implement KeInitializeSpinLock() routine 2023-02-16 18:34:46 +01:00
b2456fd18a Implement kernel timer initialization routines 2023-02-16 17:56:35 +01:00
9ea1be96db Implement MmZeroPages() routine 2023-02-15 20:48:48 +01:00
b1c2b209e3 Implement RtlGetStackLimits() routine 2023-02-15 20:12:58 +01:00
28b760b089 Add stubs for allocating and freeing kernel stacks 2023-02-14 22:35:16 +01:00
d8bc45e3bb Move HL related global variables into separate file 2023-02-13 23:41:24 +01:00
5a86d61b78 Implement routines for performing atomic operations 2023-02-12 22:46:58 +01:00
929d3dfae7 Implement KeGetCurrentProcessorBlock() and KeGetCurrentProcessorControlBlock() routines for both amd64 and i686 2023-02-08 16:39:05 +01:00
d8c68ed003 Add endian conversion routines 2023-02-08 16:33:57 +01:00
3522539d4b Initialize Interrupt Descriptor Table (IDT) 2023-02-01 21:56:17 +01:00
7bf4a9ab8d Initialize boot CPU structures inside kernel on AMD64 2023-01-29 00:45:17 +01:00
27e2fdf4f2 Introduce architecture library as new kernel subsystem and move selected routines into new subsystem 2023-01-28 10:34:55 +01:00
9cbe2d458c Initial support for EFI framebuffer 2023-01-23 15:26:35 +01:00