Introduction to HERA_OS

Chanaka Madushan Herath
2 min readJul 26, 2020

HERA Operating System is a simple operating system written in assembly language. The main task of this OS is to display the hardware information of your computer where you run this operating system.

Structure

These are the most important files and directories in the HERA_OS:

  • source/ — Contains the entire OS source code
  • source/bootload/ — Source to generate bootload.bin, which is added to the disk image when building
  • source/features/ — Components of HERA_OS such as keyboard and screen.
  • source/kernel.asm — The core kernel source file. which pulls in other source files
  • programs/ — Source code for programs which is added to the disk image

Since we don’t have the knowledge to implement a bootloader I used the bootloader of Mike OS as the bootloader for my HERA_OS. After that I started to implement the Kernel of HERA_OS. so that we have to download two things before starting of making the operating system.

nasm Installation

nasm is for converting .asm files to .bin files. Before start making the operating system we need to download this with ubuntu terminal. Code is given below.

sudo apt-get install nasm

qemu Installation

qemu is used for making the operating system run on our Ubuntu OS terminal.

sudo apt-get install qemu

How to build

Open HER_OS folder and open the terminal in this file location and compile using this code.

sudo bash ./build-linux.sh

Run the HERA_Os in qemu emulator

Finally, type the given command in that same location on the terminal, OS will be turned on in qemu emulator.

qemu-system-i386 -fda ./disk_images/HERA_OS.flp

How HERA_OS Looks Like

Home page of HERA_OS
Shows hardware information

Source Code:

https://github.com/Chanaka-Madushan-Herath/HERA_OS.git

References:

References:

--

--

Chanaka Madushan Herath

software Engineering Undergraduate | University of Kelaniya