Commit Graph

125 Commits

Author SHA1 Message Date
9f6121e9b2 Map the physical page for trampoline code
All checks were successful
Builds / ExectOS (i686, release) (push) Successful in 26s
Builds / ExectOS (amd64, release) (push) Successful in 28s
Builds / ExectOS (i686, debug) (push) Successful in 44s
Builds / ExectOS (amd64, debug) (push) Successful in 45s
2025-08-20 20:37:55 +02:00
ebae8c655c Expand CR4, MSR, and EFER register definitions
All checks were successful
Builds / ExectOS (amd64, debug) (push) Successful in 24s
Builds / ExectOS (i686, debug) (push) Successful in 25s
Builds / ExectOS (amd64, release) (push) Successful in 42s
Builds / ExectOS (i686, release) (push) Successful in 41s
2025-08-19 23:59:58 +02:00
1a0bc7f65f Update and correct CR4 bit definitions
All checks were successful
Builds / ExectOS (amd64, release) (push) Successful in 34s
Builds / ExectOS (i686, release) (push) Successful in 41s
Builds / ExectOS (i686, debug) (push) Successful in 32s
Builds / ExectOS (amd64, debug) (push) Successful in 43s
2025-08-19 21:45:13 +02:00
1dcd3fceed Define page map information structure for both supported architectures
Some checks failed
Builds / ExectOS (amd64, debug) (push) Successful in 25s
Builds / ExectOS (i686, release) (push) Failing after 33s
Builds / ExectOS (i686, debug) (push) Failing after 23s
Builds / ExectOS (amd64, release) (push) Successful in 34s
2025-08-16 20:08:12 +02:00
22f81a106b Update forward declarations for PML2/PML3 types
Some checks failed
Builds / ExectOS (amd64, debug) (push) Successful in 21s
Builds / ExectOS (i686, debug) (push) Failing after 20s
Builds / ExectOS (i686, release) (push) Failing after 34s
Builds / ExectOS (amd64, release) (push) Successful in 36s
2025-08-16 00:33:18 +02:00
7e08dc286e Separate types for legacy (PML2) and PAE (PML3) paging
Some checks failed
Builds / ExectOS (i686, debug) (push) Failing after 20s
Builds / ExectOS (amd64, debug) (push) Successful in 22s
Builds / ExectOS (amd64, release) (push) Successful in 36s
Builds / ExectOS (i686, release) (push) Failing after 32s
2025-08-16 00:29:20 +02:00
560bd8b65e Update CPUID requests
Some checks failed
Builds / ExectOS (amd64, debug) (push) Failing after 26s
Builds / ExectOS (amd64, release) (push) Failing after 20s
Builds / ExectOS (i686, release) (push) Failing after 25s
Builds / ExectOS (i686, debug) (push) Failing after 19s
2025-08-10 16:53:45 +02:00
574582f977 Add forward declarations for CPUID feature enums
All checks were successful
Builds / ExectOS (i686, debug) (push) Successful in 30s
Builds / ExectOS (amd64, debug) (push) Successful in 36s
Builds / ExectOS (i686, release) (push) Successful in 29s
Builds / ExectOS (amd64, release) (push) Successful in 34s
2025-08-10 16:36:32 +02:00
bb5deb10d5 Rename enumeration lists
All checks were successful
Builds / ExectOS (amd64, debug) (push) Successful in 24s
Builds / ExectOS (i686, debug) (push) Successful in 23s
Builds / ExectOS (amd64, release) (push) Successful in 37s
Builds / ExectOS (i686, release) (push) Successful in 36s
2025-08-10 16:32:49 +02:00
a9a264252a Add enums for CPU feature flags used in CPUID detection
All checks were successful
Builds / ExectOS (i686, release) (push) Successful in 26s
Builds / ExectOS (amd64, debug) (push) Successful in 36s
Builds / ExectOS (i686, debug) (push) Successful in 28s
Builds / ExectOS (amd64, release) (push) Successful in 35s
2025-08-10 16:25:26 +02:00
58c2092049 Revert latest changes
Some checks failed
Builds / ExectOS (i686, release) (push) Failing after 22s
Builds / ExectOS (i686, debug) (push) Failing after 23s
Builds / ExectOS (amd64, release) (push) Successful in 2m9s
Builds / ExectOS (amd64, debug) (push) Successful in 2m11s
2025-08-09 14:53:31 +02:00
39d8f82caf Define MM_HARDWARE_POOL_PAGE_COUNT
Some checks failed
Builds / ExectOS (amd64, debug) (push) Failing after 11s
Builds / ExectOS (amd64, release) (push) Failing after 9s
Builds / ExectOS (i686, release) (push) Failing after 8s
Builds / ExectOS (i686, debug) (push) Failing after 11s
2025-08-08 21:44:33 +02:00
7b8f4f15cc Add APIC Logical Destination Register (LDR) shifts and correct APIC delivery mode values
All checks were successful
Builds / ExectOS (i686) (push) Successful in 6m22s
Builds / ExectOS (amd64) (push) Successful in 23s
2024-07-23 20:14:06 +02:00
906e09fd9f Refactor COM port support, to get rid of global variables in library
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 37s
Builds / ExectOS (i686) (push) Successful in 36s
2024-06-12 18:02:29 +02:00
86bc2042e5 Cleanup XTDK headers
All checks were successful
Builds / ExectOS (i686) (push) Successful in 35s
Builds / ExectOS (amd64) (push) Successful in 36s
2024-06-06 23:09:03 +02:00
92e861ebae Cleanup APIC related headers
All checks were successful
Builds / ExectOS (i686) (push) Successful in 39s
Builds / ExectOS (amd64) (push) Successful in 43s
2024-06-06 21:50:20 +02:00
4212453cf5 Fix APIC initialization code
All checks were successful
Builds / ExectOS (i686) (push) Successful in 35s
Builds / ExectOS (amd64) (push) Successful in 37s
2024-06-06 16:49:08 +02:00
ef65bceccd Initialize legacy PIC and mask all interrupts
All checks were successful
Builds / ExectOS (i686) (push) Successful in 37s
Builds / ExectOS (amd64) (push) Successful in 37s
2024-06-05 16:08:54 +02:00
6176ca38a8 Cleanup hardware allocation memory pool related code
Some checks failed
Builds / ExectOS (amd64) (push) Successful in 32s
Builds / ExectOS (i686) (push) Failing after 32s
2024-06-02 17:29:31 +02:00
7f8846f23d Map memory for hardware layer on i686
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 35s
Builds / ExectOS (i686) (push) Successful in 34s
2024-05-27 22:17:30 +02:00
70d1295919 Do not support non-PAE systems
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 32s
Builds / ExectOS (i686) (push) Successful in 30s
2024-05-24 23:47:29 +02:00
03ba3b5583 Add missing forward references for APIC related structures
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 34s
Builds / ExectOS (i686) (push) Successful in 33s
2024-05-24 23:41:27 +02:00
94a40501d4 Mask APIC ICR0 and disable APIC interrupts for initialization time by raising APIC TPR
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 49s
Builds / ExectOS (i686) (push) Successful in 48s
2024-05-24 23:39:06 +02:00
b4588d5b4c Make ExectOS only run on processors which support PAE
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 55s
Builds / ExectOS (i686) (push) Successful in 53s
2024-05-24 16:30:39 +02:00
143803aad9 PPE needs PAE on i686
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 46s
Builds / ExectOS (i686) (push) Successful in 46s
2024-05-22 23:09:30 +02:00
609538b9be Implement MmpGetPdeAddress() and MmpGetPteAddress() routines for i686 architecture as well as MmpMemoryExtensionEnabled() for checking PAE/LA57 support
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 51s
Builds / ExectOS (i686) (push) Successful in 50s
2024-05-22 22:47:28 +02:00
03727a61d3 Implement hardware layer pool memory management
Some checks failed
Builds / ExectOS (amd64) (push) Failing after 46s
Builds / ExectOS (i686) (push) Failing after 44s
2024-05-22 18:51:09 +02:00
efef3cb80d Cleanup EFLAGS related definitions
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 38s
Builds / ExectOS (i686) (push) Successful in 37s
2024-05-14 16:22:10 +02:00
38b0b2ac7d Use correct stack when using preallocated processor structures
All checks were successful
Builds / ExectOS (i686) (push) Successful in 49s
Builds / ExectOS (amd64) (push) Successful in 50s
2024-05-08 15:57:24 +02:00
b65ff2a767 Implement MmAllocateProcessorStructures() routine as a temporary hack to get a buffer for AP initialization
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 46s
Builds / ExectOS (i686) (push) Successful in 44s
2024-05-07 23:30:11 +02:00
276eb77862 Update KPROCESSOR_BLOCK structure
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 34s
Builds / ExectOS (i686) (push) Successful in 33s
2024-05-07 16:20:40 +02:00
22693a48d3 Rework trap handling assembly code
All checks were successful
Builds / ExectOS (i686) (push) Successful in 32s
Builds / ExectOS (amd64) (push) Successful in 32s
2024-04-23 15:07:08 +02:00
a36c02fde8 Use common name for EFLAGS and RFLAGS, regardless the CPU architecture
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 34s
Builds / ExectOS (i686) (push) Successful in 33s
2024-04-21 22:35:06 +02:00
92ee74b494 Rework trap handling to access registers
Some checks failed
Builds / ExectOS (i686) (push) Failing after 28s
Builds / ExectOS (amd64) (push) Failing after 29s
2024-04-19 16:52:37 +02:00
befa211aa7 Add PFN related structures and definitions
All checks were successful
Builds / ExectOS (i686) (push) Successful in 34s
Builds / ExectOS (amd64) (push) Successful in 36s
2024-04-08 19:03:58 +02:00
04e22c127e Initial memory manager initialization code
Some checks failed
Builds / ExectOS (amd64) (push) Failing after 23s
Builds / ExectOS (i686) (push) Failing after 22s
2024-04-07 10:26:12 +02:00
d7b103f85d Add forward references for PTE related structures
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 32s
Builds / ExectOS (i686) (push) Successful in 31s
2024-04-03 16:03:17 +02:00
c6f3422c49 Update PTE related structures
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 42s
Builds / ExectOS (i686) (push) Successful in 41s
2024-04-03 16:00:26 +02:00
4b2d8ded72 No parameters are expected, explicitly
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 25s
Builds / ExectOS (i686) (push) Successful in 28s
2024-02-20 16:55:12 +01:00
badb16e37d Add lock queue to processor control block
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 31s
Builds / ExectOS (i686) (push) Successful in 26s
2024-02-05 19:21:19 +01:00
af687603d0 Add kernel stack guard pages definition
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 36s
Builds / ExectOS (i686) (push) Successful in 27s
2024-02-04 19:21:42 +01:00
c716ad81f0 i686 supports switching to huge pages mode with 2MB or 4MB page size only
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 25s
Builds / ExectOS (i686) (push) Successful in 26s
2024-01-18 14:48:43 +01:00
5acf8b4abd Add page size enumeration list
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 39s
Builds / ExectOS (i686) (push) Successful in 27s
2024-01-18 14:22:51 +01:00
e64cf4d0aa Add CR4_LA57 definition
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 42s
Builds / ExectOS (i686) (push) Successful in 32s
2024-01-14 21:06:02 +01:00
0d1fcde3a5 Add missing StallScaleFactor to KPROCESSOR_BLOCK
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 30s
Builds / ExectOS (i686) (push) Successful in 26s
2023-11-28 23:08:35 +01:00
f6c621c2a6 Basic processor initialization code
Some checks failed
Builds / ExectOS (amd64) (push) Failing after 16s
Builds / ExectOS (i686) (push) Failing after 15s
2023-11-28 22:31:39 +01:00
e5adc31af7 Implement basic APIC support, including X2APIC
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 27s
Builds / ExectOS (i686) (push) Successful in 26s
2023-11-27 22:38:15 +01:00
4ca4e298f0 Add more PIC/APIC related definitions
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 29s
Builds / ExectOS (i686) (push) Successful in 26s
2023-11-26 23:35:14 +01:00
14a966043e Add missing Interrupt request level definitions
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 27s
Builds / ExectOS (i686) (push) Successful in 27s
2023-11-25 18:50:59 +01:00
0e6bf984a5 Add APIC vector definitions
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 29s
Builds / ExectOS (i686) (push) Successful in 27s
2023-11-25 18:33:01 +01:00