Thursday, January 30, 2025

Raam kernel version 0.01 release _/\_

Raam Raam ji _/\_ _/\_ _/\_ (greeting with god's name :) )

Raam is a 64-bit Unix-like kernel for x86-64 based PC.

I have been creating it since the beginning of this year. It is a proprietary software and I'm happy to share that I'm releasing its first version for free! "Release early" is my mantra! The aim of this release is to create the "core infrastructure" needed to enable the process management and the filesystem management in the kernel.

What have I implemented?


  1. A UEFI boot loader
  2. GDT (global descriptor table)
  3. IDT (interrupt descriptor table)
  4. interrupt handling
  5. tty (output) driver initialization
  6. printk implementation
  7. acpi and pcie initializations for NVMe driver
  8. NVMe driver
  9. PIT timer driver
  10. PIC driver
  11. handler for timer interrupts

Please Note:

Running the kernel executable on your 64-bit intel machine may lead to data loss or corruption. It may also make your system unstable as I can't test the binary on all the possible machines. It works fine on my and my sister's machine though. Please continue at your own risk.


What do you need to test it?

1. The kernel executable file. Please download it from here and get the `BOOTx64.EFI` file.
2. A laptop or desktop PC with 64-bit intel cpu supporting UEFI booting, ACPI version 2, NVMe over PCIe SSD, PIT and PIC devices (available on most of the modern systems).
3. A pen drive formatted as GPT with FAT filesystem. Create two directories viz. `/EFI/BOOT`. Copy the kernel file `BOOTx64.EFI` to `/EFI/BOOT/`.

Reboot your machine and on boot, press the key required to get the boot menu (just google it for your model) and select your usb thumb drive from it. Voila! It should run and you will get a screen filled with various initializations and timer fires.

That's it.

If you like, please post the screenshot in the comments by uploading it somewhere.

It is the passion and the hobby :)

Note: The kernel works on my HP laptop and my elder sister's Dell laptop.

No comments:

Post a Comment

Let us print text from the UEFI boot loader in assembly

1. Raam Raam ji (greeting with god's name :) ). This is our second blog post in the operating system development series. If yo...