Commit Graph
181 Commits
Author SHA1 Message Date
Daniel Samson debe815a5c keep the AP trampoline inert between wakes, and retry failed cores
Arm the low frame (copy blob, make executable) only while a core climbs, then zero it and restore RW+NX; the frame stays reserved so cores can be re-woken. startSecondary is one re-runnable attempt; boot retries a non-responding core 3x. Validated the retry path by forcing a first-attempt failure.
2026-07-08 13:32:34 +01:00
Daniel Samson 43afe6bf2e schedule tasks across all cores
Per-core GDT/TSS and AP scheduler entry; fix AP SSE + single_threaded.
2026-07-08 12:35:30 +01:00
Daniel Samson ed7f542006 wake application processors to long mode
INIT-SIPI-SIPI plus a self-relocating real-mode trampoline.
2026-07-08 12:35:30 +01:00
Daniel Samson cf7c6df41c enumerate usable CPU cores from the MADT
Keep each Local APIC's id and expose platform.cpus().
2026-07-08 12:35:30 +01:00
Daniel Samson 26d2f5259c document the multi-sink logging model 2026-07-08 10:41:47 +01:00
Daniel Samson 7d3417fe86 refactor kernel to use device platform discovery 2026-07-08 10:06:46 +01:00
Daniel Samson 2ee898a91e add device platform module with ACPI support 2026-07-08 09:23:41 +01:00
daniel 6f6ccc8bc9 moving kernel code to kernel/ 2026-07-05 10:19:11 +01:00
daniel 7c3cffb337 moving efi code to boot 2026-07-05 10:01:01 +01:00
daniel d055de7141 documenting things to research 2026-07-03 21:40:59 +01:00
daniel a6de418e42 documenting smp and scheduling to research 2026-07-03 21:24:44 +01:00
daniel f9f0511ac2 documenting research for arm and device discovery 2026-07-03 20:22:48 +01:00
daniel 99d6bf5ce3 renaming run-efi to run-x86-64 2026-07-03 19:45:44 +01:00
daniel 21b9691486 reclaiming uefi memory 2026-07-03 19:31:32 +01:00
daniel 31bf86af56 IPC 2026-07-03 15:09:16 +01:00
daniel df774691c8 Fixed-priority preemptive scheduler 2026-07-03 14:30:33 +01:00
daniel e80043b611 Calibrated timer / clock 2026-07-03 14:17:00 +01:00
daniel 269729f2f2 Built heap allocation 2026-07-03 13:41:55 +01:00
daniel 20b4661ff3 Hardened paging into a real VMM 2026-07-03 13:29:34 +01:00
daniel d910e6261a Documenting sysv 2026-07-03 13:06:43 +01:00
daniel 56219b4050 Documenting sysv 2026-07-03 13:06:27 +01:00
daniel 5ea521d054 Built device interrupts 2026-07-03 12:57:40 +01:00
daniel c8e89e8115 Cross-architecture test suite 2026-07-03 12:39:26 +01:00
daniel 9cf135302d Built paging / the kernel's own page tables (with a TSS+IST) 2026-07-03 12:23:55 +01:00
daniel 0cc71ec8aa Built GDT + IDT + exception handlers 2026-07-03 12:05:41 +01:00
daniel 6312e84262 added physical memory manager 2026-07-03 11:43:14 +01:00
daniel cb2f49cb48 added physical memory manager 2026-07-03 11:24:26 +01:00
daniel 628c4f6d57 Move to multi arch support and added memory map 2026-07-03 11:11:19 +01:00
daniel c2435760c4 Add README file in docs 2026-07-03 10:31:08 +01:00
daniel 6a08081bfe selecting the displays native resolution 2026-07-03 10:07:51 +01:00
daniel 21cc0c87e4 setup framebuffer with console 2026-07-03 09:32:15 +01:00