ZXFoundation 26h1 (Milestone 1)
It has been about 2 months since the initial commit of the ZXFoundation kernel. Commit afad088 on April 27th. The journey on z/Architecture has been great, but is also a lot of work. Currently, the stage of the kernel is still very early; we are still working on the architecture, hardening subsystems and step-by-step adding features to the kernel. It can be considered, at this stage, a WIP project or a barebones kernel.
This initial milestone-even though a big milestone, does not mean that the kernel is ready to be used. And there is actually nothing to showcase yet. It primarily serves as a reference material for the upcoming releases. Currently, key features include:
- ZXFoundationLoader™ – a 2-stage bootloader
- Mostly in C, ASM usage minimized
- HHDM support
- DASD/VTOC driver
- Topologies support
- Hardware-specific information
- Somewhat portable if you want to use it
- Custom protocol
- ZXVerifiedLoad™ - security protocol
- Kernel binary lock
- Handshake stub
- SHA256 signature verification
- ZXFoundation™ – the kernel itself
- SMP (and NUMA) support
- 5 level paging (DAT)
- EDAT-1/2 support
- native 64 bit support (z/Architecture-exclusive)
- basic hardware drivers like SCLP, STFLE, SIGP, …
- zxallsyms for symbol lookup
- libzxunwind for stack unwinding (backtrace)
- libubsanrt for runtime sanitizers
- koms as Kernel Object Managament System
- simplelog/printk for logging
You can find the sources and changelog on GitHub.
Have fun!