Experimental Operating System Implementation
This repository contains my implementation work for the eXpOS project — a guided academic operating systems project where a basic OS is built incrementally by following the official eXpOS roadmap.
eXpOS (Experimental Operating System) is a structured OS implementation project designed to help students deeply understand OS concepts by building the OS from scratch in small stages. Following the eXpOS roadmap, each stage has specific learning objectives and requires hands-on coding using the XSM simulator, SPL language and supporting tools.
eXpOS_24757/
├── README.md
├── Stage 1 – myeXpOS Setup/
├── Stage 2/
├── Stage 3/
├── Stage 4/
├── Stage 5/
├── Stage 6/
├── Stage 7/
├── Stage 8/
├── Stage 9/
├── Stage 10/
└── ...
Each folder corresponds to a stage in the official eXpOS roadmap. Stages 9 and 10 are currently placeholders (tracked using .gitkeep) and will be completed later as the project expands.
This project is organized according to the preparatory stages of the eXpOS roadmap, which must be done in sequence.
Learn how to install and configure the environment required for eXpOS development. Correct setup generates the necessary directory structure for future stages.
Study and manipulate the way files and executables are loaded into the XSM disk; examine core filesystem data structures like INODE and free lists.
Write a bootstrap loader to initialize and run code at machine startup using the XSM instruction set.
Learn to write, compile, and run a basic OS startup program using SPL on the XSM machine.
Learn to debug SPL programs using breakpoints and inspect registers and memory with the XSM debugger.
To work with eXpOS, the following are typically required:
- XSM Simulator – Executes target OS and user programs.
- SPL Compiler/Tools – For writing OS and test programs.
- XFS Interface – For managing files on the simulated disk.
- A compatible Linux environment for running these tools. :contentReference[oaicite:9]{index=9}