Skip to main content

Portix OS Documentation

A high-performance x86_64 kernel written in Rust from scratch. Learn how to build, understand, and contribute to a bare-metal operating system.

Quick Start

Get Portix OS running in just a few steps

1

Clone the repository

Clone the Portix OS source code from GitHub:
git clone https://github.com/omarPVP123131/Portix-OS.git
cd Portix-OS
2

Install dependencies

Ensure you have Rust nightly, Python 3, and QEMU installed:
rustup install nightly
rustup default nightly
3

Build and run

Use the build script to compile and launch in QEMU:
python scripts/build.py --mode=iso
The kernel will boot directly into 64-bit Long Mode and display the interactive UI with tabs for System, Terminal, Devices, IDE, and File Explorer.

Explore by Topic

Dive into the core systems that power Portix OS

Architecture Overview

Understand the modular design and how components interact

Boot Process

Learn how Portix boots from BIOS to Long Mode

Memory Management

Explore the Buddy System allocator and heap architecture

Interrupt Handling

See how IDT, ISRs, and IRQs are configured

Core Components

Deep dive into the kernel subsystems

Drivers

ATA storage, PS/2 input, PCI/ACPI bus drivers

Filesystem

VFS layer with FAT32 and ISO9660 support

Graphics

VESA framebuffer with alpha blending

Console & UI

Interactive terminal and tabbed interface

API Reference

Detailed documentation for developers

Buddy Allocator

Memory allocation internals

Storage Drivers

ATA, FAT32, and VFS APIs

Framebuffer

Graphics rendering API

Ready to contribute?

Portix OS is an open-source project. Join the community and help build the next generation of bare-metal systems.

Contributing Guide

Build docs developers (and LLMs) love