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 OS is an orthogonally persistent managed code general-purpose operating system. It is based on a concept of persistent virtual memory, and executes bytecode in a virtual machine. It is one of a few OSes not based on classic concepts of Unix-like systems. Phantom is based on the principle that "Everything is an object", in contrast to the Unix-like approach of "Everything is a file".[1]
Overview
Phantom has been founded by Dmitry Zavalishin[1] and is being developed by mostly Russian programmers. It is free and open-source software (FOSS) released under a GNU Lesser General Public License (LGPL).
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.[2]
Global address space – 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.[2]
Persistence – Application code does not see OS restarts and could live forever—this does not use the concept of a file 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. The implementation creates snapshots continuously and transparently to the applications maintaining consistent internal state without pausing applications.[1]
Compatibility
Two ways to migrate code are offered:[2]
- 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 such as persistence 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 architecture and x86-64 (AMD64) has begun. Kernel operation has been demonstrated at the biggest Russian IT-conferences RIT 2011, ADD 2010,[3] CC 2010,[4] and 2009.
See also
References
- 1 2 3 Dziuba, Ted (3 February 2009). "Russian rides Phantom to OS immortality". The Register. Retrieved 27 April 2011.
The iPhone that never dies
- 1 2 3 4 "Прототип отечественной ОС Phantom на базе Genode будет готов до конца года". www.opennet.ru. 24 January 2022. Retrieved 9 November 2023.
- ↑ 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
Sources
- "Source codes of Phantom OS". Digital Zone. 2009. Retrieved 27 April 2011.
- "Phantom OS Internals book". 2019.
- "Phantom OS on OpenHUB". 2019.