Osle
💾 A tiny and mighty boot sector OS
Install / Use
/learn @shikaan/OsleREADME
👀 Overview
OSle is a real-mode OS that fits in a boot sector.
It's written in x86 assembly and, despite its tiny size (only 510 bytes), it packs essential features like:
- Shell: Run commands and builtins.
- File System: Read, write, and find files on the system.
- Process Management: Cooperatively spawn child processes.
- Userland Software: Comes with pre-built software and an SDK to write your own.
Check out the online demo to see it in action!
📚 Creating your first OSle program
OSle includes a tiny Software Development Kit (SDK) that includes definitions and a toolchain to create your own OSle C or x86 Assembly programs.
Follow the step-by-step tutorial to write your first program!
🛠️ Development
To develop OSle and OSle programs you will need the following tools:
- nasm
- i686-elf-gcc
- GNU make (usually preinstalled)
- bochs (optional)
macOS
Install dependencies using Homebrew:
brew install nasm
brew install i686-elf-gcc
brew install bochs # optional, you can use Qemu if you prefer
Linux
Install dependencies using your local package manager, e.g., on Debian:
apt install nasm gcc-i686-linux-gnu bochs # bochs is optional
</details>
Build and Run OSle locally
These recipes will compile OSle and use the SDK to compile and bundle
all the pre-built programs. Using start will also run bochs right away.
# build and run OSle on bochs
make start
# or
# build osle
make osle
# use QEMU to run it
qemu-system-i386 -fda osle.img
Build and Run your OSle program
You can write OSle programs in x86 Assembly, like OSle itself, or in C. Check out the step-by-step tutorial to write your first program!
# ensure you have a working OSle image at osle.img
make osle
# compile your source to generate program.bin
sdk/occ program.c
# or
sdk/occ program.s
# bundle my_file.bin into the osle.img image
sdk/pack program.bin
# run it!
qemu-system-i386 -fda osle.img
Use OSle on a Real Device
Write the built image to a device using dd:
[!WARNING]
The following action can damage your hardware. We take no responsibility for any damage OSle might cause.
# generate an OSle image at osle.img
make osle
# write it on a device
sudo dd if=osle.img of=/dev/YOUR_DEVICE bs=512 count=1
🤝 Contributing
Feel free to explore the issues and pull requests to contribute or request features.
License
Related Skills
node-connect
340.5kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
84.2kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
340.5kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
commit-push-pr
84.2kCommit, push, and open a PR
