MCPcopy Index your code
hub / github.com/BerkeOruc/BerkeOS

github.com/BerkeOruc/BerkeOS @v0.6.3

Chat with this repo
repository ↗ · DeepWiki ↗ · release v0.6.3 ↗ · + Follow
507 symbols 1,080 edges 35 files 111 documented · 22% updated 13d agov0.6.3 · 2026-03-21★ 37
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

BerkeOS Banner

Typing SVG

Rust x86_64 License Version Lines

GitHub Stars GitHub Forks GitHub Issues Last Commit

🇹🇷 Built from scratch by a 16-year-old developer from Turkey

A modern, DOS-inspired operating system proving that with dedication and AI assistance, anyone can build an OS.

🚀 Quick Start   📖 Documentation   🗺️ Roadmap   🤝 Contributing

separator

📑 Table of Contents

Click to expand/collapse

  ─────────────────────────────────────────────
    🎯 About the Project                      
    👨‍💻 About the Developer                  
    📸 Screenshots                           
    ✅ Module Status                         
    🛠️ Features                             
    📊 Code Statistics                       
    🚀 Quick Start                           
    🏗️ Architecture                          
    💻 Shell Commands                        
    🗺️ Roadmap                              
    📜 Changelog                            
    🤝 Contributing                         
    📄 License                              
    🙏 Acknowledgments                       
  ─────────────────────────────────────────────
  ```





<img src="https://raw.githubusercontent.com/andreasbm/readme/master/assets/lines/solar.png" alt="separator" width="100%">





## 🎯 About the Project





/\\\\\\___________________________________________________________________/\\__________/\\\\\___
\/\\/////////\__________
/\______/\\///\_/\\/////////\_
\/\_
_\/\_____\/\____/\\/\///\_\//\__\///
\/\\\\\\\___
/\\\\/\/\\\_\/\\\\__/\\\\/\______\//\___\////\_________
\/\\/////////\_/\\/////\_\/\\/////\_\/\\////\____/\\/////\_\/\_______\/\______\////\______
\/\____
\/\_/\\\\\_\/\_\///__\/\\\\/____/\\\\\_\//\___/\__\////\___
\/\____
\/\_\//\///////\/\__\/\\///\_\//\///////_\///\_/\_/\______\//\_
_\/\\\\\\\/
\//\\\\\\/\_________\/\_\///\_\//\\\\\_\///\\\/\///\\\\\\/___ \/////////////___\//////////\///_\///\///_\//////////_\/////___\///////////_____






**BerkeOS** is a modern, DOS-inspired operating system developed entirely from scratch using Rust (`no_std`). It features a complete boot chain, monolithic kernel, custom filesystem, interactive shell, device drivers, and more — all built with zero budget using free AI tools.

<table>
<tr>
<td width="50%">

### 🔑 Key Highlights

- 🦀 **Pure Rust** — `no_std` monolithic kernel
- 🖥️ **Bare Metal** — Boots on real x86_64 hardware
- 📁 **Custom FS** — BerkeFS with ATA PIO support
- 🐚 **Rich Shell** — `berkesh` with 30+ commands
- ✏️ **Text Editor** — Built-in `deno` editor
- 🎵 **Audio** — PC Speaker beep & melodies
- ⏰ **Real-Time** — RTC clock integration
- 🔒 **Memory Safe** — Rust's ownership model

</td>
<td width="50%">

### 📈 Project Stats

| Metric | Value |
|:---|:---|
| 🏗️ Architecture | `x86_64` (Long Mode) |
| 🦀 Language | Rust (nightly, `no_std`) |
| 🔧 Assembler | NASM (boot stage) |
| 📦 Build System | Custom (Cargo + NASM + LD + GRUB) |
| 🖥️ Emulator | QEMU |
| 📏 Total Lines | ~14,288 |
| 💰 Build Cost | **0 TL** |
| 📅 Started | 2024 (developer age 14) |

</td>
</tr>
</table>

<img src="https://raw.githubusercontent.com/andreasbm/readme/master/assets/lines/aqua.png" alt="separator" width="100%">





## 👨‍💻 About the Developer





<table>
<tr>
<td align="center" width="200px">



  <img src="https://img.shields.io/badge/🧑‍💻-Developer-E8792B?style=for-the-badge" alt="developer"/>





  <b>Berke Oruç</b>



  <sub>Age 16 · Turkey 🇹🇷</sub>





  <a href="https://github.com/berkeoruc">
    <img src="https://img.shields.io/badge/GitHub-100000?style=flat-square&logo=github&logoColor=white" alt="GitHub"/>
  </a>
</td>
<td>

> *"I wanted to prove that with dedication and AI assistance, anyone can build an operating system from scratch."*

| Detail | Info |
|:---|:---|
| 🎂 **Age** | 16 years old |
| 🌍 **Location** | Turkey 🇹🇷 |
| 🚀 **Started** | Age 8 (2018) with js |
| 🎯 **Motivation** | Proving OS development is accessible to anyone |
| 💰 **Cost** | 0 TL — built entirely with free AI tools |
| 🤖 **AI Tools** | Free AI assistants for code generation & learning |

</td>
</tr>
</table>





<img src="https://raw.githubusercontent.com/andreasbm/readme/master/assets/lines/fire.png" alt="separator" width="100%">





## 📸 Screenshots





> ⚠️ **Note:** Some of the screenshots may not be uploaded yet.

<table>
<tr>
<td align="center" width="50%">
<img src="https://github.com/BerkeOruc/BerkeOS/raw/v0.6.3/assets/screenshots/boot.png" alt="Boot Screen" width="100%"/>


<sub><b>🖥️ Boot Screen</b> — UEFI/BIOS auto-detection</sub>
</td>
<td align="center" width="50%">
<img src="https://github.com/BerkeOruc/BerkeOS/raw/v0.6.3/assets/screenshots/shell.png" alt="Shell" width="100%"/>


<sub><b>🐚 berkesh Shell</b> — Interactive command line</sub>
</td>
</tr>
<tr>
<td align="center" width="50%">
<img src="https://github.com/BerkeOruc/BerkeOS/raw/v0.6.3/assets/screenshots/neofetch.png" alt="Neofetch" width="100%"/>


<sub><b>📊 Neofetch</b> — System information</sub>
</td>
<td align="center" width="50%">
<img src="https://github.com/BerkeOruc/BerkeOS/raw/v0.6.3/assets/screenshots/editor.png" alt="Deno Editor" width="100%"/>


<sub><b>✏️ Deno Editor</b> — Built-in text editor</sub>
</td>
</tr>
</table>





<img src="https://raw.githubusercontent.com/andreasbm/readme/master/assets/lines/rainbow.png" alt="separator" width="100%">





## ✅ Module Status

> **Transparency Note:** This table reflects the *actual implementation status* as derived from the source code.





| Module | Source File(s) | Status | Description |
|:---|:---|:---:|:---|
| 🟢 **Boot Chain** | `boot.asm`, `linker.ld` | ✅ | 32→64 bit Long Mode, page tables, kernel jump |
| 🟢 **VGA Text Mode** | `vga.rs` | ✅ | 80×25 color text output, scrolling |
| 🟢 **Framebuffer** | `framebuffer.rs`, `font.rs` | ✅ | Graphical framebuffer, font rendering |
| 🟢 **IDT + PIC + PIT** | `idt.rs`, `pic.rs`, `pit.rs` | ✅ | Interrupts, 8259 PIC, 100Hz timer |
| 🟢 **PS/2 Keyboard** | `keyboard.rs` | ✅ | Scan code → keypress, layout support |
| 🟢 **Memory Paging** | `paging.rs`, `allocator.rs` | ✅ | 2 MiB huge pages, heap allocator |
| 🟢 **ATA PIO Disk** | `ata.rs` | ✅ | Read/write sectors, disk detection |
| 🟢 **BerkeFS** | `berkefs.rs` | ✅ | Custom filesystem, dirs, files, mount |
| 🟢 **Shell (berkesh)** | `shell.rs` | ✅ | 30+ commands, history, tab support |
| 🟢 **Deno Editor** | `deno.rs`, `editor.rs` | ✅ | Built-in text editor |
| 🟢 **RTC Clock** | `rtc.rs` | ✅ | Real-time clock, date/time |
| 🟢 **PC Speaker** | `pcspeaker.rs`, `audio.rs` | ✅ | Beep, melodies via PIT |
| 🟢 **Scheduler** | `scheduler.rs`, `process.rs` | ✅ | Basic process scheduling |
| 🟢 **Syscalls** | `syscall.rs` | ✅ | System call interface |
| 🟡 **AHCI/SATA** | `ahci.rs` | 🧪 | SATA controller detection, WIP |
| 🟡 **USB Stack** | `usb/` | 🧪 | OHCI, USB storage — early stage |
| 🟡 **Network** | `net/`, `rtl8139.rs` | 🧪 | IPv4/ARP buffers, RTL8139 — early stage |





> **Legend:** 🟢 **Implemented** | 🟡 **Experimental** | 🔴 **Planned**

<img src="https://raw.githubusercontent.com/andreasbm/readme/master/assets/lines/solar.png" alt="separator" width="100%">





## 🛠️ Features

### 🧠 Kernel & Boot
- ✅ Monolithic kernel in Rust (`no_std`, `#![no_main]`)
- ✅ UEFI/BIOS auto-detection boot
- ✅ `boot.asm` — 32-bit → Long Mode transition
- ✅ Page tables with 2 MiB huge pages
- ✅ Heap allocator
- ✅ IDT + PIC 8259 + PIT 100Hz timer
- ✅ Basic process scheduler & syscall interface

### 📁 Filesystem & Storage
- ✅ BerkeFS — custom filesystem (up to 12 drives)
- ✅ ATA PIO disk read/write
- ✅ Directory tree, file ops (create, read, write, delete)
- ✅ Drive mount/unmount/format
- 🧪 AHCI SATA controller detection (experimental)

### 🐚 Shell & User Interface
- ✅ `berkesh` — interactive CLI with 30+ commands
- ✅ VGA text mode with color support (80×25)
- ✅ Framebuffer graphics mode with font rendering
- ✅ `deno` — built-in text editor
- ✅ Calculator, neofetch, system info
- ✅ Command history

### 🔌 Device Drivers
- ✅ PS/2 keyboard with scan code translation
- ✅ RTC (Real-Time Clock)
- ✅ PC Speaker (beep, play melodies)
- 🧪 RTL8139 network card driver (experimental)
- 🧪 USB OHCI + mass storage (experimental)

<img src="https://raw.githubusercontent.com/andreasbm/readme/master/assets/lines/aqua.png" alt="separator" width="100%">





## 📊 Code Statistics





  ─────────────────────────────────────────────────────
         CODE AUTHORSHIP BREAKDOWN                    
  ─────────────────────────────────────────────────────

    Developer Written    ████████████░░░░░  43%       
    AI-Assisted          ████████████████░  57%

    Total Lines: ~14,288                           
    By Developer: ~6,143 lines                      
    AI-Assisted: ~8,145 lines                      
    Build Cost: 0 TL

  ─────────────────────────────────────────────────────

```

separator

🚀 Quick Start

📋 Prerequisites

```bash

Arch Linux

sudo pacman -S rust nasm grub xorriso qemu rustup overri

Core symbols most depended-on inside this repo

println
called by 400
src/shell.rs
empty_line
called by 102
src/shell.rs
push_line
called by 46
src/shell.rs
draw_string
called by 34
src/framebuffer.rs
vga_print
called by 32
src/lib.rs
write_str
called by 28
src/serial.rs
outb
called by 23
src/ata.rs
draw_glyph
called by 19
src/framebuffer.rs

Shape

Method 283
Function 153
Class 63
Enum 8

Languages

Rust100%

Modules by API surface

src/shell.rs119 symbols
src/usb/storage.rs32 symbols
src/berkefs.rs31 symbols
src/usb/ohci.rs27 symbols
src/process.rs19 symbols
src/usb/mod.rs18 symbols
src/rtl8139.rs17 symbols
src/editor.rs17 symbols
src/ahci.rs17 symbols
src/lib.rs16 symbols
src/pic.rs14 symbols
src/net/mod.rs14 symbols

For agents

$ claude mcp add BerkeOS \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page