Katela is a real, standalone kernel written from scratch in C and x86 Assembly. Development began on April 26, 2026.
Katela is not a hobby os, not a toy os, not even an operating system, and it is not built as a learning exercise that stops at "hello world". It is engineered as a genuine kernel project: its own core, its own shell, and its own filesystem, all built with the intention of being a real, usable kernel — not a proof of concept and not a weekend experiment.
Katela does not follow UNIX or POSIX conventions. It does not aim for POSIX compliance, UNIX-like semantics, or compatibility with existing UNIX tooling. Katela follows its own design philosophy, its own system call conventions, its own shell behavior, and its own way of doing things from the ground up.
- Custom kernel core — written in C and Assembly, no third-party kernel code
- Custom shell — Katela's own command-line interface, not a UNIX shell clone
- Custom filesystem — a simple, purpose-built filesystem designed specifically for Katela
- VGA driver — text/graphics output handled natively
- Keyboard driver — native PS/2 keyboard input handling
- PC speaker driver — native sound output through the PC speaker
- Non-UNIX, non-POSIX design — Katela charts its own architectural path
Katela exists to explore what a kernel can look like when it isn't bound by UNIX/POSIX conventions or built purely as a hobby exercise. Every subsystem — from the shell to the filesystem to the drivers — is designed intentionally as part of a cohesive, independent kernel, not assembled as disconnected experiments.
To build and run Katela you need a cross-platform toolchain consisting of an assembler (NASM), a GCC-based cross/multilib compiler, GRUB tools for producing a bootable ISO, xorriso for ISO creation, and QEMU for emulation/testing (you also can try another VMs like virtualbox or wmware).
sudo apt install build-essential nasm grub-pc-bin xorriso qemu-system-x86 make gcc-multilibsudo pacman -S base-devel nasm grub xorriso qemu-full make gcc mtoolsNote: on Arch, 32-bit multilib support requires enabling the
multilibrepository in/etc/pacman.conffirst (uncomment the[multilib]section), then runningsudo pacman -Syu.
Install Homebrew first, then:
brew install nasm xorriso qemu make
brew install x86_64-elf-gcc x86_64-elf-binutilsNote: macOS does not ship a native
grub-pc-binpackage. You'll need a cross-compiled GRUB toolchain (e.g. viabrew install i686-elf-grubfrom a suitable tap, or by building GRUB from source) to produce a bootable ISO.
The recommended approach is to use WSL2 (Windows Subsystem for Linux) with a Debian or Ubuntu distribution, then follow the Debian/Ubuntu instructions above:
wsl --install -d UbuntuOnce inside WSL:
sudo apt install build-essential nasm grub-pc-bin xorriso qemu-system-x86 make gcc-multilibAlternatively, native Windows builds are possible via MSYS2, installing equivalent packages (nasm, mingw-w64-x86_64-toolchain, qemu, xorriso, and a GRUB toolchain), though WSL2 is the more reliable path.
Build Katela:
makeBuild and run Katela in QEMU:
make runClean all build artifacts:
make cleanKatela is under GPL v3.0 License, see more information in LICENSE file