Commit Graph

562 Commits

Author SHA1 Message Date
0375a08ca5 Add definitions for pool management structures 2026-03-25 15:03:33 +01:00
d55a8219e3 Revert e2eff2b836 2026-03-25 15:03:33 +01:00
8a35727e43 Fix DebugPrint definition 2026-03-25 15:03:33 +01:00
322fea763b Replace NULL with NULLPTR 2026-03-25 15:03:33 +01:00
427c7ae810 Track valid physical memory pages using a PFN bitmap 2026-03-25 15:03:33 +01:00
d8a430ee42 Add runlevel verification to memory pool allocations 2026-03-25 15:03:33 +01:00
66df8fddda Fix critical memory corruption bug caused by overwriting active page tables marked as free memory 2026-03-25 15:03:33 +01:00
72b3fe8209 Set up owner pointers for all pages during pool initialization 2026-03-25 15:03:33 +01:00
b959e1908f Add MIN and MAX helper macros 2026-03-25 15:03:33 +01:00
cd60cd7b1a Implement page allocation interface 2026-03-25 15:03:33 +01:00
50654a28b5 Add definition for guarded PTE flag and remove hardcoded value 2026-03-25 15:03:33 +01:00
52355698a9 Refactor EFI memory mapping to support distinct mapping strategies 2026-03-25 15:03:33 +01:00
94320928bc Refactor memory layout structure 2026-03-25 15:03:33 +01:00
bd7129ce13 Calculate total boot image size and pass it to kernel 2026-03-25 15:03:33 +01:00
af9cc43b1d Remove unused kernel base address definition 2026-03-25 15:03:33 +01:00
2e0a32ca1d Rollback bootloader memory management changes 2026-03-25 15:03:33 +01:00
ae43f7c723 Drop obsolete KSEG0_KERNEL_BASE definition 2026-03-25 15:03:33 +01:00
edfae7ec6a Extract MapDescriptor logic and simplify memory mapping API 2026-03-25 15:03:33 +01:00
31002b27be Clean up unused physical-to-virtual conversion routines 2026-03-25 15:03:33 +01:00
d2374799eb Temporary fix for PAE addressing limits and KSEG0 base mapping 2026-03-25 15:03:33 +01:00
3270f920dd Remove dead code from paging and PTE management 2026-03-25 15:03:33 +01:00
5e54aca398 Update modified page list enum terminology 2026-03-25 15:03:33 +01:00
68604e1bc0 Update memory manager type definitions and constants 2026-03-25 15:03:33 +01:00
ed769e023f Respect architecture-specific PTE layouts and write PTEs via PML-aware helpers 2026-03-25 15:03:33 +01:00
be6ad1658f Update SelfMapAddress 2026-03-25 15:03:33 +01:00
140b25ff76 Architecture-specific system PTE limits 2026-03-25 15:03:33 +01:00
c760016ee5 Extend memory layout 2026-03-25 15:03:33 +01:00
28fc0ab435 Compute PTE count per page from entry size 2026-03-25 15:03:33 +01:00
df9028d425 Introduce kernel virtual memory layout 2026-03-25 15:03:33 +01:00
117d174e6e Add PFN_COUNT typedef 2026-03-25 15:03:33 +01:00
8334fe5a48 Correct LA57 paging base addresses, add self-map constants and extend PTE structures 2026-03-25 15:03:33 +01:00
b7f0f07f8b Add page list and PTE pool type enums 2026-03-25 15:03:33 +01:00
05b9bb75a7 Add PTE attribute definitions 2026-03-25 15:03:33 +01:00
fd7cc019ee Unify MMPML2_PTE field naming convention 2026-03-25 15:03:33 +01:00
779726c4d6 Add missing EmptyPteList field to MMPAGEMAP_INFO 2026-03-25 15:03:33 +01:00
d1553ff84a Add SHA-1 hashing support
All checks were successful
Builds / ExectOS (amd64, release) (push) Successful in 33s
Builds / ExectOS (amd64, debug) (push) Successful in 35s
Builds / ExectOS (i686, debug) (push) Successful in 56s
Builds / ExectOS (i686, release) (push) Successful in 54s
2026-02-19 18:49:29 +01:00
94a8917c5c Revert RTL::LinkedList::RemoveEntryList() routine signature and extend RTL::LinkedList API
All checks were successful
Builds / ExectOS (amd64, debug) (push) Successful in 38s
Builds / ExectOS (i686, debug) (push) Successful in 37s
Builds / ExectOS (amd64, release) (push) Successful in 1m17s
Builds / ExectOS (i686, release) (push) Successful in 1m14s
2026-02-16 15:43:00 +01:00
4b5188260f Fix build
All checks were successful
Builds / ExectOS (i686, debug) (push) Successful in 33s
Builds / ExectOS (amd64, debug) (push) Successful in 36s
Builds / ExectOS (i686, release) (push) Successful in 47s
Builds / ExectOS (amd64, release) (push) Successful in 51s
2026-02-11 17:43:07 +01:00
edb40dd62b Change RTL::LinkedList::RemoveEntryList() routine signature
Some checks failed
Builds / ExectOS (amd64, debug) (push) Failing after 25s
Builds / ExectOS (i686, release) (push) Failing after 23s
Builds / ExectOS (amd64, release) (push) Failing after 44s
Builds / ExectOS (i686, debug) (push) Failing after 42s
2026-02-10 18:24:26 +01:00
4e9dc15501 Define VIRTUAL macro
All checks were successful
Builds / ExectOS (amd64, debug) (push) Successful in 32s
Builds / ExectOS (amd64, release) (push) Successful in 30s
Builds / ExectOS (i686, debug) (push) Successful in 32s
Builds / ExectOS (i686, release) (push) Successful in 30s
2025-10-29 22:32:07 +01:00
164ff0c135 Expand spinlock queue levels
All checks were successful
Builds / ExectOS (amd64, release) (push) Successful in 31s
Builds / ExectOS (amd64, debug) (push) Successful in 33s
Builds / ExectOS (i686, debug) (push) Successful in 32s
Builds / ExectOS (i686, release) (push) Successful in 30s
2025-10-28 08:35:34 +01:00
00b04f5405 Refactor IDT gate setup to use explicit DPL and type fields
All checks were successful
Builds / ExectOS (amd64, debug) (push) Successful in 35s
Builds / ExectOS (amd64, release) (push) Successful in 39s
Builds / ExectOS (i686, release) (push) Successful in 36s
Builds / ExectOS (i686, debug) (push) Successful in 32s
2025-10-18 18:29:49 +02:00
c206b443ed Move XTLDR image base definition to arch-specific config
Some checks failed
Builds / ExectOS (amd64, debug) (push) Failing after 28s
Builds / ExectOS (i686, debug) (push) Failing after 27s
Builds / ExectOS (i686, release) (push) Failing after 35s
Builds / ExectOS (amd64, release) (push) Failing after 37s
2025-10-16 12:22:30 +02:00
9bf867af95 Propagate compile definitions to bootsector sources
Some checks failed
Builds / ExectOS (amd64, debug) (push) Failing after 39s
Builds / ExectOS (i686, debug) (push) Failing after 39s
Builds / ExectOS (amd64, release) (push) Failing after 32s
Builds / ExectOS (i686, release) (push) Failing after 29s
2025-10-11 23:18:14 +02:00
32bacdd228 Unify OVMF firmware and add WHPX targets
Some checks failed
Builds / ExectOS (amd64, release) (push) Successful in 32s
Builds / ExectOS (i686, debug) (push) Failing after 41s
Builds / ExectOS (i686, release) (push) Failing after 26s
Builds / ExectOS (amd64, debug) (push) Failing after 41s
2025-10-10 11:00:11 +02:00
e5611d8081 Add support for WHPX accelerator on Windows and introduce OVMF Pure EFI firmware 2025-10-09 17:35:03 +02:00
6e507be5e9 Add source directory include path for bootsector assembly
All checks were successful
Builds / ExectOS (amd64, debug) (push) Successful in 30s
Builds / ExectOS (i686, release) (push) Successful in 26s
Builds / ExectOS (amd64, release) (push) Successful in 38s
Builds / ExectOS (i686, debug) (push) Successful in 36s
2025-10-09 09:25:50 +02:00
ec4e8c416c Switch disk image to FAT32 and install VBR
Some checks failed
Builds / ExectOS (i686, release) (push) Failing after 25s
Builds / ExectOS (i686, debug) (push) Successful in 35s
Builds / ExectOS (amd64, debug) (push) Successful in 37s
Builds / ExectOS (amd64, release) (push) Failing after 27s
2025-10-05 18:48:42 +02:00
646e246ec6 Improve emulation targets and add BIOS variants
Some checks failed
Builds / ExectOS (i686, debug) (push) Failing after 23s
Builds / ExectOS (amd64, debug) (push) Failing after 21s
Builds / ExectOS (amd64, release) (push) Successful in 34s
Builds / ExectOS (i686, release) (push) Successful in 32s
2025-10-01 18:26:27 +02:00
ae941d2761 Make use of 'diskimg' tool. This breaks compatibility with older versions of xtchain
All checks were successful
Builds / ExectOS (i686, debug) (push) Successful in 35s
Builds / ExectOS (amd64, debug) (push) Successful in 37s
Builds / ExectOS (amd64, release) (push) Successful in 24s
Builds / ExectOS (i686, release) (push) Successful in 32s
2025-10-01 16:05:48 +02:00