Linked by Thom Holwerda on Tue 3rd Feb 2009 13:34 UTC
OSNews, Generic OSes Creating a new operating system isn't an easy task. Even if you have dozens, hundreds of people, it may still take years. And even if you do get some code out there, chances are no one will really give a flying monkey butt, and your hard work will wither away in irrelevance. You really need something unique in order to stand out and be noticed, and Dmitry Zavalishin claims he has that something: his Phantom OS never dies.
Order by: Score:
by edmnc on Tue 3rd Feb 2009 14:22 UTC
Member since:
2006-02-21 but its in Russian

Reply Score: 1

RE: website
by Thom_Holwerda on Tue 3rd Feb 2009 14:23 UTC in reply to "website"
Thom_Holwerda Member since:

Heh I actually did learn the Cyrillic alphabet, but this goes a bit over my head ;) .

Reply Score: 1

RE[2]: website
by edmnc on Tue 3rd Feb 2009 14:36 UTC in reply to "RE: website"
edmnc Member since:

Although I can speak/understand russian reading takes way too long, but google translate does good enough job here. Interesting stuff.

Reply Score: 1

RE[2]: website
by Doc Pain on Tue 3rd Feb 2009 14:39 UTC in reply to "RE: website"
Doc Pain Member since:

Heh I actually did learn the Cyrillic alphabet, but this goes a bit over my head ;) .

When reading it (I actually did, the diactionary always at hand), I thought that my time in school wasn't all that bad (8 years of russian, primary foreign language). Except some IT specific termini technici I can still understand some parts of the text. Thanks for the pointer, had an interesting read! Operazionnaya sistema "Fantom", obshtshiye voprosui, O4EHb XOPOWO! :-)

Reply Score: 2

RE: website
by Bully on Tue 3rd Feb 2009 15:14 UTC in reply to "website"
Bully Member since:

but its in Russian" rel="nofollow">

aargh how do you make links!

Edited 2009-02-03 15:15 UTC

Reply Score: 2

Phantom: FAQ
by Untangible on Tue 3rd Feb 2009 16:29 UTC in reply to "website"
Untangible Member since:
This reminds me of Prevayler
by denisfalqueto on Tue 3rd Feb 2009 14:29 UTC
Member since:

This is a Java library to make objects persistent across jvm initializations.

It's an interesting idea, but there is something that bothers me: and if we need to keep big objects that wouldn't fit the physical memory? With files, we can use memory mapping to avoid loading them all in one take.

I think that that aproach tends to consume more memory than what should be really needed in the traditional model.

Reply Score: 1

v sadly they waste time
by GODhack on Tue 3rd Feb 2009 14:43 UTC
by _txf_ on Tue 3rd Feb 2009 14:53 UTC
Member since:

You can not compete with Windows, repeating it," Zavalishin says, "It is impossible to compete with Windows, creating a functionally weaker system, such as Linux"

I wonder what he means by this. Linux is repeating unix to a certain form. Plus, if he stands by his statement then he should include osx, which seems to do fine against windows (and could possibly do even better if it weren't imprisoned to specific hardware).

Reply Score: 4

Babelfish Translation
by randy7376 on Tue 3rd Feb 2009 15:07 UTC
Member since:

For those that want a rough translation (and I do mean rough!) of the web page edmnc mentions above, you can go to

and input the URL under "Translate a web page". Select the language you want to translate from to the language you want to read it in. Voila!

It's not perfect by any means, but helps those of us who know don't know any Russian.

Reply Score: 2

Very cool
by Nycran on Tue 3rd Feb 2009 15:07 UTC
Member since:

This is a fabulous idea. It'll be interesting to see how it holds up from a performance point of view. To those worrying about object size and RAM, pretty soon we'll have 32Gig ram chips, and I can imagine a server being decked out with 1TB of ram in the not too distant future (within 5 years).

Reply Score: 1

Two interesting answers in the FAQ
by wannabe geek on Tue 3rd Feb 2009 15:14 UTC
wannabe geek
Member since:

Q: Why are you against the development of the OS in the «open source», what are the main arguments?

A: We do not mind, we thought.Part of the system probably will be distributed in source code. Perhaps - the whole.


Q: But is not the operating system EROS thus, what are you telling it?

A: None. EROS - the traditional micronucleus OS. InterProcess it is realized via the kernel, which means low productivity IPC, the inability to work with the fine grained objects, etc.

(Google translation)

Reply Score: 2

matatk Member since:

I thought of EROS ( ) immediately and I'm glad you commented about this. As I recalled, the EROS team moved onto developing a different OS that did not include this feature (which I thought at the time was more than a little foolish, as computer hardware is going in a direction that would make persistence so much more practicable and useful in future). However, it seems they may have reconsidered -- .

The other thing I really like about Coyotos is that the team is aiming to construct the system in a provable way so that many security problems and bugs may be found before they become problems. The use of the capability security model ( ) also mitigates many common security problems.

It strikes me that, given the limited resources and mindshare for "really-alternative" OSs to garner, it would be a good idea for people working on such similar ones to team up. Competition can be good, of course, but they seem to agree on a lot so co-operation could be of more use -- at least until they disagree and decide to fork :-).

