ABI Changelog
This page tracks ABI evolution for strat9-abi.
Versioning policy
- Major (
ABI_VERSION_MAJOR) changes only for incompatible wire/layout changes. - Minor (
ABI_VERSION_MINOR) changes for backward-compatible additions. - No silent renumbering of existing syscall IDs.
repr(C)and explicit size checks are mandatory for exported ABI structs.
Current version
ABI_VERSION_MAJOR = 0ABI_VERSION_MINOR = 1- Packed:
0.1
See:
Recent ABI updates (auto-generated)
- 2026-09-27
f64aff3cImplement console rendering and mouse input handling tasks - 2026-09-13
3898c507feat(bootloader, kernel, abi): homemade strat9 UEFI bootloader : rewrite with scheduler and memory hardening - 2026-08-28
c03feb24fix(abi): ENOTSUP 52→95, XFS EiB constant fix, decode_fixed roundtrip tests - 2026-08-27
3ca6d7c6feat: Add U-Boot setup script and boot protocol implementation - 2026-08-25
88c52834refactor(arch): unify x86_64 crate access via x86_crate_shim, complete riscv stubs - 2026-08-25
c8ca94c4refactor(arch): route shared code through arch::xshim, gate limine/x86 deps - 2026-08-25
f3366e1drefactor(arch): migrate process/ and syscall/ call-sites to arch facade - 2026-08-25
4399b5f5test: pass 2 over full codebase — syscall, ABI data/handshake, NIC drivers, allocator - 2026-08-25
88feb023test(abi): exhaustive L0/L1 anti-regression suite - 2026-08-27
09216d7cMerge branch 'fix/elf-loader-hardening' into 'main' - 2026-08-27
2bad5b9bfeat(elf): loader hardening (#62 #63 #64 #67 #68, groundwork #66) - 2026-08-25
6ca7fef9fix(ipc): security hardening, perf fixes and typed wire-format layer - 2026-07-18
abb7dd7efeat(buddy): harden, optimize, and add kernel.toml configuration - 2026-07-17
fe68f9aafix(vfs,console,scheduler): VFS improvements, console perf, panic backtrace - 2026-07-14
3a5eb69dfeat(silo): replace Vec with heapless::Vec for bounded fields - 2026-07-09
ab22b0d9feat: 3-level IPC transport, N3 MMU thread migration, graphical silo, NIC/E1000 fixes - 2026-06-25
5a3d69c4feat: migrate input system to userspace - 2026-06-24
3fea3f37SMP hardware debug, NVMe fixes, VGA refactor, telnetd hardening, docs - 2026-06-16
e4ab1a96Enhance network stack, NIC drivers, USB/NVMe subsystems, and thermal management - 2026-06-03
0c400585Refactor the network stack and add dual-stack userspace tooling - 2026-05-24
aeade5efCode cleanup - 2026-05-24
b2bbcc0bImprove and fix IPC - 2026-05-23
db23b536Fix major memory leak and remove sshd silo - 2026-05-19
93c89275async: implement and optimize async I/O completion handling - 2026-05-18
7c5efb4dasync: io_uring-like async I/O — ring, dispatch, AHCI bridge (Phases 1-4) - 2026-05-14
cc4944a2Refactor and clean up code in various modules - 2026-05-14
ecc416dfrefactor: strate-init refactoring, ELF/VFS/signal hardening, TSC calibration fix - 2026-05-08
f070d41cAdd kernel entropy pool with interrupt-driven collection - 2026-05-08
9dedb9f1Implement robust list support (set_robust_list/get_robust_list) - 2026-05-08
d2e90a2fBridge clone() thread creation via SYS_THREAD_CREATE, add faccessat routing
Changelog entries
0.1
- Introduced canonical
strat9-abicrate as single source of truth. - Unified syscall numbers in
strat9_abi::syscall. - Unified shared structs (
TimeSpec,IpcMessage,FileStat, PCI types). - Added boot handoff ABI (
KernelArgs,MemoryRegion,MemoryKind) with magic/version checks. - Added ABI introspection syscall
SYS_ABI_VERSION.
Entry template
Use this template for future ABI entries:
### X.Y
- Added:
- <new syscalls/types/flags>
- Changed (compatible):
- <field additions, new constants, optional semantics>
- Changed (breaking):
- <layout/numbering/semantic breaks>
- Migration notes:
- <what userspace/kernel must update>