Frequently asked questions

There was once a programmer who was attached to the court of the warlord of Wu. The warlord asked the programmer: "Which is easier to design: an accounting package or an operating system?"

"An operating system," replied the programmer.

The Tao of Programming, 3.3


Q1: What kind of OS is Moon?

It only exists in my mind yet, so I can't say anything final yet.

Q2: Will it be Unix-like?

Definitely not. There are already enough Unix clones.

Q3: When will you start writing it?

I'll design a language for it first.

Q4: I heard the OS will have no files, is that true?

Yes, instead data will be kept in processes in their own address space (like variables). I might implement a general purpose filesystem process, but it will in no way be internal to the OS. Users would be able to use their own filesystem processes if they desire, and new filesystem processes may be created any time.

Q5: If no files exist, how is data kept when the system is rebooted?

Processes will survive reboots. They will be paged to disk in the way they're paged to disk when the system runs out of main memory, and when the system comes up after a reboot the previous state of the processes will be restored.

Q6: How do you prevent data loss when the system crashes?

That's done the same way as an OS with a filesystem would prevent loss of data in filesystem buffers: Memory pages with modified data are written to disk regularly, so only modifications newer than the latest synchronization are lost. The OS will have a mechanism to recover a consistent state from the data on disk.

Q7: Are backups possible without files?

Yes, of course backups will be possible. The backup tool will collect all pages, no matter whether they're currently in main memory or paged to disk, and write them to the backup media.

Q8: So ram and disks will be treated in the same way?

Yes, disks will only be used for paging, everything will look like ram.

Q9: What about networking and remote filesystems?

Originally (years ago) the OS was planned for a non-networked machine. Networking will have to be done some way, but I don't know yet how.

Q10: What does the name "Moon" mean?

It's not an acronym, and it's not a pun on Sun Microsystems either. Moon really has no secret meaning, I just liked the word.

Q11: What about security?

Security is one of the points I want to emphasize. Moon will have mandatory access control built in from the very start. That might make it more difficult to use, but I consider it a must. I hope to keep the system usable by making the security module very configurable.

Q12: What is mandatory access control?

See the page on security in Moon.


Back to the main page.

Page created: Jun 30, 1997 - last update: Nov 26, 2002 - version 2.1
Jörg Czeranski (Impressum)