Haiku (Betriebssystem)
| Haiku | |
|---|---|
| Haiku-Logo | |
| Haiku R1 Beta 2 mit Deskbar (oben rechts), Systeminformationen (rechts), Dateimanager, Desktopsymbolen etc. | |
| Entwickler | Haiku, Inc. |
| Lizenz(en) | MIT-Lizenz |
| Erstveröff. | (im Beta-Stadium) |
| Akt. Version | — |
| Akt. Vorabversion | R1 Beta 5 (13. September 2024) |
| Kernel | auf NewOS basierender Hybridkernel |
| Abstammung | BeOS → Haiku |
| Architektur(en) | IA-32, x86-64; inoffiziell: Arm; historisch: 68k, PowerPC |
| Kompatibilität | BeOS 5.0 (nur IA-32) |
| Sprache(n) | Deutsch, Englisch u. a. |
| Sonstiges | weitgehend originalgetreuer Nachbau von BeOS 5.0 mit einigen funktionellen Erweiterungen |
| www.haiku-os.org | |
Haiku, ehemals OpenBeOS, ist ein Betriebssystem-Projekt, das in Anlehnung an BeOS als dazu binärkompatibles Open-Source-System nachprogrammiert und weiterentwickelt wurde. Das Haiku-Projekt wird von der gemeinnützigen Haiku, Inc. mit Sitz in Rochester im US-Bundesstaat New York getragen.
Haiku baut nicht auf originärem BeOS-Quellcode auf, sondern wird vollständig neu geschrieben. Der Kernel beispielsweise basiert auf NewOS,<ref name="NOS">NewOS Operating System. Abgerufen am 17. November 2018.</ref> einer Neuentwicklung des ehemaligen BeOS-Kernel-Entwicklers Travis Geiselbrecht, der später Zircon, den Kernel von Google Fuchsia, entwickelte. Bei der Entwicklung wird auch auf bestehenden freien Code aus BSD- und Linux-Projekten zurückgegriffen. Weite Teile des ursprünglichen BeOS sind bereits implementiert und lauffähig.
Die Haiku-Entwickler geben keinen Termin für eine mögliche Veröffentlichung der ersten offiziellen Version an. Im eigenen Blog informieren die Entwickler im {{Modul:Vorlage:lang}} Modul:Multilingual:153: attempt to index field 'data' (a nil value) (dt. monatlicher Haiku-Aktivitätsbericht) über erreichte Neuerungen.
Zwischenzeitlich sind vier offizielle Alpha-Versionen und fünf Beta-Versionen erschienen. Weitere Vorabversionen zum Testen des Betriebssystems stehen in Form von inoffiziellen Festplatten-Images zur Verfügung, den sogenannten {{Modul:Vorlage:lang}} Modul:Multilingual:153: attempt to index field 'data' (a nil value), die auf eine Partition kopierbar oder mit Emulatoren bzw. Virtualisierungslösungen wie QEMU oder VMware lauffähig sind.
Seit 2013 ist ein Paketverwaltungssystem in Haiku integriert, sodass ein installiertes System darüber aktualisiert werden kann; bis dato musste das System stets vollständig neu installiert werden.
Im Rahmen des Google Summer of Code 2017 wurde für Haiku 3D-Hardwarebeschleunigung und Unterstützung für die Programmiersprache Swift entwickelt. Erstmals Teil des jährlichen Programmierstipendiums war Haiku 2007. 2018 wurde die Office-Suite LibreOffice portiert.<ref>Haiku monthly activity report – 05/2018 (ft. LibreOffice!). 6. Juni 2018, abgerufen am 8. Juni 2020 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).</ref>
Ziel
Ziel des Projekts ist es zunächst, die letzte veröffentlichte Version von BeOS vollständig nachzubauen und sie dann nach und nach zu verbessern. Dabei wird besonders auf Binär- und Quelltextkompatibilität zu BeOS geachtet, damit sowohl alte BeOS-Programme unverändert ausgeführt als auch neue Programme in gleicher Weise wie unter BeOS erstellt werden können.
Bei den nunmehr eingeführten x64- und Arm-Varianten entfällt der Anspruch an BeOS-Binärkompatibilität, die Quellcodekompatibilität besteht bei diesen Architekturen aber weiter.
Technik
Haiku ist in C++ geschrieben und stellt eine objektorientierte Programmierschnittstelle (API) bereit.
Das modulare Design<ref>Vorlage:Cite book/Name: [Internetquelle: archiv-url ungültig Haiku: BeOS for the 21st Century.] , archiviert vom Vorlage:IconExternal (nicht mehr online verfügbar) am Vorlage:Cite book/URL; abgerufen am 29. September 2015.Vorlage:Cite book/URLVorlage:Cite book/MeldungVorlage:Cite book/Meldung2Vorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/Meldung</ref> des BeOS macht es möglich, dass Systemkomponenten für Haiku in beinahe voneinander unabhängigen Teams entwickelt werden können. Der Nachbau der BeOS-Komponenten als freie Software hat Vorrang vor der Neuentwicklung anderer Teile des Systems. Die ursprünglichen BeOS-Teams, die entsprechende Komponenten einschließlich Servern und Schnittstellen entwickelten (zusammen in Haiku als „Kits“ bezeichnet), umfassten:
- App/Interface – entwickelt Interface Kit, Application Kit sowie das Support Kit.
- BFS – entwickelt das Be File System, das mit OpenBFS nahezu vollständig implementiert ist.
- Game – entwickelt das Game Kit.
- Input Server – entwickelt den Server, der Eingabegeräte (Tastatur, Maus etc.) und deren Kommunikation mit anderen Systembereichen handhabt.
- Kernel – entwickelt den Kernel, das Kernstück des Betriebssystems.
- Media – entwickelt den Audioserver und entsprechende APIs.
- MIDI – implementiert das MIDI-Protokoll.
- Network – schreibt Treiber für Netzwerkadapter und Netzwerk-relevante APIs.
- OpenGL – entwickelt die OpenGL-Unterstützung.
- Preferences – setzt die Möglichkeiten, Einstellungen am System vorzunehmen neu um.
- Printing – arbeitet am Drucksystem sowie Druckertreibern.
- Screen Saver – setzt die Bildschirmschonerfunktion um.
- Storage – entwickelt das Storage Kit und Treiber für benötigte Dateisysteme.
- DataTranslations – entwickelt Module zum Lesen/Schreiben/Konvertieren unterschiedlicher Dateiformate und Datentypen.
Einige Kits werden als vollständig implementiert ({{Modul:Vorlage:lang}} Modul:Multilingual:153: attempt to index field 'data' (a nil value)) angesehen, die übrigen sind in unterschiedlichen Entwicklungsphasen.
Der Haiku-Kernel ist ein modularer Hybridkernel und ein Fork von NewOS,<ref>Vorlage:Cite book/Name: [Internetquelle: archiv-url ungültig Haiku Kernel & Drivers Team.] , archiviert vom Vorlage:IconExternal (nicht mehr online verfügbar) am Vorlage:Cite book/URL; abgerufen am 17. Juli 2008.Vorlage:Cite book/URLVorlage:Cite book/MeldungVorlage:Cite book/Meldung2Vorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/Meldung</ref> ein vom früheren Be-Entwickler Travis Geiselbrecht geschriebener modularer Kernel. Viele Fähigkeiten wurden bereits implementiert, einschließlich eines virtuellen Dateisystems (VFS-Layer) und rudimentärer Unterstützung symmetrischer Multiprozessorsysteme (SMP).
Paketverwaltung
Seit September 2013 hat Haiku ein Paketverwaltungssystem, Haiku Depot, durch das es möglich wurde, Software in komprimierte, Abhängigkeiten auflösende Pakete ({{Modul:Vorlage:lang}} Modul:Multilingual:153: attempt to index field 'data' (a nil value)) zu kompilieren.<ref>Vorlage:Cite book/Name: [Internetquelle: archiv-url ungültig Package Management now live.] , archiviert vom Vorlage:IconExternal (nicht mehr online verfügbar) am Vorlage:Cite book/URL; abgerufen am 4. November 2013.Vorlage:Cite book/URLVorlage:Cite book/MeldungVorlage:Cite book/Meldung2Vorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/Meldung</ref> Zum Aktivieren von Paketen können selbige mittels pkgman aus Online-Paketquellen ({{Modul:Vorlage:lang}} Modul:Multilingual:153: attempt to index field 'data' (a nil value)) installiert oder manuell in ein spezielles packages-Verzeichnis kopiert werden. Die Paketverwaltung von Haiku bindet aktivierte Pakete über ein schreibgeschütztes Systemverzeichnis ein. Das Paketverwaltungssystem löst Abhängigkeiten mittels libsolv vom openSUSE-Projekt auf.<ref>Vorlage:Cite book/Name: [Internetquelle: archiv-url ungültig The libsolv Open Source Project on Open Hub.] In: www.openhub.net. , archiviert vom Vorlage:IconExternal (nicht mehr online verfügbar) am Vorlage:Cite book/URL; abgerufen am 29. September 2015.Vorlage:Cite book/URLVorlage:Cite book/MeldungVorlage:Cite book/Meldung2Vorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/Meldung</ref>
Skriptfehler: Ein solches Modul „Vorlage:Anker“ ist nicht vorhanden. Systemvoraussetzungen (R1/Beta 4)
Mindestvoraussetzungen:<ref name=":0">R1/beta4 – Release Notes. Abgerufen am 10. März 2023 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).</ref>
- Ein 32-Bit-Prozessor der x86-Architektur („IA-32“), z. B. Pentium II oder Athlon
- Arbeitsspeicher: mindestens 384 MB
- Monitor: ab einer Auflösung von 800 × 600
- Festspeicher: 3 GB verfügbar
Empfohlen:<ref name=":0" />
- Ein 64-Bit-x86-Prozessor („x64“), z. B. Core i3 oder Phenom II
- Arbeitsspeicher: mindestens 2 GB
- Monitor: ab einer Auflösung von 1366 × 768
- Festspeicher: 16 GB verfügbar
Geschichte des Namens
Direkt nach der Bekanntgabe des Kaufs von Be durch Palm am 18. August 2001 wurde das OpenBeOS-Projekt gegründet, indem eine Mailingliste mit diesem Namen eingerichtet wurde. Dies blieb zunächst auch der Name, als das Projekt konkretere Züge annahm, obwohl die Benutzung des eingetragenen Markenzeichens „BeOS“ als Teil des Projektnamens für rechtliche Unsicherheit sorgte.
Am 6. Mai 2002 wurde ein Namensfindungsprozess initiiert, bei dem um Einsendungen für Namensvorschläge gebeten wurde.<ref>BeGroovy » Blog Archive » OpenBeOS Seeks New Name. Archiviert vom Vorlage:IconExternal (nicht mehr online verfügbar) am 18. November 2018; abgerufen am 17. November 2018. Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.</ref> Am 25. Oktober 2002 lief dann der Abstimmungsprozess zum neuen Namen an.<ref>BeGroovy » Blog Archive » OpenBeOS Name Voting Begins. Archiviert vom Vorlage:IconExternal (nicht mehr online verfügbar) am 18. November 2018; abgerufen am 17. November 2018. Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.</ref>
Am 5. November 2002 inszenierte Bruno G. Albuquerque, einer der damaligen Leiter des OpenBeOS-Projekts, als Scherz den Namenswechsel. Der neue Name sollte demnach „Walter“ lauten.<ref>BeGroovy » Blog Archive » Walter unleashed! Archiviert vom Vorlage:IconExternal (nicht mehr online verfügbar) am 18. November 2018; abgerufen am 17. November 2018. Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.</ref> Der Name leitete sich von einer Szene bei Garfield ab und erlangte im Laufe der Zeit eine gewisse Popularität innerhalb der OpenBeOS-Community, was dazu führte, dass Walter zum Codenamen für die Entwicklungslinie hin zu Haiku 1.0 wurde.<ref name="WalterAlsCodename">Vgl. auch die Versionsbezeichnung in Haiku Screenshot.png (Dateiversion vom 23. Februar 2006)</ref> WalterCon wurde zum Namen für die amerikanische Haiku-Entwickler-Konferenz (analog zu den BeGeistert-Treffen in Düsseldorf, Deutschland).
Am 19. Juni 2004 wurde auf der ersten WalterCon der neue, eigenständige Name Haiku eingeführt, nicht zuletzt, um etwaigen Rechtsstreitigkeiten mit dem nunmehrigen BeOS-Rechteinhaber Access (ehemals PalmSource) aus dem Weg zu gehen. Der Name geht auf die Fehlermeldungen des BeOS-eigenen Browsers NetPositive zurück, der Fehler beim Abrufen von Webseiten in der Form von Haikus, einer alten japanischen Versform, darstellt.
Schwesterprojekte
Mit dem Niedergang von Be Incorporated entstanden unabhängig voneinander mehrere Projekte mit dem Ziel, BeOS in quelloffener Form nachzubauen. Neben Haiku waren dies unter anderem BlueEyedOS und Cosmoe. Als Sammelbegriff dieser Projekte wurde die Bezeichnung Open Standards BeOS-compatible Operating Systems (OSBOS) eingeführt. Die verschiedenen Entwicklerteams schlossen sich in der Organisation beunited.org<ref name="beunited.org">beunited.org - Open Standards BeOS-compatible Operating Systems. Abgerufen am 17. November 2018.</ref> zusammen und verabredeten eine Zusammenarbeit. Allerdings war Haiku zuletzt das einzige verbliebene aktive Projekt dieser Gruppe. beunited.org hat ihre Auflösung am 4. Januar 2007 bekanntgegeben. Das Haiku-Projekt an sich ist davon jedoch nicht betroffen und wird aktiv weiterentwickelt.
Haiku-Vector-Icon-Format
Haiku-Vector-Icon-Format (HVIF) ist ein Vektorgraphikformat für Icons. Es wurde für Haiku erstellt und wurde bis jetzt ausschließlich dort implementiert, ist aber betriebssystemunabhängig. Eine große Besonderheit ist, dass die Icons in diesem Format üblicherweise unter einen Kibibyte groß sind, wodurch sie in den Metadaten von BFS gespeichert werden können, um von Haikus Dateimanager Tracker gemeinsam mit den anderen Metadaten der Datei in nur einem Lesevorgang gelesen zu werden. Da auch bei SSDs Datenträgervorgänge am langsamsten sind, führt dies zu einer besseren Geschwindigkeit beim Anzeigen von Ordnerinhalten.
Weblinks
- Haiku – Die offizielle Website (englisch)
- Entwickler-Blogs – Blogs einiger Haiku-Entwickler mit monatlichem Bericht (englisch)
- CGit-Log
- Community-Übersicht
- Haiku-Hardwareliste
- BeGeistert – Alles über vorige und kommende BeGeistert-Treffen
- Interview (25 Min.; OGG; 17,4 MB) mit Stephan Aßmus und Axel Dörfler bei RadioTux am 14. März 2009 von den Chemnitzer Linux-Tagen über Haiku
Einzelnachweise
<references />