Phantom OS
Phantom OS is an operating system (OS) made by mostly Russian programmers (with help of some Uzbeks). It is based on a concept of persistent virtual memory, and uses a virtual machine, managed code, and bytecodes. It is one of a few OSes not based on classic concepts of Unix-like systems. Its primary goal is to achieve simplicity and effectiveness in both the operating system and application software at the same time. It is free and open-source software (FOSS) released under a GNU Lesser General Public License (LGPL).
Developer | Digital Zone |
---|---|
Written in | C, Phantom, Java |
OS family | RTOS |
Working state | Active |
Source model | FOSS |
Latest release | latest / October 17, 2019 |
Repository | github |
Available in | Russian, English |
Platforms | IA-32 |
Kernel type | Microkernel |
License | LGPL |
Official website | phantomos |
Phantom is based on the principle that "Everything is an object", in contrast to the Unix-like approach of "Everything is a file".
Basics
Managed code – Memory protection on object level, rather than process level; absence of pointer arithmetic in managed code avoids many problems that exist and occur in unmanaged code.
Global address space – Very effective and inexpensive inter-process communication (IPC). Single (flat) address space allows transfer of objects from one process (application) to another by transferring links to that object. Security is achieved via absence of pointer arithmetic and the inability of an application to get linked to an object other than by calling a public method.
Persistence – Application code does not see OS restarts and could live forever—this makes the concept of a file obsolete and any variable or data structure could be stored forever and at the same time be available directly through a pointer. Differently from hibernation that is done in other OSs, persistence lies in the very core principles of the Phantom OS core. It is done transparently for applications; in most cases it requires no reprogramming of an application. Persistence stays even if the computer crashes.
Compatibility
Two ways to migrate code are offered:
- Converter from Java virtual machine (JVM) bytecode; supposed to allow import of bytecode from Java and other programming languages that target the JVM.
- The Portable Operating System Interface (POSIX) subsystem allows porting application code from Unix and Linux, although important features of Phantom OS become unavailable.
Status
As of October 2019, the system exists in alpha version for x86 IA-32 processors. Porting to ARM architecture is underway (currently being tested, not yet ready for use) and porting to MIPS and x86-64 (AMD64) has begun. Kernel operation has been demonstrated at the biggest Russian IT-conferences RIT 2011, ADD 2010,[1] CC 2010,[2] and 2009.
The project is open for contributors to join.
Notes
- Dmitry Zavalishin reports on ADD 2010 Archived 2012-07-07 at archive.today
- Dmitry Zavalishin reports on Chaos Constructions’2010 (Saint-Petersburg, Russia) Archived 2012-03-23 at the Wayback Machine
References
- Dziuba, Ted (3 February 2009). "Russian rides Phantom to OS immortality". The Register. Retrieved 27 April 2011.
The iPhone that never dies
- "Source codes of Phantom OS". Digital Zone. 2009. Retrieved 27 April 2011.
- "Phantom OS Internals book". 2019.
- "Phantom OS on OpenHUB". 2019.