Skip to content

Simple Operating System written in NASM assembly and C for educational purposes, demonstrating a minimal OS loader and BIOS text output.

License

Notifications You must be signed in to change notification settings

steven-llamas/simple-OS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Simple Operating System

This project is a minimal 16-bit Operating System written in nasm asm and C. When built, contains a bootable disk image(main.img). This project is intended for educational purposes

Requirements

  • nasm – assembler for 16-bit code
  • make – build system to run the Makefile to automate compilation and .img file creation in build folder
  • open Watcom v2 - a C compiler with 16-bit support, which can compile C code and link it with assembly files.
  • other packages may be needed, make sure to run make install_tools (for Ubuntu/Debian systems) before building
  • Optional: qemu-system-i386 – emulator to test the bootloader on

On Ubuntu/Debian-based systems, you can install the required tools with:

sudo apt install build-essential nasm make

Build

This project uses make to create the build folder and build the files into that folder. Simply run:

make install_tools

install_tools will install all the required packages for this project (on ubuntu/debian systems). Then run:

make

Additionally, to clean the build folder, run:

make clean

Example of running OS in a VM

Captura-de-pantalla-2026-01-23-a-la(s)-8-36-47-p-m.png

About

Simple Operating System written in NASM assembly and C for educational purposes, demonstrating a minimal OS loader and BIOS text output.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published