Simple Operating System- Kiruba_OS
I have created the simple operating system called Kiruba_OS for my university project. It will display the basic hardware information of the computer system. The OS is created by modifying the JOSH operating system which is also an operating system for educational purpose.
Here is my GitHub repository link to Kiruba_OS:
Requirements:
Linux (If you don’t want to dual boot install virtual box)
QEMU PC emulator
NASM assembler
When you are in Linux, get all the tools mentioned above(emulator and assembler) by entering this in a terminal :
sudo apt-get install build-essential qemu nasm
I created the kernel.asm using the basic functions and operations provided by the JOSH OS tutorial. Then added the relevant assembly codes for displaying the hardware information. Those things were obtained from the reference materials provided.
For booting the Operating System a bootloader program is needed and i used the same bootload.asm from the JOSH without any modifications. The OS is booted from the floppy image. This can be created manually. But I used the image from the OS named MikeOS. For manually creating, run the below code
mkdosfs -C mikeos.flp 144
we can use compiling the program using compiler. I used the build-linux.sh from MikeOS which makes it more easier for compiling it. There should be some modifications to be done in the file for making it compact with out OS.
Compiling program
sudo bash ./build-linux.sh
Running the QEMU emulator
qemu-system-i386 -fda ./disk_images/mikeos.flp
References: