Ghost Kernel

Ghost is an operating system for the Intel x86 platform. The project is licensed as GPLv3. It was started as a research project to learn more about low-level software programming and computer internals. The sources are available on GitHub.


About me

My name is Max Schl├╝ssel and I'm a software developer from Bavaria, Germany. I started Ghost in 2012 because I wanted to gain knowledge about how operating systems work and what happens under the hood, and well it's just fun to build something from scratch. The greatest sources of knowledge are the OSDev Forums and wiki and the LowLevel sites.

If you are interested in collaboration or have any questions, feel free to contact me at lokoxe@gmail.com.

-maxdev


About the system

The kernel and the userspace applications are written from scratch in C++ and Assembly (and some C). The kernel is not based on any existing kernel and not Unix-compatible. There is a relatively small POSIX.1 compatibility layer that allows porting some software to the system though.

The most advanced features are SMP support (symmetric multiprocessing) to run on multiple processors, a v8086 monitor for executing BIOS calls (which also introduced VESA support), support for ELF binary loading (including thread-local-storage and all the other little things), as well as signal support. And there is a fancy little GUI that makes it all good-looking :-)


Sytem & library structure

This diagram outlines the basic structure of how the loader, kernel, system libraries & binaries and user space software works together.