https://github.com/callmesalmon/nanos
My attempt at making an actual good kernel. Contributions are always welcome! (WIP)
https://github.com/callmesalmon/nanos
c kernel minimalist nanokernel operating-system os osdev pure-c
Last synced: 7 months ago
JSON representation
My attempt at making an actual good kernel. Contributions are always welcome! (WIP)
- Host: GitHub
- URL: https://github.com/callmesalmon/nanos
- Owner: callmesalmon
- License: apache-2.0
- Created: 2025-01-17T08:44:01.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-01-18T11:09:51.000Z (about 1 year ago)
- Last Synced: 2025-03-29T12:27:50.098Z (12 months ago)
- Topics: c, kernel, minimalist, nanokernel, operating-system, os, osdev, pure-c
- Language: C
- Homepage:
- Size: 243 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Nanos
This is my personal attempt at making a *functional* kernel. If you didn't know
already, I made an operating system in C a few months ago. But uhhh, the kernel
was built upon very weak glue. Like, something you would buy at the supermarket!
So yeah, this is my *real* attempt at making a good kernel.
## Requirements
* [clang](https://clang.llvm.org/)
* [limine](https://limine-bootloader.org/)
* [nasm](https://nasm.us/)
* [ninja](https://ninja-build.org/)
* [python3](https://www.python.org/)
* [lld](https://lld.llvm.org/)
## Install
```sh
# Prerequisites
git clone https://github.com/limine-bootloader/limine -b v4.x-branch-binary $HOME/limine
export LIMINE_PATH="$HOME/limine"
# Fetch
git clone https://github.com/ElisStaaf/nanos
cd nanos
# Install
./gen.py
ninja
qemu-system-x86_64 nanos.iso -serial stdio
```