- Haiku (operating system)
Haiku Company / developer Haiku Project OS family BeOS Working state Alpha Source model Free and open source software Initial release OpenBeOS: 2002  Latest unstable release R1 Alpha 3 / June 20, 2011 Marketing target Personal computer Available language(s) Multilingual Supported platforms IA-32 Kernel type Hybrid License MIT License
Be Sample Code License
Official website haiku-os.org
Haiku is a free and open source operating system compatible with BeOS. Its development began in 2001, and the operating system became self-hosting in 2008, with the first alpha release in September 2009, the second in May 2010 and the third in June 2011.
Haiku began as the OpenBeOS project in 2001, the year that Be, Inc. was bought by Palm, Inc. and BeOS development was discontinued; the focus of the project was to support the BeOS user community by creating an open-source, backward-compatible replacement for BeOS. The first project by OpenBeOS was a community-created "stop-gap" update for BeOS 5.0.3 in 2002. In 2003, a non-profit organization (Haiku Inc.) was registered in Rochester, New York, to financially support development, and in 2004, after a notification of infringement upon Palm's trademark on the BeOS name was sent to OpenBeOS, the project was renamed as Haiku. However, development would only reach its first milestone in September 2009 with the release of Haiku R1/Alpha 1. This was followed in May 2010 by R1/Alpha 2, which contains more than 300 bug-fixes and improvements. R1/Alpha 3, released in June 2011, contains additional improvements and more than 950 bug-fixes.
Haiku is developed in C++ and provides an object-oriented API.
The modular design of BeOS allowed individual components of Haiku to initially be developed in teams in relative isolation, in many cases developing them as replacements for the BeOS components prior to the completion of other parts of the operating system. The original teams developing these components, including both servers and APIs (collectively known in Haiku as "kits"), included:
- App/Interface – develops the Interface, App and Support kits.
- BFS – develops the Be File System, which is mostly complete with the resulting OpenBFS.
- Game – develops 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 – develops the kernel, the core of the operating system.
- Media – develops the audio server and related APIs.
- MIDI – implements the MIDI protocol.
- Network – writes drivers for network devices and APIs relating to networking.
- OpenGL – develops OpenGL support.
- Preferences – recreates the preferences suite.
- Printing – works on the print servers and drivers for printers.
- Screen Saver – implements screen saver functionality.
- Storage – develops the storage kit and drivers for required filesystems.
- Translation – recreates the reading/writing/conversion modules for the different file formats.
A few kits have been deemed feature complete and the rest are in various stages of development.
The Haiku kernel is a modular hybrid kernel and a fork of NewOS, a modular kernel written by former Be Inc. engineer Travis Geiselbrecht. Like the rest of the system it is currently still under heavy development. Many features have been implemented, including a virtual file system (VFS) layer and rudimentary symmetric multiprocessing (SMP) support.
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 be compiled and run without modification on Haiku. This provides Haiku users with an instant library of applications to choose from (even programs whose developers are no longer in business or have no interest in updating them), in addition to allowing development of applications to resume from where they had been terminated following the demise of Be, Inc. This dedication to compatibility has its drawbacks though — requiring Haiku to use version 2.95 of the GCC compiler, released in 2001, which is now 10 years old. Switching to the newer version 4 of GCC breaks compatibility with BeOS software; therefore Haiku supports being built as a hybrid GCC4/GCC2 environment. This allows the system to run both GCC version 2 and version 4 binaries at the same time.
Note that this compatibility applies to x86 systems only. The PowerPC version of BeOS R5 will not be supported. As a consequence, the ARM, 68k and PPC ports of Haiku use only the GCC version 4 compiler.
Despite these attempts, compatibility with a number of system add-ons that use private APIs will not be implemented. These include additional filesystem drivers and media codec add-ons, although the only affected add-ons for BeOS R5 not easily re-implemented are Indeo 5 media decoders for which no specification exists.
Driver compatibility is incomplete, and unlikely to cover all kinds of BeOS drivers. 2D graphics drivers in general work exactly the same as on R5, as do network drivers. Moreover, Haiku offers a source-level FreeBSD network driver compatibility layer, which means that it can support any network hardware that will work on FreeBSD. Audio drivers using API versions prior to BeOS R5 are as-yet unsupported, and unlikely to be so; however, R5-era drivers work.
Low-level device drivers, namely for storage devices and SCSI adapters, will not be compatible. USB drivers for both the second- (BeOS 5) and third- (BeOS Dano) generation USB stacks will work, however.
In some other aspects, Haiku is already more advanced than BeOS. For example, the interface kit allows the use of a layout system to automatically place widgets in windows, while on BeOS the developer had to specify the exact position of each widget by hand. This allows for GUIs that will render correctly with any font size and makes localization of applications much easier, as a longer string in a translated language will make the widget grow, instead of being partly invisible if the widget size were fixed.
Initial planning for R2 has started through the "Glass Elevator" project (a reference to the children's novel Charlie and the Great Glass Elevator). The only detail confirmed so far is that it will switch to a current GCC release (namely v4.3.3).
A compatibility layer is planned that will allow applications developed for Haiku R1 to run on Haiku R2 and later. This was mentioned in a discussion on the Haiku mailing list by one of the lead developers, Axel Dörfler. Suggested new features include file indexing on par with Unix's Beagle, Google Desktop and Mac OS X's Spotlight, greater integration of scalable vector graphics into the desktop, proper support for multiple users, and additional kits.
- Be File System
- Be Sample Code License
- BeOS API
- Comparison of operating systems
- Haiku Vector Icon Format
- List of BeOS programs
- ^ BeGroovy: OpenBeOS First Release
- ^ Bruno Albuquerque (2008-04-01). "Haiku self-hosting.". http://www.freelists.org/archives/openbeos/04-2008/msg00001.html. Retrieved 2008-06-25.
- ^ Haiku Inc.. "What is Haiku?". http://www.haiku-os.org/about.
- ^ "Haiku Kernel & Drivers Team". Archived from the original on 2008-06-09. http://web.archive.org/web/20080609085932/http://www.haiku-os.org/about/teams/kernel_drivers. Retrieved 2008-07-17.
- ^ The GCC team (2007-07-25). "GCC Releases - GNU Project - Free Software Foundation (FSF)". Free Software Foundation. http://gcc.gnu.org/releases.html. Retrieved 2007-08-16.
- ^ Stephan Aßmus (2008-05-18). "Steady Progress towards Alpha 1". Haiku Inc.. http://www.haiku-os.org/news/2008-05-18/steady_progress_towards_alpha_1. Retrieved 2008-05-28.
- ^ Native GCC 4.3.3 for Haiku - Tales of updating the GCC4 port
- ^ R2 Ideas – Glass Elevator Summaries
Haiku Software Applications CoreActivityMonitor · Bootman · CDPlayer · CharacterMap · CodyCam · Deskbar · DeskCalc · DiskProbe · DiskUsage · DriveSetup · Expander · Icon-O-Matic · Installer · Magnify · Mail · MediaConverter · MediaPlayer · MidiPlayer · PackageInstaller · People · PoorMan · Screenshot · ShowImage · SoundRecorder · StyledEdit · Terminal · TextSearch · Tracker · TV BundledBePDF · Pe · Vision (IRC) · WebPositive Developer Tools BeOS Companies Computers Operating systems
Wikimedia Foundation. 2010.
Look at other dictionaries:
Operating system — Operating systems … Wikipedia
Operating System — Système d exploitation Pour les articles homonymes, voir SE et OS. système d exploitation et logiciels applicatifs Le … Wikipédia en Français
Operating system — Système d exploitation Pour les articles homonymes, voir SE et OS. système d exploitation et logiciels applicatifs Le … Wikipédia en Français
Darwin (operating system) — Darwin Company / developer Apple Inc. Programmed in C, C++ OS family Unix … Wikipedia
Disk Operating System — Pour les articles homonymes, voir Dos (homonymie). Un disk operating system ou DOS (littéralement système d exploitation de disque) est un système d exploitation relativement basique, constitué d interfaces destinés à simplifier l utilisation des … Wikipédia en Français
Disk operating system — Pour les articles homonymes, voir Dos (homonymie). Un disk operating system ou DOS (littéralement système d exploitation de disque) est un système d exploitation relativement basique, constitué d interfaces destinés à simplifier l utilisation des … Wikipédia en Français
Syllable Desktop (operating system) — Infobox OS name = Syllable caption = Syllable 0.5.3 developer = Kristian Van Der Vliet, Kaj de Vos, Rick Caudill, Arno Klenke, Henrik Isaksson family = Amiga OS like source model = Free software/open source latest release version = 0.6.5 latest… … Wikipedia
Object-oriented operating system — An object oriented operating system is an operating system which internally uses object oriented methodologies. An object oriented operating system is in contrast to an object oriented user interface or programming framework, which can be placed… … Wikipedia
The Operating System (Atari) — Le TOS (The Operating System) est le système d exploitation des ordinateurs de la famille des Atari ST. Il a été développé conjointement par Atari et Digital Research, lorsqu il s est avéré que CP/M était beaucoup trop lent. Il a souvent été… … Wikipédia en Français
Portable Operating System Interface for UniX — Das Portable Operating System Interface (POSIX [ˈpɒsɪks]) ist ein gemeinsam von der IEEE und der Open Group für Unix entwickeltes standardisiertes Application Programming Interface, das die Schnittstelle zwischen Applikation und dem… … Deutsch Wikipedia