========================================
AstraKernel v0.1.0
Built Aug 27 2025 at 12:56:35
========================================
CPU: Cortex-A8 @ 200MHz (simulated)
RAM: 128MB SDRAM at 0x00000000
Welcome to your own little Astra world!
Type away, explore, have fun.
AstraKernel is a minimal experimental kernel written in modern C and ARM assembly, designed to run on QEMU's Versatile AB/PB board with a Cortex-A8 CPU override (-cpu cortex-a8). This setup keeps the simple Versatile peripheral map while enabling ARMv7-A features for experimentation. The purpose is educational, showing the fundamental steps of bringing up a bare-metal system, from low-level bootstrapping to higher-level interactive features to explore kernel development concepts. This project also reflects my personal journey in learning about kernel design and development, as well as systems programming.
This project was developed with a focus on clarity, simplicity, and educational value. Rather than attempting to recreate the complexity of established operating systems, the goal of this kernel is to strip away unnecessary abstractions and present a clean, understandable codebase for anyone interested in the "bare metal" foundations of computing.
Through the implementation of kernel bootstrapping, direct hardware communication, and basic user interaction, AstraKernel demonstrates how fundamental OS components come together. The project showcases how modern C best practices can be utilized in a systems programming context to create code that is maintainable, portable, and robust, while still being accessible to those new to kernel development. The design of this kernel emphasizes modularity and extensibility, allowing developers to easily add new features or modify existing ones. This makes it ideal for educational purposes, as it provides a clear structure that can be followed and built upon.
It is my hope that AstraKernel will not only serve as a foundation for those wishing to understand kernel development, but also inspire curiosity and confidence in exploring lower-level aspects of computer systems. The project is open source and available on GitHub, where you can find the source code, documentation, and instructions for building and running the kernel in QEMU.
Alongside this project, I am documenting the development process and design decisions made throughout the creation of AstraKernel. This documentation is a work in progress and may be updated as the project evolves. I welcome contributions, feedback, and suggestions for improvement. You can find the latest documentation on GitHub.
Get AstraKernel