Draft:Ghost (operating system)
Submission declined on 3 February 2025 by Mcmatter (talk). This submission is not adequately supported by reliable sources. Reliable sources are required so that information can be verified. If you need help with referencing, please see Referencing for beginners and Citing sources. This draft's references do not show that the subject qualifies for a Wikipedia article. In summary, the draft needs multiple published sources that are:
Where to get help
How to improve a draft
You can also browse Wikipedia:Featured articles and Wikipedia:Good articles to find examples of Wikipedia's best writing on topics similar to your proposed article. Improving your odds of a speedy review To improve your odds of a faster review, tag your draft with relevant WikiProject tags using the button below. This will let reviewers know a new draft has been submitted in their area of interest. For instance, if you wrote about a female astronomer, you would want to add the Biography, Astronomy, and Women scientists tags. Editor resources
| ![]() |
![]() | |
Developer | Max Schlüssel |
---|---|
Written in | C, C++ |
OS family | POSIX compatible |
Working state | Current |
Source model | Open source |
Initial release | June 26, 2015 |
Latest release | v0.18.0 / February 3, 2025 |
Platforms | x86 |
Kernel type | Microkernel |
Default user interface | Custom window manager |
License | GNU General Public License |
Official website | www |
Ghost is an open-source hobbyist operating system project and micro kernel for the Intel x86 platform. It provides a modular, clean codebase for exploring modern operating system concepts, especially related to microkernel architectures. The project was first publicly released in 2015 under the GNU General Public License.[1]
Technical overview
[edit]Architecture
[edit]The kernel employs a microkernel architecture, where core functionalities such as inter-process communication, memory and task management reside in a minimal kernel. The system emphasizes a modular user-space driver concept where system components such as device drivers, the windowing system and other system services run in user space.
This design enhances system stability by isolating failures to individual modules rather than the entire system. Communication between these modules is facilitated via a message queue-based mechanism, which supports the system's modularity and fault isolation.
Key features
[edit]The project is primarily written in C/C++[1] with parts of Assembly for low-level hardware interaction. It supports symmetric multiprocessing and preemptive multitasking[2]. The system offers a variety of system calls and inter-process communication methods available through the libapi application library.
A basic graphical user interface is provided by a compositing window management server. The server uses the Cairo graphics library and freetype for font rendering. A toolkit library (libwindow) is available for applications to create windows and react on component events, where the interface works similar to the Swing (Java) widget toolkit.
The implemented drivers support video output for the VMWare SVGA graphics controller, VESA VBE support on real hardware as well as PS/2 mouse and keyboard input. Due to basic POSIX compatibility, a set of open-source libraries like zlib are ported to the system. The documentation[3] describes details about the system.
Asynchronous handling
[edit]This principle of separation into asynchronous operations in the context of drivers and applications can be well observed in the implementation of the terminal application. In GUI mode, the terminal requests a shared memory buffer from the window server to perform all rendering. The window server in turn communicates with the respective video driver to set up graphics and provide the framebuffer. Mouse and keyboard input are again isolated in a separate PS/2 driver process that sends input through a pipe to the window server.
Reception
[edit]Within open-source and educational communities, Ghost OS has attracted attention[4] for its clean code structure and modular design. It is often compared to other educational OS projects like ToaruOS and SerenityOS.
The project has a derivate[5] called the MeetixOS project, an independent fork of the system with focus on modern C++20 support.
History
[edit]The Ghost operating system was started in 2015[2] by German software developer Max Schlüssel as a personal project for exploring microkernel design approaches.
It was first released publicly[1] on GitHub in 2015 under the GNU General Public License v3 (GPLv3), a license chosen to ensure the project and its derivatives remained open-source.
See also
[edit]- HelenOS - another operating system with a similar approach
- ToaruOS - a hobbyist operating system developed from scratch
- Sortix - a self-hosting modern POSIX operating system
- TempleOS - an esoteric lightweight operating system
References
[edit]- ^ a b c "maxdev1/ghost". GitHub. June 16, 2015.
- ^ a b Schlüssel, Max (February 2, 2025). "About Ghost". Retrieved February 2, 2025.
- ^ "Ghost system documentation". February 2, 2025. Retrieved February 2, 2025.
- ^ Termansen, Jonas (March 6, 2018). "Notable projects of OSDev community". Retrieved February 2, 2025.
- ^ Cicognani, Marco (August 5, 2021). "The MeetixOS project".
External links
[edit]- Repository on GitHub
- Official website
- MeetixOS, a fork of the project, see GitHub repository