X-OS : the unknown operating system ;)

X-OS is a project I began as a student several years ago. The main objective was never to dominate the world ;) but rather to dive deep into the internals of Intel CPUs.

After combing through thousands of pages of documentation on Intel's i386 processor family, I started by coding a simple boot sector and a 16-bit shell in assembly language. But that wasn't enough for me. I soon decided to learn how to build an OS using a higher-level language like C, exploring how it could allocate memory, execute binaries, and switch between kernel and user modes. This journey led me to rewrite the X-OS kernel in a 32-bit version, with a minimal assembly codebase and the rest written in C.

At one point, I even began exploring the possibility of porting my OS to run on a smart card chip, a seemingly crazy idea, but actually possible!

Eventually, my spare time dwindled, and I paused development on a fairly stable release that can still be downloaded and compiled on Linux.

So X-OS is dead :( ?

Not quite! Thanks to open-source sharing, other developers have taken parts of my code and integrated them into their own OS projects or other applications. In a way, X-OS still lives on within other codes.

If you're intrigued by low-level programming, you can find the source code in the download section, or grab the floppy image to try X-OS on a virtual machine. Note, though, that it might require a few twes to compile successfully, as both the GCC compiler and libc have changed quite a bit since I stopped development.

Enjoy exploring X-OS!

Alaa-eddine KADDOURI

Latest version 32bits

Version 0.3.3 : What you see just after the boot screen

Version 0.3.3 : three parallel tasks

Older versions 32bits

The first 32bits shell, independent from the kernel

 

Very Old versions 16bits this is the 100% assembly version ;)