Commit Graph

195 Commits

Author SHA1 Message Date
5cf3dfa844 Add bootstrap physical page allocator 2025-12-15 12:38:08 +01:00
070c508e42 Introduce kernel virtual memory layout 2025-12-14 15:35:24 +01:00
5224dc315f Compute PFN database size during MM initialization 2025-12-13 22:50:27 +01:00
eae48320f3 Harden PFN initialization and expose page count 2025-12-13 21:01:13 +01:00
17b5649362 Make memory type verification helpers accessible to PFN 2025-12-13 20:50:32 +01:00
783a9eea3a Extract PFN management into separate module 2025-12-13 20:42:48 +01:00
237f6a2974 Refactor memory manager initialization into MM::Manager 2025-12-13 20:21:08 +01:00
ee9514fd5c Fix GetP5eAddress return type 2025-12-13 19:58:49 +01:00
63c27a149a Add missing virtual GetPteDistance to pagemap interface 2025-12-06 00:29:51 +01:00
7694df7744 Add architecture-specific GetPteDistance 2025-12-06 00:19:24 +01:00
c710ec4688 Refactor XPA detection API 2025-12-04 23:07:59 +01:00
86aa22e5f8 Fix incorrect pointer types 2025-11-30 20:03:12 +01:00
4a7494ad3f Split paging interface into arch-specific code 2025-11-30 19:19:32 +01:00
d4287198b0 Implement virtual address resolvers for all page map levels and add XPA status accessor 2025-11-30 18:23:51 +01:00
4265ae92d0 Add MM::PageMap::GetXpaStatus() for querying PML level 2025-11-29 23:45:00 +01:00
931586eebd Refactor PageMap to enable architecture-specific VA translation 2025-11-29 23:37:08 +01:00
66f27e4b9a Add GetPageFrameNumber() to PTE interfaces 2025-11-04 23:03:47 +01:00
10b8ab347a Make MM::Paging::GetExtendedPhysicalAddressingStatus public 2025-11-04 22:51:34 +01:00
071c840ca8 Replace writable flag with AttributesMask in PTE setup 2025-11-04 17:34:49 +01:00
cb2da54956 Unify PTE pointer types across MM subsystem 2025-11-03 22:13:32 +01:00
c28c3f8344 Add input qualifiers to page map interface definitions 2025-11-03 20:04:21 +01:00
dfb0284427 Add input qualifiers to paging interface definitions 2025-11-03 16:00:46 +01:00
1150b9ecdb Add PTE management routines 2025-10-30 22:03:25 +01:00
ffa480d69a Implement unified PTE accessors and management helpers 2025-10-30 20:14:02 +01:00
0120ba167f Introduce RAII helpers for runlevel transitions 2025-10-29 23:07:27 +01:00
164ff0c135 Expand spinlock queue levels 2025-10-28 08:35:34 +01:00
f538d035e2 Introduce global spinlock initialization and RAII guard classes 2025-10-27 20:48:44 +01:00
00b04f5405 Refactor IDT gate setup to use explicit DPL and type fields 2025-10-18 18:29:49 +02:00
ae4b95380a Fix AP startup symbol name 2025-09-19 19:23:39 +02:00
2b49b23d41 Add trampoline support and move assembler prototypes 2025-09-19 19:07:27 +02:00
d0577611ca Move asm headers 2025-09-19 13:47:18 +02:00
98ad2087de Replace remaining NULL occurrence with NULLPTR 2025-09-16 16:04:37 +02:00
556e832056 Restore missing assembly headers 2025-09-16 08:50:11 +02:00
f4561c1f4f Remove leftover old headers and fix missed spots 2025-09-16 08:46:53 +02:00
0a0fdffc46 Clean up kernel headers 2025-09-15 22:46:57 +02:00
52c4d2a346 Complete MM class definitions with missing fields 2025-09-15 22:17:46 +02:00
404595801d Migrate MM subsystem to C++ 2025-09-15 22:15:07 +02:00
e0844b38cd Move dbg.hh into KD namespace 2025-09-14 01:40:21 +02:00
f321ca908b Refine and export kernel debugger printing 2025-09-14 01:25:56 +02:00
79ec28641a Migrate KD subsystem to C++ 2025-09-13 23:40:07 +02:00
4592955da1 Migrate HL subsystem to C++ 2025-09-13 19:15:13 +02:00
7cdfa8f79d Refactor KE subsystem 2025-09-12 13:11:15 +02:00
0647b853a6 Migrate PO subsystem to C++ 2025-09-11 22:52:40 +02:00
5f44458e64 Fix calling conventions 2025-09-11 19:44:00 +02:00
744fffdd8a Clean up atomic routine declarations 2025-09-11 19:05:12 +02:00
0a3450f649 Add missing header files 2025-09-11 18:58:43 +02:00
9518e7da8e Migrate RTL subsystem to C++ 2025-09-11 18:28:24 +02:00
510dccc5dc Add missing forward reference to KeGetInitializationBlock 2025-09-10 15:38:30 +02:00
17712883c5 Include new KE headers 2025-09-09 23:24:43 +02:00
4947f788d5 Migrate KE subsystem to C++ 2025-09-09 23:20:50 +02:00