Commit Graph
382 Commits
Author SHA1 Message Date
harraiken 6560ca9b96 Refactor thread initialization to attach to process
Builds / ExectOS (i686, debug) (push) Successful in 31s
Builds / ExectOS (amd64, debug) (push) Successful in 27s
Builds / ExectOS (amd64, release) (push) Successful in 34s
Builds / ExectOS (i686, release) (push) Successful in 35s
2026-06-17 12:15:32 +02:00
harraiken 89681897d7 Wire thread startup frame to return to user-mode switch or system thread exit handler
Builds / ExectOS (amd64, debug) (push) Successful in 25s
Builds / ExectOS (i686, debug) (push) Failing after 28s
Builds / ExectOS (amd64, release) (push) Successful in 39s
Builds / ExectOS (i686, release) (push) Failing after 36s
2026-06-14 01:34:24 +02:00
harraiken df35bf8601 Add thread startup stub
Builds / ExectOS (amd64, debug) (push) Successful in 27s
Builds / ExectOS (amd64, release) (push) Successful in 39s
Builds / ExectOS (i686, release) (push) Successful in 38s
Builds / ExectOS (i686, debug) (push) Successful in 30s
2026-06-14 00:50:23 +02:00
harraiken 97703c7932 Add stub for System Service Descriptor Table accessor routine
Builds / ExectOS (amd64, debug) (push) Successful in 29s
Builds / ExectOS (i686, debug) (push) Successful in 28s
Builds / ExectOS (amd64, release) (push) Successful in 38s
Builds / ExectOS (i686, release) (push) Successful in 37s
2026-06-12 23:16:20 +02:00
harraiken c702152cca Refactor real-mode memory allocation and identity mapping for AP trampoline
Builds / ExectOS (amd64, release) (push) Successful in 36s
Builds / ExectOS (amd64, debug) (push) Successful in 34s
Builds / ExectOS (i686, debug) (push) Successful in 33s
Builds / ExectOS (i686, release) (push) Successful in 37s
2026-06-12 13:16:48 +02:00
harraiken cf0d7f0a40 Update trampoline size output parameter to PULONG across bootloader and kernel
Builds / ExectOS (amd64, release) (push) Failing after 22s
Builds / ExectOS (amd64, debug) (push) Failing after 36s
Builds / ExectOS (i686, release) (push) Successful in 27s
Builds / ExectOS (i686, debug) (push) Successful in 36s
2026-06-12 12:54:53 +02:00
harraiken c57aa98923 Free affinity maps on allocation failure and remove redundant idle process affinity loop
Builds / ExectOS (i686, debug) (push) Successful in 30s
Builds / ExectOS (amd64, release) (push) Successful in 41s
Builds / ExectOS (amd64, debug) (push) Successful in 42s
Builds / ExectOS (i686, release) (push) Successful in 34s
2026-06-10 14:08:07 +02:00
harraiken 429e4ef6f1 Add bounds checking to affinity map bit operations and introduce InitializeAffinityMap
Builds / ExectOS (amd64, release) (push) Successful in 34s
Builds / ExectOS (amd64, debug) (push) Successful in 40s
Builds / ExectOS (i686, debug) (push) Successful in 39s
Builds / ExectOS (i686, release) (push) Successful in 33s
2026-06-10 12:51:05 +02:00
harraiken 830f84ab26 Pass initial affinity map to InitializeProcess
Builds / ExectOS (amd64, debug) (push) Successful in 38s
Builds / ExectOS (amd64, release) (push) Successful in 34s
Builds / ExectOS (i686, debug) (push) Successful in 33s
Builds / ExectOS (i686, release) (push) Successful in 36s
2026-06-10 11:27:25 +02:00
harraiken 5a9df7ca86 Add helper to set full system processor affinity mask
Builds / ExectOS (i686, release) (push) Successful in 37s
Builds / ExectOS (amd64, release) (push) Successful in 41s
Builds / ExectOS (i686, debug) (push) Successful in 8m22s
Builds / ExectOS (amd64, debug) (push) Successful in 8m24s
2026-06-10 11:13:28 +02:00
harraiken 7a27912dac Dynamically allocate active processors affinity map
Builds / ExectOS (i686, release) (push) Failing after 27s
Builds / ExectOS (amd64, release) (push) Failing after 31s
Builds / ExectOS (i686, debug) (push) Failing after 56s
Builds / ExectOS (amd64, debug) (push) Failing after 59s
2026-06-10 10:22:15 +02:00
harraiken a9202f5b57 Refactor CalculateAffinityMapSize and add CreateAffinityMap
Builds / ExectOS (amd64, debug) (push) Successful in 28s
Builds / ExectOS (amd64, release) (push) Successful in 41s
Builds / ExectOS (i686, release) (push) Successful in 39s
Builds / ExectOS (i686, debug) (push) Successful in 32s
2026-06-09 22:53:37 +02:00
harraiken 4cbefe3a22 Implement affinity map bit manipulation and memory sizing helpers
Builds / ExectOS (amd64, release) (push) Successful in 33s
Builds / ExectOS (i686, debug) (push) Successful in 41s
Builds / ExectOS (amd64, debug) (push) Successful in 42s
Builds / ExectOS (i686, release) (push) Successful in 30s
2026-06-09 20:17:47 +02:00
harraiken 3841ceaf5b Refactor processor affinity logic
Builds / ExectOS (amd64, debug) (push) Successful in 32s
Builds / ExectOS (i686, debug) (push) Successful in 31s
Builds / ExectOS (i686, release) (push) Successful in 40s
Builds / ExectOS (amd64, release) (push) Successful in 43s
2026-06-09 19:33:20 +02:00
harraiken 6078a5ba29 Implement idle thread loop
Builds / ExectOS (i686, release) (push) Successful in 32s
Builds / ExectOS (amd64, release) (push) Failing after 13m27s
Builds / ExectOS (amd64, debug) (push) Failing after 38m41s
Builds / ExectOS (i686, debug) (push) Failing after 42m56s
2026-06-09 08:36:39 +02:00
harraiken 663f5cd048 Drop obsolete IPI exception dispatch path
Builds / ExectOS (amd64, debug) (push) Successful in 34s
Builds / ExectOS (i686, debug) (push) Successful in 32s
Builds / ExectOS (i686, release) (push) Successful in 47s
Builds / ExectOS (amd64, release) (push) Successful in 49s
2026-06-08 20:55:17 +02:00
harraiken 5b0eebdb43 Initialize system interrupt handlers
Builds / ExectOS (amd64, debug) (push) Successful in 29s
Builds / ExectOS (i686, release) (push) Successful in 30s
Builds / ExectOS (amd64, release) (push) Successful in 50s
Builds / ExectOS (i686, debug) (push) Successful in 49s
2026-06-08 20:15:18 +02:00
harraiken d175a817a5 Add IPI service routines for APC, DPC, and freeze request handling
Builds / ExectOS (i686, debug) (push) Successful in 31s
Builds / ExectOS (amd64, debug) (push) Successful in 32s
Builds / ExectOS (i686, release) (push) Successful in 43s
Builds / ExectOS (amd64, release) (push) Successful in 46s
2026-06-08 14:49:02 +02:00
harraiken b285bc7312 Implement multi-processor freeze and thaw execution for SMP crash state synchronization
Builds / ExectOS (amd64, debug) (push) Failing after 22s
Builds / ExectOS (i686, release) (push) Failing after 24s
Builds / ExectOS (amd64, release) (push) Failing after 40s
Builds / ExectOS (i686, debug) (push) Failing after 38s
2026-06-08 14:38:17 +02:00
harraiken 47d4069d6f Add functions to save and restore processor context and control state
Builds / ExectOS (amd64, release) (push) Successful in 31s
Builds / ExectOS (amd64, debug) (push) Successful in 33s
Builds / ExectOS (i686, debug) (push) Successful in 48s
Builds / ExectOS (i686, release) (push) Successful in 46s
2026-06-07 20:33:02 +02:00
harraiken 9c2357dfe6 Expose installed CPU count and rename state save function
Builds / ExectOS (amd64, debug) (push) Failing after 24s
Builds / ExectOS (i686, debug) (push) Failing after 24s
Builds / ExectOS (amd64, release) (push) Failing after 39s
Builds / ExectOS (i686, release) (push) Failing after 36s
2026-06-07 13:05:31 +02:00
harraiken f82562f450 Rename SwitchCpu to SwitchProcessor
Builds / ExectOS (amd64, release) (push) Successful in 35s
Builds / ExectOS (amd64, debug) (push) Successful in 50s
Builds / ExectOS (i686, release) (push) Successful in 34s
Builds / ExectOS (i686, debug) (push) Successful in 48s
2026-06-07 12:33:56 +02:00
harraiken 4256a312ae Implement kernel debugger entry point
Builds / ExectOS (amd64, debug) (push) Failing after 29s
Builds / ExectOS (i686, debug) (push) Failing after 27s
Builds / ExectOS (amd64, release) (push) Failing after 44s
Builds / ExectOS (i686, release) (push) Failing after 41s
2026-06-07 02:04:27 +02:00
harraiken 7344c5ed4a Add function to query kernel debugger active state
Builds / ExectOS (amd64, release) (push) Failing after 23s
Builds / ExectOS (amd64, debug) (push) Failing after 41s
Builds / ExectOS (i686, release) (push) Failing after 25s
Builds / ExectOS (i686, debug) (push) Failing after 39s
2026-06-06 18:57:32 +02:00
harraiken 537fbc8af4 Track kernel panic state
Builds / ExectOS (i686, release) (push) Failing after 31s
Builds / ExectOS (amd64, debug) (push) Failing after 41s
Builds / ExectOS (i686, debug) (push) Failing after 33s
Builds / ExectOS (amd64, release) (push) Failing after 39s
2026-06-06 18:52:05 +02:00
harraiken cf25af23d1 Add conditional acquisition parameter to RAII guard classes
Builds / ExectOS (i686, debug) (push) Successful in 31s
Builds / ExectOS (amd64, debug) (push) Successful in 34s
Builds / ExectOS (amd64, release) (push) Successful in 58s
Builds / ExectOS (i686, release) (push) Successful in 55s
2026-06-06 17:26:39 +02:00
harraiken 53a239958f Propagate allocation failures from idle process and thread setup
Builds / ExectOS (amd64, release) (push) Successful in 33s
Builds / ExectOS (i686, debug) (push) Successful in 31s
Builds / ExectOS (i686, release) (push) Successful in 44s
Builds / ExectOS (amd64, debug) (push) Successful in 48s
2026-06-04 14:30:01 +02:00
harraiken 02d0f3f538 Introduce PS subsystem with IDLE process and thread creation
Builds / ExectOS (amd64, release) (push) Successful in 33s
Builds / ExectOS (i686, release) (push) Successful in 29s
Builds / ExectOS (amd64, debug) (push) Successful in 50s
Builds / ExectOS (i686, debug) (push) Successful in 48s
2026-06-04 13:09:09 +02:00
harraiken e2a78389f2 Fix incorrect namespace comment
Builds / ExectOS (amd64, release) (push) Successful in 46s
Builds / ExectOS (amd64, debug) (push) Successful in 44s
Builds / ExectOS (i686, debug) (push) Successful in 41s
Builds / ExectOS (i686, release) (push) Successful in 42s
2026-06-04 12:58:59 +02:00
harraiken 1d2d66fc83 Dedicated Idle process and thread initialization with dynamic affinity allocation 2026-06-04 11:57:49 +02:00
harraiken 34aba8c7c7 Remove software interrupt 0x2F trap handler
Builds / ExectOS (amd64, debug) (push) Successful in 45s
Builds / ExectOS (amd64, release) (push) Successful in 43s
Builds / ExectOS (i686, release) (push) Successful in 41s
Builds / ExectOS (i686, debug) (push) Successful in 43s
2026-06-03 15:57:12 +02:00
harraiken 2fcbc7bee8 Implement processor affinity search functions
Builds / ExectOS (amd64, debug) (push) Failing after 33s
Builds / ExectOS (amd64, release) (push) Failing after 32s
Builds / ExectOS (i686, release) (push) Failing after 32s
Builds / ExectOS (i686, debug) (push) Failing after 34s
2026-06-01 01:10:40 +02:00
harraiken 0aabc206a1 Add BSF and BSR instruction wrappers
Builds / ExectOS (amd64, debug) (push) Successful in 55s
Builds / ExectOS (amd64, release) (push) Successful in 52s
Builds / ExectOS (i686, debug) (push) Successful in 42s
Builds / ExectOS (i686, release) (push) Successful in 40s
2026-06-01 00:36:52 +02:00
harraiken 5a5604c35d Register dispatch interrupt handler
Builds / ExectOS (i686, debug) (push) Successful in 31s
Builds / ExectOS (amd64, debug) (push) Successful in 32s
Builds / ExectOS (i686, release) (push) Successful in 52s
Builds / ExectOS (amd64, release) (push) Successful in 54s
2026-05-28 23:50:02 +02:00
harraiken f562aa0874 Implement timer table list and check for expired timers
Builds / ExectOS (amd64, release) (push) Successful in 38s
Builds / ExectOS (i686, release) (push) Successful in 36s
Builds / ExectOS (amd64, debug) (push) Successful in 47s
Builds / ExectOS (i686, debug) (push) Successful in 46s
2026-05-28 00:36:25 +02:00
harraiken a93ebbfb5b Populate pool tracking table with common allocation tags
Builds / ExectOS (i686, debug) (push) Successful in 36s
Builds / ExectOS (amd64, debug) (push) Successful in 38s
Builds / ExectOS (i686, release) (push) Successful in 1m4s
Builds / ExectOS (amd64, release) (push) Successful in 1m7s
2026-05-23 17:40:40 +02:00
harraiken 71870cd178 Remove per-CPU pool tracking tables
Builds / ExectOS (i686, release) (push) Successful in 30s
Builds / ExectOS (amd64, release) (push) Successful in 33s
Builds / ExectOS (amd64, debug) (push) Successful in 48s
Builds / ExectOS (i686, debug) (push) Successful in 46s
2026-05-22 23:45:32 +02:00
harraiken 9002ac8b5c Implement red-black tree algorithm
Builds / ExectOS (amd64, debug) (push) Successful in 40s
Builds / ExectOS (amd64, release) (push) Successful in 49s
Builds / ExectOS (i686, debug) (push) Successful in 38s
Builds / ExectOS (i686, release) (push) Successful in 46s
2026-05-21 14:56:44 +02:00
harraiken 6e4f0ba6e4 Implement per-processor local clock initialization
Builds / ExectOS (amd64, debug) (push) Successful in 37s
Builds / ExectOS (i686, debug) (push) Successful in 33s
Builds / ExectOS (i686, release) (push) Successful in 39s
Builds / ExectOS (amd64, release) (push) Successful in 43s
2026-05-19 09:45:17 +02:00
harraiken 19092eda2e Rename architecture CPU functions class
Builds / ExectOS (amd64, release) (push) Successful in 37s
Builds / ExectOS (i686, debug) (push) Successful in 33s
Builds / ExectOS (i686, release) (push) Successful in 1m2s
Builds / ExectOS (amd64, debug) (push) Successful in 1m6s
2026-05-19 06:45:48 +02:00
harraiken b03cca65d8 Rename ProcSup class to ProcessorSupport and update all callers
Builds / ExectOS (i686, release) (push) Successful in 2m17s
Builds / ExectOS (amd64, debug) (push) Successful in 2m24s
Builds / ExectOS (i686, debug) (push) Failing after 14m3s
Builds / ExectOS (amd64, release) (push) Failing after 14m7s
2026-05-18 22:55:54 +02:00
harraiken 4e7113a079 Implement HL::Cpu::StartAllProcessors to bootstrap all application processors
Builds / ExectOS (i686, release) (push) Successful in 31s
Builds / ExectOS (amd64, release) (push) Successful in 33s
Builds / ExectOS (i686, debug) (push) Successful in 39s
Builds / ExectOS (amd64, debug) (push) Successful in 41s
2026-05-17 17:33:35 +02:00
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