Commit Graph

1542 Commits

Author SHA1 Message Date
ed52d421ea Implement processor feature enumeration mapping
Some checks failed
Builds / ExectOS (amd64, release) (push) Failing after -59m37s
Builds / ExectOS (amd64, debug) (push) Failing after -59m35s
Builds / ExectOS (i686, release) (push) Failing after -59m36s
Builds / ExectOS (i686, debug) (push) Failing after -59m35s
2026-05-14 21:35:43 +02:00
6df6a012d2 Partially revert ca4f3acc0e
All checks were successful
Builds / ExectOS (amd64, release) (push) Successful in -59m30s
Builds / ExectOS (amd64, debug) (push) Successful in -59m28s
Builds / ExectOS (i686, debug) (push) Successful in -59m29s
Builds / ExectOS (i686, release) (push) Successful in -59m31s
2026-05-14 21:12:09 +02:00
ac675b037e Add FeatureBits field to CPU identification structure
All checks were successful
Builds / ExectOS (amd64, debug) (push) Successful in -59m8s
Builds / ExectOS (amd64, release) (push) Successful in -59m37s
Builds / ExectOS (i686, debug) (push) Successful in -59m29s
Builds / ExectOS (i686, release) (push) Successful in -59m32s
2026-05-14 19:28:45 +02:00
ca4f3acc0e Properly identify CPU vendor
Some checks failed
Builds / ExectOS (amd64, debug) (push) Has been cancelled
Builds / ExectOS (amd64, release) (push) Has been cancelled
Builds / ExectOS (i686, debug) (push) Has been cancelled
Builds / ExectOS (i686, release) (push) Has been cancelled
2026-05-14 18:59:00 +02:00
5b7761fe7d Expose InitializeProcessorStructures as a public method
Some checks failed
Builds / ExectOS (amd64, debug) (push) Has been cancelled
Builds / ExectOS (amd64, release) (push) Has been cancelled
Builds / ExectOS (i686, debug) (push) Has been cancelled
Builds / ExectOS (i686, release) (push) Has been cancelled
2026-05-14 18:10:29 +02:00
7a2a27b1b9 Consolidate ProcessorBlock and ProcessorNumber into ProcessorStructures
Some checks failed
Builds / ExectOS (amd64, debug) (push) Has been cancelled
Builds / ExectOS (amd64, release) (push) Has been cancelled
Builds / ExectOS (i686, debug) (push) Has been cancelled
Builds / ExectOS (i686, release) (push) Has been cancelled
2026-05-14 18:00:56 +02:00
1cff58c106 Refactor processor block initialization and add registration function
All checks were successful
Builds / ExectOS (amd64, debug) (push) Successful in -59m26s
Builds / ExectOS (amd64, release) (push) Successful in -59m28s
Builds / ExectOS (i686, release) (push) Successful in -59m26s
Builds / ExectOS (i686, debug) (push) Successful in -59m24s
2026-05-14 13:15:55 +02:00
9185ceade6 Decouple processor block initialization from AllocateProcessorStructures
All checks were successful
Builds / ExectOS (amd64, debug) (push) Successful in -59m26s
Builds / ExectOS (amd64, release) (push) Successful in -59m28s
Builds / ExectOS (i686, release) (push) Successful in -59m30s
Builds / ExectOS (i686, debug) (push) Successful in -59m27s
2026-05-14 11:07:42 +02:00
908bc87b06 Add NULL checks to InitializeProcessorStructures and reorder TSS allocation
All checks were successful
Builds / ExectOS (amd64, release) (push) Successful in -59m29s
Builds / ExectOS (amd64, debug) (push) Successful in -59m26s
Builds / ExectOS (i686, release) (push) Successful in -59m29s
Builds / ExectOS (i686, debug) (push) Successful in -59m27s
2026-05-14 11:06:00 +02:00
6b852556a5 Replace magic numbers with architectural defines
All checks were successful
Builds / ExectOS (amd64, release) (push) Successful in -59m29s
Builds / ExectOS (amd64, debug) (push) Successful in -59m27s
Builds / ExectOS (i686, release) (push) Successful in -59m28s
Builds / ExectOS (i686, debug) (push) Successful in -59m26s
2026-05-13 22:01:49 +02:00
ae18468bad Add AP startup assembly trampoline for AMD64
All checks were successful
Builds / ExectOS (amd64, release) (push) Successful in -59m26s
Builds / ExectOS (amd64, debug) (push) Successful in -59m25s
Builds / ExectOS (i686, release) (push) Successful in -59m30s
Builds / ExectOS (i686, debug) (push) Successful in -59m28s
2026-05-13 21:48:42 +02:00
42bbdc9b26 Fix AP trampoline stack setup
All checks were successful
Builds / ExectOS (amd64, debug) (push) Successful in -59m27s
Builds / ExectOS (amd64, release) (push) Successful in -59m28s
Builds / ExectOS (i686, debug) (push) Successful in -59m27s
Builds / ExectOS (i686, release) (push) Successful in -59m29s
2026-05-13 21:24:27 +02:00
b1ecdc3439 Add AP startup assembly trampoline for i686
All checks were successful
Builds / ExectOS (amd64, debug) (push) Successful in -59m29s
Builds / ExectOS (amd64, release) (push) Successful in -59m29s
Builds / ExectOS (i686, debug) (push) Successful in -59m27s
Builds / ExectOS (i686, release) (push) Successful in -59m29s
2026-05-13 20:31:30 +02:00
fd7e18989d Protect debug print output with spinlock
All checks were successful
Builds / ExectOS (amd64, debug) (push) Successful in -59m28s
Builds / ExectOS (amd64, release) (push) Successful in -59m30s
Builds / ExectOS (i686, release) (push) Successful in -59m29s
Builds / ExectOS (i686, debug) (push) Successful in -59m27s
2026-05-13 14:33:41 +02:00
757eac08c6 Refactor APIC IPI dispatching
All checks were successful
Builds / ExectOS (amd64, release) (push) Successful in -59m29s
Builds / ExectOS (amd64, debug) (push) Successful in -59m28s
Builds / ExectOS (i686, release) (push) Successful in -59m30s
Builds / ExectOS (i686, debug) (push) Successful in -59m28s
2026-05-13 11:27:01 +02:00
760e58f993 Correct doxygen parameter name
All checks were successful
Builds / ExectOS (amd64, debug) (push) Successful in -59m26s
Builds / ExectOS (amd64, release) (push) Successful in -59m28s
Builds / ExectOS (i686, debug) (push) Successful in -59m27s
Builds / ExectOS (i686, release) (push) Successful in -59m29s
2026-05-13 10:10:03 +02:00
c8868ead47 Add AllocateRealModeMemory routine for low memory allocations
All checks were successful
Builds / ExectOS (amd64, release) (push) Successful in -59m29s
Builds / ExectOS (amd64, debug) (push) Successful in -59m28s
Builds / ExectOS (i686, debug) (push) Successful in -59m28s
Builds / ExectOS (i686, release) (push) Successful in -59m30s
2026-05-13 10:08:30 +02:00
58981e0087 Add MapVirtualAddress to memory manager paging interface
All checks were successful
Builds / ExectOS (amd64, debug) (push) Successful in -59m27s
Builds / ExectOS (amd64, release) (push) Successful in -59m28s
Builds / ExectOS (i686, debug) (push) Successful in -59m28s
Builds / ExectOS (i686, release) (push) Successful in -59m30s
2026-05-13 09:58:13 +02:00
06635ed014 Parameterize maximum allocation address in hardware pool and scan memory descriptors in reverse
All checks were successful
Builds / ExectOS (amd64, release) (push) Successful in -59m30s
Builds / ExectOS (amd64, debug) (push) Successful in -59m28s
Builds / ExectOS (i686, debug) (push) Successful in -59m27s
Builds / ExectOS (i686, release) (push) Successful in -59m29s
2026-05-12 19:35:06 +02:00
5a92173586 Implement targeted IPI broadcasting using processor block array
All checks were successful
Builds / ExectOS (amd64, release) (push) Successful in -59m28s
Builds / ExectOS (amd64, debug) (push) Successful in -59m27s
Builds / ExectOS (i686, debug) (push) Successful in -59m29s
Builds / ExectOS (i686, release) (push) Successful in -59m30s
2026-05-11 00:07:21 +02:00
897d9d4099 Expose timer performance counter and clock rate functions
All checks were successful
Builds / ExectOS (amd64, release) (push) Successful in -59m30s
Builds / ExectOS (amd64, debug) (push) Successful in -59m28s
Builds / ExectOS (i686, release) (push) Successful in -59m30s
Builds / ExectOS (i686, debug) (push) Successful in -59m29s
2026-05-10 23:42:13 +02:00
6b14f31107 Enable HPET main counter and disable legacy replacement during hardware detection
All checks were successful
Builds / ExectOS (amd64, debug) (push) Successful in -59m23s
Builds / ExectOS (amd64, release) (push) Successful in -59m26s
Builds / ExectOS (i686, release) (push) Successful in -59m26s
Builds / ExectOS (i686, debug) (push) Successful in -59m24s
2026-05-09 13:13:30 +02:00
976eee9ce3 Add HPET and TSC stall execution backends
All checks were successful
Builds / ExectOS (amd64, debug) (push) Successful in -59m29s
Builds / ExectOS (amd64, release) (push) Successful in -59m30s
Builds / ExectOS (i686, debug) (push) Successful in -59m24s
Builds / ExectOS (i686, release) (push) Successful in -59m25s
2026-05-07 20:24:19 +02:00
689951cfde Update timer subsystem with multi-backend dispatch table
All checks were successful
Builds / ExectOS (amd64, release) (push) Successful in -59m27s
Builds / ExectOS (amd64, debug) (push) Successful in -59m23s
Builds / ExectOS (i686, debug) (push) Successful in -59m25s
Builds / ExectOS (i686, release) (push) Successful in -59m28s
2026-05-07 19:50:37 +02:00
4cb5b12e68 Declare context switching routines
All checks were successful
Builds / ExectOS (amd64, release) (push) Successful in -59m24s
Builds / ExectOS (amd64, debug) (push) Successful in -59m22s
Builds / ExectOS (i686, debug) (push) Successful in -59m23s
Builds / ExectOS (i686, release) (push) Successful in -59m25s
2026-05-06 22:28:36 +02:00
9761569e06 Implement SwitchContext() and SwitchThreadStack() routines
Some checks failed
Builds / ExectOS (amd64, debug) (push) Failing after -59m33s
Builds / ExectOS (amd64, release) (push) Failing after -59m36s
Builds / ExectOS (i686, release) (push) Failing after -59m36s
Builds / ExectOS (i686, debug) (push) Failing after -59m33s
2026-05-06 22:25:39 +02:00
100b58312f Drop unnecessary ULL qualifiers
All checks were successful
Builds / ExectOS (amd64, debug) (push) Successful in -59m28s
Builds / ExectOS (amd64, release) (push) Successful in -59m30s
Builds / ExectOS (i686, debug) (push) Successful in -59m27s
Builds / ExectOS (i686, release) (push) Successful in -59m29s
2026-05-06 20:09:54 +02:00
c5b0d15830 Zero-initialize register before bitfield assignment
All checks were successful
Builds / ExectOS (amd64, debug) (push) Successful in -59m26s
Builds / ExectOS (amd64, release) (push) Successful in -59m27s
Builds / ExectOS (i686, debug) (push) Successful in -59m27s
Builds / ExectOS (i686, release) (push) Successful in -59m29s
2026-05-06 19:58:17 +02:00
8107692d83 Enable allocated APIC interrupt and validate IO APIC mapping
All checks were successful
Builds / ExectOS (amd64, debug) (push) Successful in -59m26s
Builds / ExectOS (amd64, release) (push) Successful in -59m28s
Builds / ExectOS (i686, debug) (push) Successful in -59m23s
Builds / ExectOS (i686, release) (push) Successful in -59m25s
2026-05-06 19:50:54 +02:00
3262ad78c1 Move timer initialization
All checks were successful
Builds / ExectOS (amd64, debug) (push) Successful in -59m28s
Builds / ExectOS (amd64, release) (push) Successful in -59m29s
Builds / ExectOS (i686, release) (push) Successful in -59m26s
Builds / ExectOS (i686, debug) (push) Successful in -59m24s
2026-05-06 19:48:05 +02:00
85fb08b3d4 Change timer file descriptions
All checks were successful
Builds / ExectOS (amd64, release) (push) Successful in -59m27s
Builds / ExectOS (amd64, debug) (push) Successful in -59m25s
Builds / ExectOS (i686, debug) (push) Successful in -59m26s
Builds / ExectOS (i686, release) (push) Successful in -59m28s
2026-05-06 19:43:06 +02:00
0952dd80b2 Export KeSetTimeIncrement
All checks were successful
Builds / ExectOS (amd64, release) (push) Successful in -59m23s
Builds / ExectOS (amd64, debug) (push) Successful in -59m21s
Builds / ExectOS (i686, debug) (push) Successful in -59m24s
Builds / ExectOS (i686, release) (push) Successful in -59m26s
2026-05-06 19:38:36 +02:00
a3178e94bd Implement clock interrupt handling and time increment configuration
All checks were successful
Builds / ExectOS (amd64, release) (push) Successful in -59m27s
Builds / ExectOS (amd64, debug) (push) Successful in -59m25s
Builds / ExectOS (i686, release) (push) Successful in -59m28s
Builds / ExectOS (i686, debug) (push) Successful in -59m25s
2026-05-06 19:32:00 +02:00
f7554e0e24 Implement KE::Dispatcher::UpdateRunTime stub
All checks were successful
Builds / ExectOS (amd64, release) (push) Successful in -59m27s
Builds / ExectOS (amd64, debug) (push) Successful in -59m26s
Builds / ExectOS (i686, debug) (push) Successful in -59m24s
Builds / ExectOS (i686, release) (push) Successful in -59m26s
2026-05-05 23:22:55 +02:00
27440aefc4 Add TickCount to Kernel Shared Data
All checks were successful
Builds / ExectOS (amd64, debug) (push) Successful in -59m24s
Builds / ExectOS (amd64, release) (push) Successful in -59m27s
Builds / ExectOS (i686, release) (push) Successful in -59m28s
Builds / ExectOS (i686, debug) (push) Successful in -59m26s
2026-05-05 22:47:32 +02:00
ba85c88544 Export ACPI timer information
All checks were successful
Builds / ExectOS (amd64, release) (push) Successful in -59m27s
Builds / ExectOS (amd64, debug) (push) Successful in -59m23s
Builds / ExectOS (i686, debug) (push) Successful in -59m25s
Builds / ExectOS (i686, release) (push) Successful in -59m27s
2026-05-04 16:02:59 +02:00
b417f84492 Fix MADT subtable traversal
All checks were successful
Builds / ExectOS (amd64, debug) (push) Successful in -59m23s
Builds / ExectOS (amd64, release) (push) Successful in -59m25s
Builds / ExectOS (i686, debug) (push) Successful in -59m25s
Builds / ExectOS (i686, release) (push) Successful in -59m27s
2026-05-04 15:02:39 +02:00
48ef4bcdca Clear input key buffer before read and propagate EFI_STATUS from ReadKeyStroke
All checks were successful
Builds / ExectOS (amd64, debug) (push) Successful in -59m21s
Builds / ExectOS (amd64, release) (push) Successful in -59m24s
Builds / ExectOS (i686, release) (push) Successful in -59m28s
Builds / ExectOS (i686, debug) (push) Successful in -59m25s
2026-05-04 14:09:30 +02:00
7a28cf1c0a Change edit menu boot key binding
All checks were successful
Builds / ExectOS (amd64, debug) (push) Successful in -59m25s
Builds / ExectOS (amd64, release) (push) Successful in -59m27s
Builds / ExectOS (i686, release) (push) Successful in -59m17s
Builds / ExectOS (i686, debug) (push) Successful in -59m16s
2026-05-04 13:57:17 +02:00
1050ddea8a Implement framebuffer double buffering
All checks were successful
Builds / ExectOS (amd64, release) (push) Successful in -59m26s
Builds / ExectOS (amd64, debug) (push) Successful in -59m24s
Builds / ExectOS (i686, release) (push) Successful in -59m27s
Builds / ExectOS (i686, debug) (push) Successful in -59m25s
2026-05-04 11:51:52 +02:00
a7151dbc89 Fix boot stack initialization by returning the highest address
All checks were successful
Builds / ExectOS (amd64, debug) (push) Successful in -59m26s
Builds / ExectOS (amd64, release) (push) Successful in -59m28s
Builds / ExectOS (i686, release) (push) Successful in -59m26s
Builds / ExectOS (i686, debug) (push) Successful in -59m24s
2026-05-03 18:49:51 +02:00
d532303b7f Fix incorrect SystemTime reference in KE::SharedData::GetInterruptTime function
All checks were successful
Builds / ExectOS (amd64, release) (push) Successful in -59m28s
Builds / ExectOS (amd64, debug) (push) Successful in -59m26s
Builds / ExectOS (i686, debug) (push) Successful in -59m27s
Builds / ExectOS (i686, release) (push) Successful in -59m29s
2026-05-03 14:39:14 +02:00
7017985682 Register APIC error handler and stub broadcast IPI for uniprocessor
All checks were successful
Builds / ExectOS (amd64, release) (push) Successful in -59m26s
Builds / ExectOS (amd64, debug) (push) Successful in -59m24s
Builds / ExectOS (i686, debug) (push) Successful in -59m25s
Builds / ExectOS (i686, release) (push) Successful in -59m27s
2026-05-03 13:12:29 +02:00
7aba8aa4ec Fix ACPI FADT timer masks
All checks were successful
Builds / ExectOS (amd64, release) (push) Successful in -59m27s
Builds / ExectOS (amd64, debug) (push) Successful in -59m26s
Builds / ExectOS (i686, debug) (push) Successful in -59m25s
Builds / ExectOS (i686, release) (push) Successful in -59m27s
2026-05-03 02:04:29 +02:00
d1eed619a7 Extend KSD with InterruptTime
All checks were successful
Builds / ExectOS (amd64, release) (push) Successful in -59m26s
Builds / ExectOS (amd64, debug) (push) Successful in -59m24s
Builds / ExectOS (i686, release) (push) Successful in -59m28s
Builds / ExectOS (i686, debug) (push) Successful in -59m26s
2026-04-30 13:00:59 +02:00
6cbda52d6b Extract Dispatcher class from KThread
All checks were successful
Builds / ExectOS (amd64, release) (push) Successful in -59m29s
Builds / ExectOS (amd64, debug) (push) Successful in -59m27s
Builds / ExectOS (i686, release) (push) Successful in -59m28s
Builds / ExectOS (i686, debug) (push) Successful in -59m25s
2026-04-29 20:31:34 +02:00
f03515b0eb Refactor KE::KernelInit::SwitchBootStack() inline assembly
All checks were successful
Builds / ExectOS (amd64, release) (push) Successful in -59m26s
Builds / ExectOS (amd64, debug) (push) Successful in -59m25s
Builds / ExectOS (i686, debug) (push) Successful in -59m26s
Builds / ExectOS (i686, release) (push) Successful in -59m28s
2026-04-29 20:23:01 +02:00
03a9907bee Update parameter name
All checks were successful
Builds / ExectOS (amd64, debug) (push) Successful in -59m23s
Builds / ExectOS (amd64, release) (push) Successful in -59m25s
Builds / ExectOS (i686, release) (push) Successful in -59m28s
Builds / ExectOS (i686, debug) (push) Successful in -59m26s
2026-04-29 13:19:54 +02:00
49fde5adbd Add hardware timer definitions for PIT and ACPI PM
All checks were successful
Builds / ExectOS (amd64, debug) (push) Successful in -59m28s
Builds / ExectOS (amd64, release) (push) Successful in -59m29s
Builds / ExectOS (i686, debug) (push) Successful in -59m24s
Builds / ExectOS (i686, release) (push) Successful in -59m26s
2026-04-28 12:28:33 +02:00
165e82f78b Fix HPET definitions
All checks were successful
Builds / ExectOS (amd64, debug) (push) Successful in -59m25s
Builds / ExectOS (amd64, release) (push) Successful in -59m27s
Builds / ExectOS (i686, debug) (push) Successful in -59m26s
Builds / ExectOS (i686, release) (push) Successful in -59m28s
2026-04-28 11:01:42 +02:00