Skip to content

Commit ee8c707

Browse files
authored
Added disclaimer + release tag
1 parent f4afe1a commit ee8c707

File tree

1 file changed

+30
-10
lines changed

1 file changed

+30
-10
lines changed

README.md

Lines changed: 30 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,36 @@
11
# AstraKernel ~ A minimal ARM kernel for QEMU
22

3-
AstraKernel is a minimal experimental kernel written in C and ARM assembly, designed to run on
4-
QEMU's VersatileAB (Cortex-A8) emulated platform. This project currently
5-
demonstrates how to bootstrap a system, set up the stack, zero the `.bss`
6-
section, and perform basic UART output (printing text to the serial console).
3+
[![GitHub release (including pre-releases)](https://img.shields.io/github/v/release/sandbox-science/AstraKernel?include_prereleases)](https://github.com/sandbox-science/AstraKernel/releases)
4+
5+
AstraKernel is a minimal experimental kernel written in modern C and ARM assembly, designed to run on
6+
**QEMU's VersatileAB (Cortex-A8)** platform. The purpose is educational, showing the fundamental
7+
steps of bringing up a bare-metal system, from low-level bootstrapping to higher-level interactive features
8+
to explore kernel development concepts.
79

810
```bash
911
========================================
1012
AstraKernel v0.1.0
11-
Built May 15 2025 at 22:58:58
13+
Built Aug 27 2025 at 12:56:35
1214
========================================
1315

1416
CPU: Cortex-A8 @ 200MHz (simulated)
1517
RAM: 128MB SDRAM at 0x00000000
1618

1719
Welcome to your own little Astra world!
1820
Type away, explore, have fun.
21+
22+
AstraKernel is running...
23+
Press Ctrl-A and then X to exit QEMU.
24+
25+
AstraKernel >
1926
```
2027

2128
## Features so far
2229

23-
- Simple ARM assembly startup code
24-
- Memory-mapped UART output for terminal messages
25-
- Runs under QEMU
30+
- [x] **Bootstrapping**: stack setup, BSS clearing, entry into the kernel main.
31+
- [x] **UART I/O**: putc/puts, getc/getline, basic shell loop.
32+
- [x] **Vector Table**: Define vector table for exceptions/interrupts.
33+
- [x] **Basic Timer Interrupt**: Configure one hardware timer, hook its interrupt to increment a "tick" counter.
2634

2735
## Building
2836

@@ -34,7 +42,7 @@ Make sure you have an ARM cross-compiler installed (e.g., `arm-none-eabi-gcc`) a
3442
make
3543
```
3644

37-
Developers also have the option to run the kernel with custom flags such as:
45+
Developers also have the option to run the kernel with custom flags, such as:
3846
```sh
3947
make KFLAGS="-USE_KTESTS -MY_DEFFLAG"
4048
```
@@ -46,7 +54,7 @@ make KFLAGS="-USE_KTESTS -MY_DEFFLAG"
4654

4755
### Docker Build
4856

49-
If you have docker installed, you can also run AstraKernel through a docker container:
57+
If you have Docker installed, you can also run AstraKernel through a Docker container:
5058

5159
```sh
5260
make docker
@@ -67,6 +75,18 @@ For more details about this kernel, refer to the [AstraKernel Documentation](htt
6775
>
6876
> The manual is a work in progress and may not cover all features yet.
6977
78+
## Disclaimer
79+
80+
AstraKernel is an **educational project** created to demonstrate operating system concepts.
81+
It is currently in version ![GitHub release (latest by date including pre-releases)](https://img.shields.io/github/v/release/sandbox-science/AstraKernel?include_prereleases&label=&style=flat) and should be considered experimental software.
82+
83+
- **Not Production-Ready**: AstraKernel is not stable, secure, or suitable for production environments.
84+
- **Educational Use Only**: The project is provided for learning, research, and experimentation purposes.
85+
- **No Warranty**: AstraKernel is distributed on an “as is” basis, without warranties or conditions of any kind, express or implied.
86+
- **Limitation of Liability**: The authors and contributors assume no responsibility or liability for any damages, data loss, or issues arising from the use of AstraKernel.
87+
88+
By using AstraKernel, you acknowledge that you understand these limitations.
89+
7090
## License
7191

7292
This project is licensed under the GNU GENERAL PUBLIC License. See the [LICENSE](LICENSE) file for details.

0 commit comments

Comments
 (0)