Interesting Operating System Projects

This page documents some attempts at creating a better operating system, perhaps outside of the Unix/Windows world.

This document is a work in progress. Feel free to get in touch with more suggestions.

IBM Mainframe Operating Systems

I know nearly nothing about these, apart from the fact that they're very much alive. z/TPF, for example, is a system for high-throughput transaction processing:

...it is more than just a transaction processor. z/TPF is an operating system, transaction processor and a unique database, all designed to work together as one system. The transaction processor and operating system are specifically designed for high-volume transactions in a real-time environment.

It must have been great in the 70s to be able to design an entire computing platform to serve the needs of a single industry (airlines).

Oberon

Oberon is an attempt to re-create an user-interactive operating system that was slim and effective. Rather than piling a user interface on top of Unix, Niklaus Wirth and Jürg Gutknecht took two years of their weekends and evenings to develop it. In the process, they created a new programming language (Oberon), its compiler and the full OS stack. That was the mid-80s. You can run the system today, but I don't know if there is a great deal of serious work being done to extend it.

The guiding principle of Oberon is simplicity. It's Ockham's razor applied to computing. The system was explicitly designed to enable a single person to understand the whole thing.

I find its most interesting architectural decision to be the project's approach to concurrency. There is effectively only a single process. In a sense, there are no threads. That decision was made to simplify the programming model, the UI and some parts of the OS itself, such as the scheduler. [todo: I must re-read how memory is isolated between applications]

Another amazing feature is that there is a chapter of the manual that describes how to implement Oberon on a n FPGA. That includes Verilog source code.

The project never really expanded outside of ETH. I think that this was due to its opionated design choices. Almost by definition, requiring people to learn a new programming language, a new programming model and a new operating system including a novel GUI system means that there are significant barriers to adoption.

Tunes

Tunes is (was?) a operating system project that attempted to fix computing. I don't think it was ever finished, but some individuals have invested significant effort on the project, creating programming languages (Retro (which itself it a FORTH operating sytem?), Slate, ..) and other sub-projects (Max, ..) to support the overall goal.

What was the overall goal? The best

What is TUNES?

To put it simply, Tunes is the Ultimate Operating System. But in a way, Tunes is much more than an OS, and also much less (sorry for the annoying use of rhetoric). It uses (or rather, will use - or rather, would use) notions from theoretical computer science to correct some of the failures and shortcomings of present-day operating systems.

What is wrong with present-day operating systems?

Essentially, that they are written, and force programmers to write, at such a terribly low level. The C programming language has imposed itself as a de facto standard for OS development, but it is little more than a portable assembler, and there is no reason why the operating system, apart from the device drivers, should be written in a low-level language. Besides, the C programming language has other disadvantages, such as ill-defined semantics, which prevent (or make more difficult) the use of such techniques from theoretical computer science as program proving or metaprogramming, from which OS design would stand to gain much.

When reading through some of the Tunes wiki and documentation, it becomes clear that there are deep philosophical roots to the whole project. It's perhaps a shame that the project members were not able to gather the support to put that very strong belief into practice.

I enjoyed reading through some of the project wind-up notes on the mailing list and am glad to see that it has inspired many offshoot projects.

Inferno

http://www.vitanuova.com/inferno/index.html

Plan9 successor. Appears to still be alive, with a vendor behind it.

Loper

Currently available computing systems are brain-damaged in such wholesale, unmitigable ways that I am driven back to the project again and again, despite the oceanic size and nearly certain futility of the task.

Loper is a single-person effort to engineer a LISP machine-esque system from scratch. Extremely ambitious. Hopefully finish-able.

BeOS

An integrated operating system.

[need to learn more]

HAIKU

https://www.haiku-os.org

HAIKU is an open source operating system currently in development. Specifically targeting personal computing, Haiku is a fast, efficient, simple to use, easy to learn, and yet very powerful system for computer users of all levels. Additionally, Haiku offers something over other open source platforms which is quite unique: The project consists of a single team writing everything from the kernel, drivers, userland services, tool kit, and graphics stack to the included desktop applications and preflets. While numerous open source projects are utilized in Haiku, they are integrated seamlessly.

MorphOS

http://www.morphos-team.net/intro

MorphOS is a lightweight, highly efficient and flexible desktop operating system. It includes primarily proprietary as well as open - source components. Its many features range from a modern exceptionally customizable graphical user interface, which can utilize 3D hardware acceleration, to a high-performance Just-in-Time compiler that emulates the 68k family of processors and thereby allows to transparently execute legacy applications developed for the Commodore Ax00 series of computers

AmigaOS

http://www.amigaos.net/

Amiga is still alive? Apparently you can actually buy computers with it pre-installed.

AmigaOS was born in 1985 and delivered what contemporary personal computer operating systems could only dream of. As the first "multimedia" operating system, it was trivial for AmigaOS computers to display animations while playing music and reading data from disks. Such multimedia and multitasking finesse drew many people to this system. Some of them are famous: Andy Warhol, Sir Arthur C. Clarke, NASA, Hollywood and the TV broadcasting industry, and many others that thought only Amiga makes it possible.

Today many people still think AmigaOS has something special that makes it more interesting and rewarding than other systems. This system allows the user to control the computer, not the other way around. It is a system you fully understand that is easier and more flexible to use. In other words, AmigaOS is more fun.

http://wiki.amigaos.net/wiki/UserDoc:Main

Redox OS

https://redox-os.org/docs/

Uses URLs (URIs?) as the primary abstraction, rather than the file. Written in Rust.

Harvey

https://harvey-os.org/about/

Distributed operating sytem. Easy cross-compilation story from Linux. Built in Go & C.