LemonOS Terminal
LemonOS> about

🍋 LemonOS v0.1 - Baremetal Operating System
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

A lightweight CLI-based OS written in C and Assembly

Features:
  • Real-time Clock - Hardware RTC integration
  • CLI Interface - Professional terminal interface
  • Calculator & Unit Converter
  • System Information & Matrix Screensaver

LemonOS> _
                        

Fresh-Squeezed Baremetal OS

No artificial preservatives. No kernels. Just pure, zesty code.

Command Reference

Explore all available LemonOS commands

Quick Start

Prerequisites

Ubuntu/Debian
sudo apt-get install gcc-multilib qemu-system-x86 grub-pc-bin
Arch Linux
sudo pacman -S gcc-multilib qemu grub
macOS (Homebrew)
brew install x86_64-elf-gcc qemu

Build & Run

Clone and Build
git clone https://github.com/dwip-the-dev/LemonOS.git
cd LemonOS
make clean && make
Run in QEMU
make run
Create Bootable ISO
make iso

Make Targets

make Build LemonOS
make run Run in QEMU
make iso Create bootable ISO
make clean Clean build artifacts
make debug Build with debug symbols

Technical Details

Boot Process

  1. BIOS loads boot sector
  2. Bootloader enters protected mode
  3. Kernel initializes hardware
  4. Shell starts interactive session

Hardware Support

  • CPU: x86-32 (i386+)
  • Memory: Conventional + Extended
  • Display: VGA Text Mode (80x25)
  • Input: PS/2 Keyboard
  • Time: CMOS RTC

Project Structure

LemonOS
├── apps
│   ├── calculator.c
│   ├── clock.c
│   ├── file_manager.c
│   ├── screensaver.c
│   ├── system_info.c
│   └── unit_converter.c
├── art.h
├── boot.s
├── commands.c
├── commands.h
├── drivers
│   ├── rtc.c
│   ├── simple_fs.c
│   └── vga_utils.c
├── grub.cfg
├── include
│   ├── calculator.h
│   ├── clock.h
│   ├── file_manager.h
│   ├── filesystem.h
│   ├── keyboard.h
│   ├── rtc.h
│   ├── screensaver.h
│   ├── stddef.h
│   ├── stdint.h
│   ├── system_info.h
│   ├── unit_converter.h
│   ├── vga.h
│   └── vga_utils.h
├── kernel.c
├── keyboard.c
├── linker.ld
├── Makefile
├── shell.c
├── shell.h
└── vga.c

4 directories, 34 files

Contributing

Found a bug? Want a new feature? Contributions are welcome!

How to Contribute

  1. Fork the repository
  2. Create a feature branch
    git checkout -b amazing-feature
  3. Commit your changes
    git commit -m 'Add amazing feature'
  4. Push to the branch
    git push origin amazing-feature
  5. Open a Pull Request

Ideas for Contribution

  • 🎮 Basic games (Snake, Pong)
  • 🎨 Colour themed OS
  • 🌐 Network stack
  • 🎵 Sound driver
  • 👾 Run DOOM

Learning Resources

This project is excellent for learning:

Operating System Design x86 Assembly Programming Hardware Interaction System Programming Boot Process & Firmware

Get LemonOS

Download the latest release and start exploring

Latest Release

Get the pre-built ISO image and run LemonOS immediately

📦 Download Latest Release