Kalpana Kalpana (Editor)

Phantom OS

Updated on
Edit
Like
Comment
Share on FacebookTweet on TwitterShare on LinkedInShare on Reddit
Developer
  
Digital Zone

Working state
  
Active

Available in
  
C/Phantom/Java

OS family
  
RTOS

Source model
  
FOSS

Kernel type
  
Real Time Microkernel

Phantom OS

Phantom OS is an operating system mostly made by Russian programmers. Phantom OS is based on a concept of persistent virtual memory, and is managed-code oriented. Phantom OS is one of a few OSes that are not based on classical concepts of Unix-like systems. Its primary goal is to achieve simplicity and effectiveness in both the operating system and applications at the same time.

Contents

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 on process level; absence of pointer arithmetic in managed code avoids many problems that are present in unmanaged code.

Global address space: Very effective and inexpensive IPC. Single (flat) address space allows transfer of objects from one process (application) to another been done by transferring links to that object. Security is achieved through the 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 does not require re-programming of an application. Persistence stays even if the computer crashes.

Compatibility

Two ways of code migration are offered:

  • Converter from JVM bytecode — will supposedly allow import of Java bytecode and other programming languages targeting Java virtual machine.
  • POSIX-subsystem allows port of application code from Unix/Linux — although important features of Phantom OS will not be available.
  • Status

    Currently the system exists in alpha version for ia32 processors. Port to ARM architecture is underway (currently being tested, not yet ready for use) and port to MIPS and amd64 has been started. Kernel operation has been demonstrated at the biggest Russian IT-conferences RIT 2011, ADD 2010, CC 2010, and 2009.

    The project is open for contributors to join.

    References

    Phantom OS Wikipedia