Haiku (operating system)

This is an old revision of this page, as edited by Lady Serena (talk | contribs) at 19:05, 2 February 2006 (History). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Template:Future product

Haiku
The Haiku Project's Logo
The Haiku desktop, running Deskbar
DeveloperHaiku Inc.
OS familyBeOS
Working statePre-Alpha
Source modelOpen source
Latest releaseN/A / N/A
Repository
Kernel typeMicrokernel
LicenseMIT License
Official websitehttp://www.haiku-os.org/

Haiku, formerly known as OpenBeOS, is an open source project dedicated to the re-creation and continuation of the Be Operating System.

History

The development project was begun as "OpenBeOS" in 2001 following Be's purchase by Palm, Inc. and the subsequent discontinuation of BeOS. This move left BeOS users without a viable upgrade path and BeOS developers with programs stranded on an unsupported platform. Although one of several projects with the aim of continuing the operating system, OpenBeOS differed from Cosmoe and Blue Eyed OS in that rather than take an existing Linux or BSD kernel and reimplement Be's APIs on top of it (which would break binary compatibility with BeOS R5), the project planned an almost complete rewrite of the system, maintaining both binary and source compatibility. This should allow any existing BeOS R5 programs to run on the new system without being recompiled.

In 2004 a new project name was chosen in order to avoid infringing on Palm's trademarks. The new name, decided by project leaders and influenced by an official community vote, was revealed at that year's WalterCon. The name "Haiku" intends to reflect the elegance and simplicity that attracted many to the BeOS platform, but is also a direct reference to the distinctive haiku error messages found in NetPositive, the default BeOS web browser, and many other Be applications.

The project is controlled by Haiku Incorporated, a New York based not-for-profit corporation.

Development

BeOS's modular design has enabled teams of volunteer programmers to work independently on replacements for individual servers and APIs (collectively known in Haiku as "kits"). These teams include "App/Interface" (under which the Interface, App and Support kits fall), "BFS" (aimed at recreating the BFS filesystem - this task is mostly complete with the resulting OpenBFS adopted not just by Haiku, but also SkyOS), "Game" (developing the Game Kit and its APIs), "Input Server" (the server that handles input devices, such as keyboards and mice and how they communicate with other parts of the system), "Kernel" (working on the kernel, the core of the operating system), "Media" (developing the audio server and related APIs), "MIDI" (implementing the MIDI audio standard), "Network" (in charge of writing drivers for network devices and APIs relating to networking), "Preferences" (recreating BeOS's preferences suite), "Printing" (working on the print servers and drivers for printers), "Screen Saver" (implementing screen saver functionality) and "Storage" (developing the storage server and drivers for required filesystems). A few kits have been deemed feature complete and the remainder are currently in various stages of development.

Haiku's kernel is a fork of NewOS, a microkernel written by former Be engineer Travis Geiselbrecht and is currently under heavy development. Many features have been implemented, including a VFS layer and rudimentary SMP support.

A number of major milestones were achieved in a six week period during March to April 2005, such as the first graphical applications to run on Haiku itself (running with full 2D acceleration), and the first use of a web browser on Haiku (Links). Both of these were achieved without using any code or binaries belonging to Be, Inc., including the drivers used for the graphics and network card in the original examples. Another major milestone was reached in July 2005, with the system now capable of running the BeOS desktop shell, Tracker.

In October 2005, Axel Dörfler, one of the most prolific Haiku developers, became the first full-time paid Haiku developer, working via funds donated by the community. His initial work has been on CD booting, SMP and other kernel work. He maintains a blog describing his progress at http://axeld.blogspot.com

Compatibility with BeOS

Haiku aims to be compatible with BeOS at both the source and binary level, allowing software written and compiled for BeOS to compile and run without modification on Haiku. This would provide Haiku users with an instant library of applications to choose from (even programs whose developers were no longer in business or had no interest in updating them), in addition to allowing development of other applications to resume from where they had been terminated following the demise of Be, Inc. This dedication to compatibility also has its drawbacks though, with Haiku stuck using version 2.95 of the compiler GCC, which as of 2005, is essentially over 6 years old (although there have been minor point releases in the interval). Another disadvantage of maintaining compatibility with BeOS 5.x is that strict adherence to Be's original APIs and design is required, to the point where some of the OS's bugs have to be recreated rather than fixed. The second major release of Haiku, to be known as "R2", will break backwards compatibility.

Despite these attempts, compatibility with a number of system add-ons which use private APIs will not be implemented. These include additional filesystem drivers and media codec addons, although the only affected addons for BeOS R5 not easily re-implemented are Indeo 5 media decoders for which no specification exists.

See also