Anyway, it's great to read stuff on OSNews about such projects; I hope it raises the profile of this new OS and EROS/Coyotos too. I'm not sure I agree with the statement that Linux is "functionally weaker" than Windows -- maybe the Linux-based desktop could be argued to be, but there are many ways to view the situation -- however, I do think that this new way of doing things -- in fact any new way of doing things, could really bring life to the computing industry again and this particular way (coupled with capabilities) looks to be just the ticket for the ubiquitous and always-on computing world.

Reply Score: 3

wannabe geek Member since:

Yes, it's nice to see more projects going in this direction, at long last ;)

Kent Beck's famous quote comes to mind:

"I mean, source code in files ... How quaint! How seventies!"

It also reminds me of étoilé:

I think someone should explore the possibility of building an OS using the Clojure programming language. It's like a very elegant variant of Scheme built on top of Java. It pays lots of attention to concurrency and persistence.


Reply Score: 2

gustl Member since:

I'm not sure I agree with the statement that Linux is "functionally weaker" than Windows -- maybe the Linux-based desktop could be argued to be, but there are many ways to view the situation

Well, I definitely disagree with the statement that "Linux is functionally weaker than Windows". Just think about the dirty hack that UAC is.
Think about all the filesystems linux supports, what has Windows in that area? Yes - ext2.
Think of all the drivers in Linux, Windows is heavily dependent on third-party drivers.

Same goes for the Desktop. Both Gnome and KDE are by far more functional than every Windows desktop which ever existed. Just think about multiple virtual desktops and what Konqueror can do and you are already lightyears away from what Windows offers.

Reply Score: 3

Constant disk activity
by mightshade on Tue 3rd Feb 2009 15:43 UTC
Member since:

Zavalishin claims, however, that if you design your operating system and programming model around this concept, performance stops being an issue.

While I'm not too confident of that (just think about SSDs), I'm not an expert so I don't really know. What really bothers me is that the constant disk activity will drain a lot of power. This might be a big issue for Phantom OS running on laptops.

Reply Score: 2

Comment by stooovie
by stooovie on Tue 3rd Feb 2009 16:26 UTC
Member since:

Be that as it may, but it`s finally something fresh!

Reply Score: 1

RE: Comment by stooovie
by smilie on Tue 3rd Feb 2009 16:47 UTC in reply to "Comment by stooovie"
smilie Member since:

Not really, a friend of mine had worked on a system that saved the executing image to disk (and even to tape archive if it wasn't used recently enough) back in the 1980s.

Of course that was a mainframe and all the current generation seems to have forgotten about what was done during the 1960s through 1980s. There is plenty of really nifty ideas from those times that are waiting to be reinvented.

Reply Score: 2

Nice idea
by joshv on Tue 3rd Feb 2009 17:02 UTC
Member since:

I've always thought that abstracting away the distinction between working memory and long term storage is really the next step in OS development. Just allow a program to create pointers to objects and let the OS figure out what to do with the actual data. Documents are then just objects that get paged out to disk. It appears this russian dev goes a bit further in ensuring that volatile state is almost continually backed up to disk - which has the neat side effect of allowing you to pull the plug, plug it back in, and resume right where you left off.

You still have the issue of creating representations of objects that are suitable for transmission (RPC, sharing data with other programs, email, etc...)

Another problem is that it's actually pretty hard to maintain an internal object graph, without corruption, for what is effectively an infinite run time. Even very well written programs sometimes attain an inconsistent internal state whose only solution is to restart the program - resetting that internal state. In "Phantom" this route would not be open to the programmer - purge your state and I am assuming you'd lose all of your documents. So your program either has to be bullet proof (unlikely) or operate in such a way that you can selectively purge state in the event of a malfunction.

Reply Score: 2

RE: Nice idea
by Morph on Tue 3rd Feb 2009 18:18 UTC in reply to "Nice idea"
Morph Member since:

I think the second-last question from the Russian FAQ tries to address your last point... the machine translation's a bit funky, but here's my understanding of it (thank you

Q: If a program is badly written and "guzzles" memory, [with previous OSs] it was possible to kill and restart the program. What about in Phantom?

A: It is still possible [with Phantom]. Actually, it is necessary to distinguish the work of the program and the state of the program. The phantom stores the program's state, making its "manual" preservation unnecessary, but it does not oblige the program to work continuously. That is, the running process/thread.

Seems like they're saying that a program can be terminated and restarted. I guess its objects and data would be garbage-collected by the OS after the app quits. Thus any data that wasn't shared with another program would be lost.
Seems to me that at worst, it's no worse than existing OS's where you lose any open data when an app crashes; at best, any data that is shared with another app (eg the file manager or equivalent) will be preserved as it was at the time when the app crashed, and the user would need to manually open it again.

Reply Score: 1

RE[2]: Nice idea
by joshv on Tue 3rd Feb 2009 20:15 UTC in reply to "RE: Nice idea"
joshv Member since:

I guess what I meant, is that the run life of the program, from its perspective, is effectively infinite. Yes, I know that any particular thread running through the program's code must have a finite life, but you are presenting the illusion, of infinite run time to the program logic - everything it does, persists for all time.

This also present an interesting question - what do you do when you upgrade a program's code? Will it be compatible with the stored state for that program?

Reply Score: 2

RE: Nice idea
by bnolsen on Tue 3rd Feb 2009 18:57 UTC in reply to "Nice idea"
bnolsen Member since:

Also not noted here is that any fragmentation in memory will be transferred directly to storage. While this is fine for solid state, it won't help much with current spinning disk technology.

In some ways I would think the comparison between Relational and Object Oriented databases apply, with traditional file systems requiring an intermediate translation which then allows for optimization of storage during translation, and this filesystem which removes the translation layer but then has issues with schema morphing resulting from system upgrade, recovery from failures and interchangeability.

Reply Score: 2

lock lock
by renhoek on Tue 3rd Feb 2009 18:11 UTC
Member since:

can anybody find out how he resolved the issue with locking and race conditions? if your entire os is this build the oo way there must be a lot of locking going around.

but i really like the idea of a new concept like this.

Reply Score: 2

persistent single address space OS
by kamil_chatrnuch on Tue 3rd Feb 2009 20:31 UTC
Member since:


Reply Score: 2

Not radical enough, ...
by Sophotect on Tue 3rd Feb 2009 21:20 UTC
Member since:

but some good ideas as to reimplemting something badly makes no sense in the long term. On the other hand, i don't see this as very different from f.e. this:

Reply Score: 1

Sounds good in Theory
by Anon on Wed 4th Feb 2009 00:07 UTC
Member since:

I don't know how it would work in the real world.

My concerns are that if the O/S gets into an inconsistent state (which it will), then this will persist.

Even worse if your Phantom OS box gets malwared, and that's now persistent!

Reply Score: 3

Nobody needs files in Phantom
by ValiantSoul on Wed 4th Feb 2009 01:35 UTC
Member since:

"Nobody needs files in Phantom"

So I am to keep all of my AACs/MP3s in these persisted objects? What happens when I want to switch from one player to another? Likewise with text documents, what if I want to switch from Phantom Office (or whatever) to OpenOffice? Can I steal someone else's objects? If so, I forsee a major security issue, if not a major inconvenience issue.

Also, how am I to backup these persisted objects? What if I want to reinstall, or transfer a document to another computer?

I have my concerns/doughts about this OS.

Reply Score: 1

Found on "register" Uk site
by vbond on Wed 4th Feb 2009 02:31 UTC
Member since:

I found this about The Phantom Os

Edited 2009-02-04 02:43 UTC

Reply Score: 1

Comment by bnolsen
by bnolsen on Wed 4th Feb 2009 02:54 UTC
Member since:

The more I think about it, the worse this idea seems.

A true filesystem abstraction layer is a "cross platform" way to store data. Upgrade your OS, and as long as the filesystem implementation is the same, you can get to your data.

Unless I am wrong this implementation will end up exporting in memory kernel data structures out to disk.

People complain enough about the linux ABI breaking drivers. In this case a kerne ABI change breaks your whole system.......UNLESS either the whole drive is "schema evolved" to match the new kernel OR a "translation layer" is implemented to load and run the old system.

Unless they implement the kernel internals correctly right off the bat (hehe) I anticipate it will crush itself under it's own weight as development continues.

Reply Score: 3

RE: Comment by bnolsen
by Tjebbe on Wed 4th Feb 2009 08:29 UTC in reply to "Comment by bnolsen"
Tjebbe Member since:

People complain enough about the linux ABI breaking drivers. In this case a kerne ABI change breaks your whole system.......UNLESS either the whole drive is "schema evolved" to match the new kernel OR a "translation layer" is implemented to load and run the old system.

Optionally, they could try to add some extra 'data-persistency' abstraction, where processes can store their data (as opposed to the functionality of the process/program itself) for transfer, remote retrieval or reverting changes (imagining not being able to revert the crap your colleague added to your important document yesterday).

Ideally, they could come up with something completely new, like a hierarchical database with some interesting meta-information such as date of first creation, date of last change, and some simple ownership rules based on role-based authorization.

Reply Score: 1

It is called orthogonal persistance
by abstraction on Wed 4th Feb 2009 08:15 UTC
Member since:

And it is not a very unique idea. It was used for the unununium os for instance.

Reply Score: 1

vivainio Member since:

And it is not a very unique idea. It was used for the unununium os for instance.

Thank you for reminding me of the name "unununium", led to interesting forensic operation on the net.

This also exhibits a scenario where wikipedia sucks; there is no page for uuu, even if it clearly existed and tested some interesting ideas:

Reply Score: 1

"dozens, hundreds of people"
by Googol on Wed 4th Feb 2009 22:47 UTC
Member since:

That is why I never believed that Zeta would go anywhere - it simply isn't something 1-3 people could bang together in a timely fashion, not to mention easily.

They should have known that - what were they thinking?

Reply Score: 2

by MaritimeSource on Fri 6th Feb 2009 14:48 UTC
Member since:

If one brilliant Russian gave us nginx, surely a group of them can do this os! GO Russia!

Reply Score: 1