Skip to content

YADAV1825/OS-RohitOS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Typing SVG


🧠 RohitOS v0.1 — A Minimal Custom Operating System

A fully handcrafted operating system from scratch in C + Assembly, booting with a custom bootloader, entering protected mode, and running a feature-rich CLI

Build with love Language No LibC License


📽️ Demo

OS.VIDEO.ROHIT.mp4

🧱 Project Structure

RohitOS/
├── bootloader.asm # 16-bit bootloader to load kernel
├── disk_load.asm # Sector loader (INT 13h)
├── gdt.asm # GDT for protected mode
├── kernel/
│ ├── kernel_entry.asm # Jump into 32-bit mode
│ ├── kernel.c # Core logic, splash, progress, init
│ ├── cli.c # Command parser + dispatcher
│ └── cli.h # CLI header
├── lib/
│ ├── stdio.c/.h # Custom print() and console I/O
│ └── string.c/.h # Basic string ops (no libc)
├── linker.ld # Custom linker script
├── Makefile # Complete build system
├── build/ # Compiled output binaries
└── README.md # This file 📄


🚀 Features

  • 🔹 Custom 16-bit bootloader
  • 🔹 Protected mode (32-bit) kernel
  • 🔹 Fully functional CLI shell
  • 🔹 ASCII splash screen + loading bar
  • 🔹 No libc – all string/IO functions built manually
  • 🔹 System uptime tracking
  • 🔹 Custom command parsing
  • 🔹 Print with no standard output
  • 🔹 Written in pure C and NASM

🖥️ CLI Commands

Command Description
help Show all commands
clear Clear the terminal screen
ver Show OS version
uptime Show system uptime in seconds
date Show kernel build date/time
whoami Print the current user
sysinfo Show system info summary
shutdown Halt execution (hlt loop)
echo Print custom text
calc Add, subtract, multiply, divide
timer Countdown timer
hex Convert decimal to hexadecimal
bin Convert decimal to binary
fortune Show a random coding quote

🧪 Build & Run Instructions

🛠 Requirements

  • nasm
  • gcc with 32-bit support (-m32)
  • ld
  • QEMU (or Bochs/VirtualBox for ISO testing)

🔨 Commands

make clean
make        # Assembles + compiles everything
make run    # Runs RohitOS in QEMU

🌟 Author

Rohit Yadav 🎓 CS Undergrad @ NIT Jalandhar 👨‍💻 Systems Programmer | VM + Compiler Dev


⭐ If you liked it — drop a star!

About

RohitOS v0.1 is a fully handcrafted, minimalist operating system built entirely from scratch in C and x86 Assembly, designed for 32-bit protected mode and running on bare metal or QEMU. It features a custom bootloader, kernel, CLI shell, memory-safe string utilities, and interactive system utilities

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors