Skip to content

NEWMAN50ott/FEB-Kernel-Old

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 

Repository files navigation

FEB-Kernel

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 (v0.000001)

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 🦦.

Features

  • 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.

How to Compile (For Developers)

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.o

How to Boot (Manual Instructions)

This repository contains only the kernel code. To boot FEB, you must build the bootable media manually:

  1. Clone or download the binary release of the Limine Bootloader (v7.x-binary branch).
  2. Create an empty folder named iso_root/.
  3. Create a limine.conf file with the following configuration:
    TIMEOUT=0
    :FEB
        PROTOCOL=limine
        KERNEL_PATH=boot:///kernel.elf
  4. Copy your compiled kernel.elf, your limine.conf, and Limine's boot assets (limine-bios.sys, limine-bios-cd.bin) into your iso_root/ folder.
  5. 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
  6. Install the MBR boot sector onto the ISO:
    ./limine bios-install os.iso
  7. Fire up your machine emulator to watch FEB boot:
    qemu-system-x86_64 -cdrom os.iso -display curses

🦦 Get Involved: How to Contribute!

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!

🚀 Good First Issues (Pick One!):

  1. The Keyboard Scan Table: Help map the rest of the US keyboard layout keys in scancode_to_ascii.
  2. Screen Clear (clear): Write a function that loops through memory 0xb8000 and fills it with spaces to reset the screen.
  3. Mascot Speech: Make the otter say a random quote from readme.txt on 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!

License

FEB is open-sourced under the GNU General Public License v3.0 (GPLv3).

About

This is a bare-bones kernel. I'm Open - Sourcing this so it can get some real development in

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages