Right now, someone, somewhere is developing the killer operating system feature of the future – a feature that will change computing and make us wonder how we lived without it.
However, the person responsible probably isn’t grafting away in the labs of Microsoft, Apple or Red Hat – he or she is more likely to be working in a bedroom or loft.
Big companies can grow reticent to change, slow to move and adopt new technologies. Features must be escalated through approval bodies, management and bean-counters. Hobbyist projects don’t have those commercial pressures and can experiment freely.
It might seem audacious to claim that the next Windows is cooking in some part-time coder’s house, but it’s nothing new. Microsoft’s OS empire started with the purchase of QDOS, which stood for ‘Quick and Dirty Operating System’. Apple didn’t create Mac OS X out of thin air, but took an open source kernel and some BSD code (grounded in academia) to get the foundations of its operating system working.
The most successful projects often begin life in ways we’d never expect, and it can take a while for their potential to be fully realised.
Into the future
We’ll look at the best alternative operating systems, with the potential to change the computing landscape over the next decade. There’s only one rule – no Microsoft, Apple or Linux.
While some of these new operating systems are still relatively early in development, the technology that they’re introducing could make its way into the next round of updates for the mainstream OSes we use. Helpfully, you can try these projects without having to repartition your hard drive thanks to the excellent (and free) PC virtualisation and emulation tool available from www.virtualbox.org.
These OSes are all supplied as disk images – usually CD ISOs – so you can install VirtualBox, grab the ISO and tell VirtualBox to boot from it to try it out. You can burn the ISO files to CD-Rs and boot them on your real PC if you want to see how they handle the bare metal, but remember that mid-development releases could contain bugs.
Fighting for microkernels
The GNU project started in 1984 to create a completely free software Unix OS. By the early ’90s it had many tools finished, but still no kernel. Linux arrived and was paired with GNU to form what we now call Linux (also known as GNU/Linux).
However, the GNU project has been developing a kernel called HURD. This is based on the Mach microkernel, as used in Mac OS X, and consists of servers running in their own address spaces.
There are services for hardware drivers, filesystems, authentication and more. These are more isolated than in a typical OS, so HURD should – in theory – be more reliable. It will also be easier to update and replace OS components without reboots.
Desktop Java to the extreme
Java’s heyday on the desktop is long gone, with web-based games and apps mostly delivered by Flash and HTML5. But there’s one project that aims to prove that Java can still hack it when it comes to desktop computing – JNode.
Apart from a very small assembly language core, the vast majority of the JNode operating system is written in Java. JNode’s goal is to run any Java application, although it’s currently only at version 0.2.8.
The interface is simple, there’s some decent documentation online, and progress is being made towards 0.3. Planned future features include lower memory consumption, wireless networking and more hardware acceleration for video.
Industrial strength OS
Back in the ’70s and ’80s, the main competitor to Unix on big-iron hardware was VMS. Famed for its stability, running on chunky fridge-like boxes called VAXes, it included advanced clustering and security features for its time, along with an automatic versioning file system.
Dave Cutler, one of the designers of the VMS operating system, went on to lead development of Windows NT, but OpenVMS stuck around and now runs on Itanium systems.
FreeVMS is striving to build on VMS’s feature set, although unlike many clone projects where developers can get easy access to the original OS, VMS gurus are hard to find. FreeVMS is currently only at version 0.4, but is still making solid progress.
Mini OS with console-like GUI
For a desktop operating system, we expect the usual assortment of window furniture, panels and launchers. DexOS is a small project that provides a more console-like approach.
This works in two ways: the graphical front-end is more like a video game launcher than a traditional OS, and programmers can easily access the bare metal for maximum performance. It’s an intriguing concept, and the take up of Android and iOS in the last couple of years has shown that traditional desktop computing metaphors are starting to look long in the tooth.
DexOS demonstrates what a bunch of part time hobbyist coders can achieve, without lots of funding or commercial backing.
Inferno has been doing the rounds for almost a decade, and in some respects it’s still way ahead of other OSes. Inferno is built to be a distributed OS – it’s designed to share resources across machines.
Using a protocol called Styx, systems running Inferno can share hardware and networking devices with one another seamlessly. For instance, an application on Inferno box A is able to access the hard drive of Inferno box B without knowing it’s actually on a remote machine.
Inferno applications are written in a language called Limbo, which is compiled down to code for a virtual machine called Dis, so they’re portable across the various architectures Inferno supports.
The fastest GUI OS in existence?
Operating systems used to be written in assembly language, but you’d be hard pressed to find much in the source tree of a modern OS. It’s true that programming in assembly is hard work, but it can often lead to results that a typical compiler can’t compete with.
KolibriOS, a fork of MenuetOS, is written entirely in assembly, and it shows – it’s tiny (4.9MB for the ISO) and ridiculously fast (booting in a couple of seconds). Despite this, it includes a web browser, mail client, games, desktop utilities, impressive demos and more, all running at light speed.
They’re nowhere near as feature-packed as their Windows counterparts, but they underline how much bloat and wastefulness we’re now used to.
Security before style
Security is OpenBSD’s mantra. Unlike other operating systems, which consider security a feature like performance or prettiness, the OpenBSD team won’t add any code unless it’s sure that it’s completely free of security holes.
It audits parts of the codebase for vulnerabilities, and have made modifications to the standard C libraries to prevent buffer overruns and other problems.
OpenBSD was the first non-research OS to integrate many features we now take for granted, including address space layout randomisation, which puts libraries and memory sections in random locations in RAM, so crackers can’t assume their location.
Something for Amiga lovers
You may have fond memories of the Amiga. The dazzling graphics and crisp sound (when PCs were faffing around with text mode and beeps), the super-fast multi-tasking, and the, er, lack of protected memory…
Well, forget that last one. It was one of the best-loved computers of all time, and it still has many fans today.
AROS – the Amiga Research Operating System – is intensely fast. Blisteringly so. It apes the Amiga design, both superficially and with its inner workings, and is designed to be source compatible with AmigaOS 3.1 (software written for the old Amiga OS should only need a recompile to work).
AROS has great potential as a light and fast OS for low-end netbooks and tablets.
Open source Windows clone that could save businesses a fortune
If you’ve dabbled in Linux, you may have heard of WINE, a compatibility layer that lets certain Windows programs run on Linux. Effectively, it intercepts calls to the Windows API, replacing them with Linux equivalents. It includes its own batch of DLLs, but it can use native Windows DLLs too for improved software compatibility.
WINE’s compatibility ranges from superb to terrible, with the focus on triple-A applications such as Microsoft Office and Photoshop. Generally, older applications work better, and anything that doesn’t poke around in the undocumented internals of Windows has a chance of running.
However, WINE mixes up the Windows and Unix approaches to operating systems, with the end result being a pretty ugly mess. It also can’t use Windows drivers.
ReactOS aims to fix all this. Instead of being a layer on top of another OS, ReactOS is a completely standalone project, bootable from an install or live CD. It does use WINE DLLs, but it has its own bootloader, kernel and other low-level facilities that should – in theory – make it compatible with Windows drivers.
ReactOS aims to be an open source, drop-in replacement for Windows. This gives it potential to radically shake up the market. ReactOS, a Windows clone, could one day be the next Windows – at least, for a good chunk of people. That sounds outrageous, but the vast majority of Windows boxes run a very small range of programs: IE or Firefox, MS Office and a couple of games, with a bit of Photoshop or Dreamweaver.
ReactOS doesn’t have to run 50,000 Windows applications adequately; it just needs to run the top 10 well. Imagine you’re a netbook manufacturer in a crowded market, and you want to get your prices down as low as possible. Instead of paying licenses to Microsoft for Windows, you could install ReactOS on your machines for free, put a list of ticks on the box saying ‘Runs Microsoft Office, Internet Explorer, Photoshop and World of Warcraft‘ and save a lot of money.
Or imagine that you’re a business with 5,000 Windows PCs that need upgrading because XP is end of life. Instead of buying 5,000 Windows 7 licenses, you could drop ReactOS any PCs that just run Office and Outlook.
These scenarios are still a while off: ReactOS is only at version 0.3.12, having been developed since the late ’90s, and there’s still a lot of work to be done. But compatibility is improving and you can see the status of your favourite programs at www.reactos.org/compat.
The lightning-fast BeOS lives on in the speedy, simple Haiku
And so we come to the number one project – the OS most likely to be the next big desktop hit. Why have we chosen Haiku for this slot?
Firstly, it intends to simply recreate an existing operating system, BeOS, but as open source. There’s no room for changes of direction, random new features or endless arguments on mailing lists about trivial design decisions.
Secondly, the developers are passionate about their work – they love BeOS. Thirdly, a great deal of attention has been paid to presentation, documentation and the other bits developers often ignore because they’d rather be hacking code.
If you were active in the PC world in the late 1990s, you may remember BeOS. Designed for the PowerPC, it was ported to the x86 PC architecture, offering a unique experience that was designed from the ground-up for desktop computing.
BeOS demos typically showed several spinning OpenGL teapots running flawlessly on screen as multiple MP3s played in the background. In the days of Windows 9x and Mac OS 8/9, BeOS’s stellar performance, simplicity and lack of historical baggage won it an army of hardcore fans.
Its file system supported attributes for storing metadata, with features making it rather like a database.
However, from a commercial perspective, BeOS suffered greatly. Be Inc, the OS’s makers, found it very hard to break into the Windows-dominated PC market. Ultimately, Be Inc sued Microsoft for allegedly preventing PC makers from selling BeOS machines; Microsoft never admitted guilt, but settled out of court for $23 million. However, by this point it was too late for BeOS to gain a serious foothold in the market.
Haiku, formerly known as OpenBeOS, began life in 2001 and is now capable of running many older BeOS programs (along with newer ports like Firefox). It retains the clean, modern architecture and desktop design of BeOS, but with added support for more recent hardware devices.
The developers are huge BeOS fans – they stuck by the OS in hard times and still champion its strengths today. They’ve also put a lot of effort into making the website look smart and ensuring the documentation is thorough.
Haiku offers a chance to bring speed, simplicity and enjoyment back to computing. It’s a system designed purely as a modern, graphical desktop operating system without carrying sacks of historical baggage.