This is a bare-bones kernel. I'm Open - Sourcing this so it can get some real development in. This is dead simple so don't use it as your general operating system.
FEB is a minimal, 64-bit monolithic operating system kernel built from scratch using pure C and designed to boot via Limine.
Our official mascot is the Otter 🦦.
- Free to Everybody: Licensed under the GNU GPLv3 to ensure it remains open-source forever.
- Mascot Built-In: Displays a custom text-mode ASCII otter mascot natively on boot.
- Pure C Monolithic Build: Zero Assembly files required.
- RamFS: Built-in structural memory array acting as an internal file layer.
Compile the source code into a 64-bit ELF binary using the following command:
gcc -ffreestanding -m64 -c kernel.c -o k.o && ld -Ttext 0x100000 -o kernel.elf k.oThis repository contains only the kernel code. To boot FEB, you must build the bootable media manually:
- Clone or download the binary release of the Limine Bootloader (
v7.x-binarybranch). - Create an empty folder named
iso_root/. - Create a
limine.conffile with the following configuration:TIMEOUT=0 :FEB PROTOCOL=limine KERNEL_PATH=boot:///kernel.elf
- Copy your compiled
kernel.elf, yourlimine.conf, and Limine's boot assets (limine-bios.sys,limine-bios-cd.bin) into youriso_root/folder. - Package the folder into a bootable ISO file using your system's ISO toolchain:
xorriso -as mkisofs -b limine-bios-cd.bin -no-emul-boot -boot-load-size 4 -boot-info-table --efi-boot limine-bios-cd.bin -efi-boot-part --efi-boot-image --protective-msdos-label iso_root -o os.iso
- Install the MBR boot sector onto the ISO:
./limine bios-install os.iso
- Fire up your machine emulator to watch FEB boot:
qemu-system-x86_64 -cdrom os.iso -display curses
FEB is a hyper-minimal 125-line monolithic kernel, making it the perfect blank canvas for OS developers, students, and hobbyists. We want YOU to help us grow!
- The Keyboard Scan Table: Help map the rest of the US keyboard layout keys in
scancode_to_ascii. - Screen Clear (
clear): Write a function that loops through memory0xb8000and fills it with spaces to reset the screen. - Mascot Speech: Make the otter say a random quote from
readme.txton startup.
To contribute, fork the repo, write your pure C code, and submit a Pull Request. All approved contributors get added to our Hall of Fame!
FEB is open-sourced under the GNU General Public License v3.0 (GPLv3).