Commit Graph

276 Commits

Author SHA1 Message Date
4e02664977 Merge branch 'master' into memmgr 2026-03-26 23:48:49 +01:00
9b19bc94b3 Replace manual IDT manipulation with SetIdtGate function call 2026-03-26 23:10:00 +01:00
9479f3d364 Implement APIC presence check and panic if unsupported 2026-03-25 22:52:58 +01:00
e734ddda65 Implement TLB flushing for cache attribute changes during page removal 2026-03-25 13:24:44 +01:00
4292d89185 Add expansion table and overflow handling for pool tag tracking 2026-03-24 08:13:05 +01:00
3c52b88802 Unify naming convention for pool tracking structures 2026-03-23 20:12:18 +01:00
944d5b5c0a Implement pool allocations and frees tracking 2026-03-23 18:54:18 +01:00
b97babb2bf Remove temporary hack and allocate processor structures from non-paged pool 2026-03-22 23:40:15 +01:00
caacd9e275 Separate synchronization guards from spinlock implementation 2026-03-21 22:46:56 +01:00
916d124c9b Separate synchronization guards from spinlock implementation 2026-03-21 22:44:00 +01:00
d85e313c15 Implement core pool allocation and deallocation logic 2026-03-21 20:35:02 +01:00
233440c8be Merge branch 'master' into memmgr 2026-03-21 18:30:45 +01:00
140af4278e Fix uninitialized member in SpinLockGuard 2026-03-21 18:29:19 +01:00
f862871a1f Implement RAII guard for memory pool synchronization 2026-03-19 19:59:40 +01:00
afb20a1796 Decouple pool initialization and validation from allocation logic 2026-03-18 20:31:06 +01:00
876923e107 Track valid physical memory pages using a PFN bitmap 2026-03-17 00:05:33 +01:00
184ce5735e Add runlevel verification to memory pool allocations 2026-03-16 15:33:36 +01:00
76d99dc9db Introduce pool allocation and free routines 2026-03-16 13:54:42 +01:00
42525e5993 Unify PTE type definitions across architectures 2026-03-15 20:23:44 +01:00
0fed593147 Ensure SS and RSP are saved in trap frame 2026-03-15 17:32:01 +01:00
6cdb66cbb3 Ensure SS and ESP are saved in trap frame 2026-03-15 00:33:09 +01:00
6175413db2 Merge branch 'master' into memmgr 2026-03-13 19:43:01 +01:00
428928c7e1 Simplify panic interface by using C++ overloading 2026-03-13 19:42:03 +01:00
35eac9d34c Make MM::Pte::InitializeSystemPtePool public 2026-03-10 23:01:50 +01:00
b7a92ccce4 Implement memory deallocation and coalescing for non-paged pool 2026-03-05 10:08:54 +01:00
5a9b7c0258 Implement canonical address validation routine 2026-03-04 14:15:33 +01:00
7bdd0dfe2c Implement basic non-paged pool allocator 2026-02-26 20:10:03 +01:00
511dd15c0c Implement page allocation interface 2026-02-26 13:42:58 +01:00
0658e98436 Expose the number of available physical pages 2026-02-25 20:25:50 +01:00
bfdb7bc476 Refactor PFN linking logic 2026-02-25 19:27:53 +01:00
44fa2ca13a Merge branch 'master' into memmgr 2026-02-25 13:08:48 +01:00
7e62919c6b Rework singly linked list API 2026-02-24 14:49:56 +01:00
a136f21f4b Merge branch 'master' into memmgr 2026-02-23 09:31:53 +01:00
2bbc21b667 Implement singly linked list support 2026-02-22 12:25:51 +01:00
d1553ff84a Add SHA-1 hashing support 2026-02-19 18:49:29 +01:00
94a8917c5c Revert RTL::LinkedList::RemoveEntryList() routine signature and extend RTL::LinkedList API 2026-02-16 15:43:00 +01:00
f7b7b61ea4 Add interface to retrieve page map level (PML) 2026-02-11 20:23:24 +01:00
edb40dd62b Change RTL::LinkedList::RemoveEntryList() routine signature 2026-02-10 18:24:26 +01:00
b51f21f55c Introduce page directory initialization helper 2026-02-06 00:20:01 +01:00
6a7bc64ac7 Overhaul kernel memory layout initialization and pool sizing 2026-01-30 14:47:13 +01:00
5e3fb7a5a3 Move PFN database size tracking to memory layout 2026-01-29 22:26:31 +01:00
72f34c8286 Add private helper declaration 2026-01-29 20:10:48 +01:00
7f6114f8e5 Add skeleton for memory pool allocator 2026-01-29 20:00:09 +01:00
fd29cf55ef Fix incorrect header guard comment 2026-01-29 19:49:54 +01:00
46c24e653e Add routine to retrieve installed memory size 2026-01-15 19:09:10 +01:00
c3607ea943 Add missing annotations 2026-01-14 22:48:25 +01:00
587b85d0a4 Annotate input parameters 2026-01-13 15:39:16 +01:00
bd1a3605d2 Add logic to insert pages at the head of standby list 2026-01-05 23:12:58 +01:00
154ca7be35 Allow PFN insertion at the beginning of standby list 2026-01-05 19:36:12 +01:00
410286d012 Replace ULONG with PFN_COUNT in system PTE variables 2026-01-05 16:48:26 +01:00