Commit Graph
340 Commits
Author SHA1 Message Date
harraiken 9603453334 Implement Application Processor bootstrap function
Builds / ExectOS (i686, debug) (push) Successful in 39s
Builds / ExectOS (i686, release) (push) Successful in 38s
Builds / ExectOS (amd64, release) (push) Successful in 59s
Builds / ExectOS (amd64, debug) (push) Successful in 1m1s
2026-05-17 14:29:45 +02:00
harraiken 29368a0dd8 Implement string to number conversion functions
Builds / ExectOS (i686, release) (push) Successful in 29s
Builds / ExectOS (amd64, release) (push) Successful in 27s
Builds / ExectOS (i686, debug) (push) Successful in 41s
Builds / ExectOS (amd64, debug) (push) Successful in 43s
2026-05-15 15:02:22 +02:00
harraiken ca4f3acc0e Properly identify CPU vendor
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
harraiken 5b7761fe7d Expose InitializeProcessorStructures as a public method
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
harraiken 1cff58c106 Refactor processor block initialization and add registration function
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
harraiken 9185ceade6 Decouple processor block initialization from AllocateProcessorStructures
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
harraiken fd7e18989d Protect debug print output with spinlock
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
harraiken 757eac08c6 Refactor APIC IPI dispatching
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
harraiken c8868ead47 Add AllocateRealModeMemory routine for low memory allocations
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
harraiken 58981e0087 Add MapVirtualAddress to memory manager paging interface
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
harraiken 06635ed014 Parameterize maximum allocation address in hardware pool and scan memory descriptors in reverse
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
harraiken 5a92173586 Implement targeted IPI broadcasting using processor block array
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
harraiken 976eee9ce3 Add HPET and TSC stall execution backends
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
harraiken 689951cfde Update timer subsystem with multi-backend dispatch table
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
belliash 4cb5b12e68 Declare context switching routines
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
harraiken a3178e94bd Implement clock interrupt handling and time increment configuration
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
harraiken f7554e0e24 Implement KE::Dispatcher::UpdateRunTime stub
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
harraiken 27440aefc4 Add TickCount to Kernel Shared Data
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
harraiken ba85c88544 Export ACPI timer information
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
harraiken 1050ddea8a Implement framebuffer double buffering
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
harraiken 7017985682 Register APIC error handler and stub broadcast IPI for uniprocessor
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
harraiken d1eed619a7 Extend KSD with InterruptTime
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
belliash 6cbda52d6b Extract Dispatcher class from KThread
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
harraiken 98733aa62b Implement system time management functions
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-04-27 23:02:15 +02:00
harraiken 58deafb1d8 Add support for sending broadcast IPIs
Builds / ExectOS (amd64, debug) (push) Successful in -59m26s
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-27 22:11:30 +02:00
harraiken 88d1f6f2ae Implement system interrupt prologue and epilogue functions
Builds / ExectOS (amd64, debug) (push) Successful in -59m28s
Builds / ExectOS (amd64, release) (push) Successful in -59m29s
Builds / ExectOS (i686, debug) (push) Successful in -59m25s
Builds / ExectOS (i686, release) (push) Successful in -59m27s
2026-04-27 20:22:28 +02:00
harraiken 6a983fe33c Add helper to translate run level to software interrupt vector
Builds / ExectOS (amd64, release) (push) Successful in -59m27s
Builds / ExectOS (amd64, debug) (push) Successful in -59m26s
Builds / ExectOS (i686, release) (push) Successful in -59m28s
Builds / ExectOS (i686, debug) (push) Successful in -59m26s
2026-04-27 20:17:57 +02:00
harraiken 6a46dad9c5 Fix incorrect filename reference
Builds / ExectOS (amd64, debug) (push) Successful in -59m24s
Builds / ExectOS (amd64, release) (push) Successful in -59m26s
Builds / ExectOS (i686, debug) (push) Successful in -59m26s
Builds / ExectOS (i686, release) (push) Successful in -59m29s
2026-04-26 23:12:41 +02:00
harraiken 534aaba27e Declare compiler intrinsics with proper symbol names
Builds / ExectOS (amd64, debug) (push) Successful in -59m26s
Builds / ExectOS (amd64, release) (push) Successful in -59m27s
Builds / ExectOS (i686, release) (push) Successful in -59m28s
Builds / ExectOS (i686, debug) (push) Successful in -59m25s
2026-04-26 23:10:42 +02:00
harraiken 4d12f7ac01 Implement inverse time conversion functions for Unix and XT epochs
Builds / ExectOS (amd64, debug) (push) Successful in -59m21s
Builds / ExectOS (amd64, release) (push) Successful in -59m23s
Builds / ExectOS (i686, debug) (push) Failing after -59m32s
Builds / ExectOS (i686, release) (push) Failing after -59m34s
2026-04-25 23:32:07 +02:00
harraiken 439ea891ca Replace lookup-based time logic with direct epoch calculation formulas
Builds / ExectOS (amd64, debug) (push) Successful in -59m29s
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-04-24 23:27:25 +02:00
harraiken 3b76146d53 Implement time conversion routines for Unix and XT epoch formats
Builds / ExectOS (amd64, debug) (push) Failing after -59m32s
Builds / ExectOS (amd64, release) (push) Failing after -59m35s
Builds / ExectOS (i686, debug) (push) Failing after -59m32s
Builds / ExectOS (i686, release) (push) Failing after -59m34s
2026-04-24 17:48:44 +02:00
harraiken 341759a325 Implement Kernel Shared Data management and initialization
Builds / ExectOS (amd64, release) (push) Successful in -59m30s
Builds / ExectOS (amd64, debug) (push) Successful in -59m27s
Builds / ExectOS (i686, debug) (push) Successful in -59m26s
Builds / ExectOS (i686, release) (push) Successful in -59m28s
2026-04-24 13:58:33 +02:00
harraiken 5dc782ca24 Allocate and map the Kernel Shared Data page at startup
Builds / ExectOS (amd64, debug) (push) Failing after -59m31s
Builds / ExectOS (amd64, release) (push) Failing after -59m34s
Builds / ExectOS (i686, debug) (push) Failing after -59m33s
Builds / ExectOS (i686, release) (push) Failing after -59m35s
2026-04-24 12:12:23 +02:00
harraiken 2dd1fdf869 Implement RTC support
Builds / ExectOS (amd64, release) (push) Failing after -59m35s
Builds / ExectOS (amd64, debug) (push) Failing after -59m33s
Builds / ExectOS (i686, debug) (push) Failing after -59m33s
Builds / ExectOS (i686, release) (push) Failing after -59m35s
2026-04-24 09:52:07 +02:00
harraiken 58010c27f4 Implement CMOS register access functions
Builds / ExectOS (amd64, debug) (push) Successful in -59m3s
Builds / ExectOS (amd64, release) (push) Successful in -59m5s
Builds / ExectOS (i686, debug) (push) Successful in -59m26s
Builds / ExectOS (i686, release) (push) Successful in -59m28s
2026-04-23 19:13:56 +02:00
harraiken 98f2f449f9 Add wrapper for RDTSCP instruction
Builds / ExectOS (amd64, release) (push) Successful in 35s
Builds / ExectOS (amd64, debug) (push) Successful in 37s
Builds / ExectOS (i686, release) (push) Successful in 34s
Builds / ExectOS (i686, debug) (push) Successful in 36s
2026-04-22 22:58:17 +02:00
harraiken cd4e905054 Add support for I/O APIC controllers and interrupt override handling
Builds / ExectOS (amd64, release) (push) Successful in 33s
Builds / ExectOS (amd64, debug) (push) Successful in 35s
Builds / ExectOS (i686, debug) (push) Successful in 31s
Builds / ExectOS (i686, release) (push) Successful in 29s
2026-04-18 00:04:12 +02:00
harraiken d37f2e3827 Implement GetKernelParameterValue to parse and extract boot option values
Builds / ExectOS (amd64, debug) (push) Successful in 1h0m42s
Builds / ExectOS (amd64, release) (push) Successful in 1h0m40s
Builds / ExectOS (i686, release) (push) Successful in 1h0m32s
Builds / ExectOS (i686, debug) (push) Successful in 1h0m34s
2026-04-13 19:18:04 +02:00
harraiken cec5e8b16b Implement detection of timer capabilities
Builds / ExectOS (amd64, release) (push) Failing after 33s
Builds / ExectOS (i686, release) (push) Failing after 30s
Builds / ExectOS (i686, debug) (push) Failing after 41s
Builds / ExectOS (amd64, debug) (push) Failing after 44s
2026-04-12 23:58:48 +02:00
harraiken a08e07e515 Refactor ACPI table caching to use a static array
Builds / ExectOS (amd64, release) (push) Failing after 29s
Builds / ExectOS (i686, release) (push) Failing after 29s
Builds / ExectOS (amd64, debug) (push) Failing after 42s
Builds / ExectOS (i686, debug) (push) Failing after 38s
2026-04-12 18:16:33 +02:00
harraiken 7d8bfa8f0a Implement support for APIC Self-InterProcessor Interrupts (SIPI)
Builds / ExectOS (i686, debug) (push) Failing after 42s
Builds / ExectOS (amd64, debug) (push) Failing after 44s
Builds / ExectOS (amd64, release) (push) Failing after 47s
Builds / ExectOS (i686, release) (push) Failing after 45s
2026-04-09 20:25:55 +02:00
harraiken 1fa6e90439 Hook up profile interrupt handler
Builds / ExectOS (amd64, release) (push) Failing after 28s
Builds / ExectOS (i686, release) (push) Failing after 42s
Builds / ExectOS (i686, debug) (push) Failing after 28s
Builds / ExectOS (amd64, debug) (push) Failing after 46s
2026-04-08 23:16:03 +02:00
harraiken 53c5946c04 Clean up APIC timer initialization
Builds / ExectOS (amd64, release) (push) Failing after 30s
Builds / ExectOS (i686, debug) (push) Failing after 29s
Builds / ExectOS (amd64, debug) (push) Failing after 33s
Builds / ExectOS (i686, release) (push) Failing after 37s
2026-04-08 20:23:37 +02:00
harraiken 9ffb03217a Implement software interrupt dispatch table and secondary handler lookup
Builds / ExectOS (amd64, debug) (push) Successful in 30s
Builds / ExectOS (i686, release) (push) Failing after 30s
Builds / ExectOS (i686, debug) (push) Failing after 39s
Builds / ExectOS (amd64, release) (push) Successful in 42s
2026-04-08 20:13:35 +02:00
harraiken adb591f8c7 Implement APIC timer initialization and calibration
Builds / ExectOS (i686, debug) (push) Failing after 24s
Builds / ExectOS (amd64, debug) (push) Failing after 29s
Builds / ExectOS (amd64, release) (push) Failing after 25s
Builds / ExectOS (i686, release) (push) Failing after 28s
2026-04-08 00:15:03 +02:00
harraiken a0d5ee17c2 Replace trap dispatch wrappers with direct symbol mapping
Builds / ExectOS (amd64, debug) (push) Successful in 30s
Builds / ExectOS (i686, debug) (push) Successful in 30s
Builds / ExectOS (i686, release) (push) Successful in 49s
Builds / ExectOS (amd64, release) (push) Successful in 51s
2026-04-07 12:56:33 +02:00
harraiken 9eff9874c5 Synchronize headers with merged assembly code
Builds / ExectOS (amd64, release) (push) Successful in 29s
Builds / ExectOS (amd64, debug) (push) Successful in 36s
Builds / ExectOS (i686, debug) (push) Successful in 28s
Builds / ExectOS (i686, release) (push) Successful in 38s
2026-04-02 15:16:21 +02:00
harraiken 2a24ce9a35 Refactor spurious interrupt handling to use assembly routine
Builds / ExectOS (i686, debug) (push) Successful in 31s
Builds / ExectOS (amd64, debug) (push) Successful in 32s
Builds / ExectOS (amd64, release) (push) Successful in 40s
Builds / ExectOS (i686, release) (push) Successful in 37s
2026-04-02 13:14:49 +02:00
harraiken 9ea79c92a6 Refactor assembly includes and delete manual offset definitions
Builds / ExectOS (i686, debug) (push) Successful in 35s
Builds / ExectOS (amd64, release) (push) Successful in 39s
Builds / ExectOS (i686, release) (push) Failing after 33s
Builds / ExectOS (amd64, debug) (push) Successful in 39s
2026-04-02 10:50:00 +02:00