Ghost (operating system)
Ghost is an open-source[1] hobbyist operating system and kernel. It has been under development since 2014[2] and is currently compatible with the x86 platform.
Developer | Max Schlüssel |
---|---|
Working state | Alpha |
Source model | Open source |
Initial release | 2014 |
Latest preview | 0.12.0 / October 9, 2022 |
Repository | |
Marketing target | Personal computer |
Platforms | IA-32 |
Kernel type | Micro kernel |
License | GPLv3 |
Official website | ghostkernel |
The system is based on a microkernel and features symmetric multi-processing and multitasking. Most of the kernel and system program are written in C++.
Design
The architectural concept is a micro-kernel design. Many of the functionalities that are usually integrated in the kernel in a monolithic or hybrid system are implemented as user-level applications. All system drivers are running as user-space processes. This approach attempts to improve stability and to avoid crashes due to faulty access or memory corruption. The system supports 32-bit ELF binary and shared object loading.
The kernel provides a system call API that is used for all inter-process communications and system commands. Driver processes access this interface to manage memory or request direct resource access. The window manager provides a messaging interface to other processes
Compatibility
The libc implementation is partially POSIX.1 compatible. The implementation incorporates the libm from the musl C library. The C++ standard library libstdc++ is supported. This was introduced to allow porting of third-party software, especially from the GNU environment, which heavily depend on standard C and POSIX functions.
See also
References
- "Sources, released on GitHub". GitHub. Retrieved 2016-07-28.
- "First public demo release of version 0.3.0, OSDev forums". forum.osdev.org. Retrieved 2016-07-28.