Ghost OS is a hobby operating system for x86-64 PCs, built around a custom micro-kernel.
Started in 2015, Ghost has grown into a system with its own kernel, system libraries, graphical desktop and applications. Its core is written from scratch in C and C++, with small parts in Assembly, complemented by ported open-source libraries.
Ghost is open source. The kernel is licensed under GPLv3, with individual libraries and ported software covered by their respective licenses. The sources are available on GitHub.
Features
- Custom x86-64 micro-kernel
- SMP multi-processor support
- Virtual memory and separate process address spaces
- Multitasking and multiple interprocess-communication mechanisms
- Native kernel interaction library (libapi)
- Own C standard library (libc) and OS-specific GCC toolchain
- ELF executable, shared library and thread-local storage support
- C++ support in kernel and userland
- Ć’enster window server and GUI toolkit, originally developed as part of Ghost
- Graphical desktop, terminal, shell, text editor and file browser
- VMSVGA and bootloader-provided framebuffer graphics
- PS/2 keyboard and mouse drivers, PCI device support
- Limine boot protocol support
- Ported software including Cairo, FreeType, libpng and Doom
- It's also very cool
About me
My name is Max, and I'm a software developer from Bavaria, Germany. I started Ghost around 2015 because I wanted to understand how operating systems work and what happens under the hood.
Over the years, it has become a place to explore everything from memory management and scheduling to window composition and UI design. I still enjoy the same thing that got me started: figuring out how something works, building it myself, and seeing it come to life.
The OSDev Forums, OSDev Wiki and LowLevel community have been invaluable resources along the way.
If you'd like to collaborate or have any questions, feel free to contact me at lokoxe@gmail.com.