up previous
Aufwärts: Berkeley_In_Munich Vorherige Seite: BIM_Leaflet

BIM - BERKELEY IN MUNICH
http://www.berklix.org/bim/
STELLT VOR:
BSD
BERKELEY SOFTWARE DISTRIBUTION

fill

=0.8

fill

In dieser Broschüre möchten wir Ihnen einen Überblick über die drei Open-Source-Vertreter der Familie der BSD-UNIX\textregistered-Betriebssysteme vermitteln:

FreeBSD      http://www.freebsd.org/
NetBSD      http://www.netbsd.org/
OpenBSD      http://www.openbsd.org/

fill

English translation also available: http://www.berklix.org/bim/leaflet/ fill

to BIM, http://www.berklix.org/bim/ März 2004. Alle Angaben ohne Gewähr. to Satz: LATEX2e unter FreeBSD 4.9 Druck: dvips/ps2pdf to Prepared/ Printed in Germany    -    Imprimé en Allemagne

Einführung

BSD - was ist das? Diese Frage wird sich mancher schon einmal gestellt haben, wenn der Begriff irgendwo auftauchte. Diese Broschüre soll die wichtigsten Antworten zu diesem Thema geben und Ansatzpunkte für eigene Nachforschungen zu Fragen geben, die nicht im Rahmen dieses Dokuments beantwortet werden können

Viele BSDs - Eine Philosphie

Traditionell unterteilt man die Gruppe der UNIX-Betriebssysteme in zwei Lager: System V (kurz: ,,SysV``) und BSD. Letzteres wurde ursprünglich an der Universität Berkeley (Kalifornien) entwickelt. Die heutigen BSD-Systeme sind direkte Nachfahren von ,,4.4BSD Lite2``, der letzten offiziellen BSD-Version von Berkeley.

Die Ursprünge des BSD reichen bis in die 70'er Jahre des 20. Jahrhunderts zurück, und folglich ist die vollständige Historie etwas zu umfangreich um an dieser Stelle komplett ausgerollt zu werden - man kann aber folgendes sagen:

Gemeinsamkeiten
Alle BSDs haben folgende Eigenschaften und Randbedingungen gemeinsam:

BSD-Lizenz
Der größte Teil des Quellcodes der freien BSD-Betriebsysteme wird nach verschiedenen BSD-Lizenzen lizensiert. Im Gegensatz zur vom Linux-Kernel verwendeten GPL-Lizenz gestatten BSD-artige Lizenzen (auch hier gibt es mehrere Varianten...) die Weitergabe von Binärcode ohne dazugehörigen Sourcecode, was vorallem für kommerzielle Produkte wichtig ist, die auf BSD-Code basieren aber deren Quellcode man nicht oder nicht vollständig freigeben will.

Aus einem Guss
Jedes BSD definiert nicht nur den Kernel, sondern auch eine bestimmte Anzahl von System-Bibliotheken (libc, libpam...), Benutzer- (ls, more, find, sort, lpr...) und Systemadministrator-Programme (ifconfig, chown, cron, dump, restore...) sowie Build-Tools (gcc, make, ld) als ,,Betriebsystem``, das als in sich abgeschlossene Einheit betrachtet und auch so gepflegt wird. Upgrades beziehen sich immer auf das gesamte Betriebsystem und nicht nur auf den Kernel, wie bei Linux.

Das gesamte Betriebsystem und der Kernel lassen sich mit wenigen Kommandos aus den Sourcen komplett neu bauen. In neuerer Zeit hat Gentoo-Linux diesen Gedanken auch unter Linux bekannt gemacht und verwirklicht, ohne dabei jedoch die anderen Vorteile der BSDs bieten zu können. Weiterhin herrscht eine strikte Trennung zwischen Betriebsystem und Zusatzprogrammen (Apache, Netscape, OpenOffice), durch eine geeignete Filesystem-Hierarchie. In der Folge lassen sich Betriebsystem und Anwendungsprogramme immer nur getrennt aktualisieren, was aber in der Praxis die Langlebigkeit der Installationen enorm vergrössert.

Professionelle Entwicklung
Alle BSDs pflegen den kompletten Betriebsystem-Sourcecode in einem CVS-Repository (Sourcecode-Verwaltung). Dadurch lassen sich alle Änderungen nachvollziehen, zurückverfolgen und ggf. auch zurückrollen. Ausserdem lässt sich erst dadurch ein Release-Engineering für ein ganzes verteilt entwickeltes Betriebsystem sinnvoll realisieren.

Straffe Organisation
Die BSD-Projekte sind kein ,,loser Haufen``, in dem jeder ab- und zu einmal beliebigen Code einpflegen darf, sondern bilden eine professionelle Organisation ähnlich wie in kommerziellen Software-Projekten. Es existiert jeweils eine Art ,,Steering Committee``, genannt Core, das neben dem eigentlichen Programmieren mit zunehmender Projektgröße hauptsächlich Planungsaufgaben wahrnimmt, oder wahrnehmen sollte. Um das Core-Team herum gibt es eine große Anzahl weiterer Entwickler - Committer - die für die Pflege der Dokumentation oder Treibern etc. zuständig sind - eben alle die Aufgaben, die bei der Realisierung eines großen Projekts anfallen.

Software im Überfluss
Alle BSDs können über 99% der im Quellcode verfügbaren Software (z.B. von http://freshmeat.net) kompilieren und ausführen, meist gibt es aber auch schon fertige Pakete (Gimp, KDE, teTeX).

Durch ein sgn. ABI (Application Binary Interface) lassen sich Linux-Programme auch unter den BSDs nutzen, selbst wenn es nur Binär-Pakete für Linux gibt. Dadurch lassen sich eine weitere große Anzahl Programme unter BSD nutzen, von denen es höchstens Linux-Versionen gibt ( Acrobat-Reader, Netscape 7, Quake 3, StarOffice 6.0 etc.). Dies geschieht ohne sichtbare Geschwindigkeitseinbußen. Die Qualität bzw. Vollständigkeit des Linux ABI ist jedoch nicht unter allen BSDs gleich gut entwickelt - FreeBSD hat hier die meisten Fähigkeiten.

Stabiles Filesystem
Das UFS-Dateisystem ist seit Jahren bewährt und sehr leistungsfähig, durch Softupdates wird die Integrität der Meta-Daten auch bei einem Crash sichergestellt.

Ports/ Packages-System
Viele frei verfügbare Software ist nur im Source verfügbar, oder kann nicht ohne (juristische) Probleme als Package (fertig kompiliertes Paket, das BSD-Gegenstück zum RPM) weiterverbreitet werden. Daher gibt es das sgn. Ports-Framework. Es besteht aus einer Hierarchie von Makefiles und ggf. Patches die beschreiben, wie sich ein bestimmtes Source-Paket entpacken, kompilieren und installieren lässt. Das Ports-System kann eigenständig benötigte Quellcode- oder Binärdateien aus dem Internet oder von CDROM laden und berücksichigt dabei auch Abhängigkeiten.

Die BSDs im einzelnen:

FreeBSD - http://www.freebsd.org
Auf normalen PCs (Intel, AMD oder VIA-CPUs) ist FreeBSD der am häufigsten anzutreffende Vertreter der BSD-Familie. Dies liegt vermutlich daran, daß es die breiteste Hardware-Unterstützung für diese Plattform bietet, und es ist dafür am besten optimiert. Außerdem tendiert es mehr als die anderen beiden dazu, ,,Bequemlichkeitsfunktionen`` aufzunehmen, wie man sie von anderen Desktop-Systemen her kennt. Dadurch ist es für Umsteiger attraktiver, auch weil es mit über 10000 Programmen die größte Ports-Collection bietet. FreeBSD betrachtet sich daher nicht mehr nur als reines Serversystem, das nur von geschulten Administratoren betrieben werden kann, sondern es zielt bewußt auch auf den Bereich der Endbenutzer, speziell auch Umsteiger von Windows und Linux. Allerdings gibt es auch stabile Portierungen auf AMD 64/Opteron, DEC Alpha/AXP), Intel Itanium, Intel Pentiums etc, Pc98 (Japan), Sun UltraSparc-III, - in den meisten Fällen wird aber i386 das Einstiegsystem sein. Als einziger der drei bietet FreeBSD eine ausgereifte Unterstützung für Systeme mit mehreren Prozessoren (SMP).

NetBSD - http://www.netbsd.org
NetBSD ist etwa genauso alt wie FreeBSD. Seine hervorragendste Eigenschaft ist, daß es auf einer großen Zahl von Hardware-Plattformen läuft - es unterstützt mehr Architekturen als jedes andere Betriebssystem. Eine vollständige Liste würde den Rahmen dieser Broschüre sprengen (und wäre wahrscheinlich kurze Zeit später schon wieder überholt), daher sei an dieser Stelle auf die Webseite des NetBSD-Projektes verwiesen. In vielen Fällen mag die Entscheidung für NetBSD leichtfallen, da es einfach das einzige in Frage kommende Betriebssystem ist, das auf der vorhandenen Rechnerplattform läuft. Selbst, wenn man eine so exotische Hardware besitzt, daß bisher keines der drei BSD-Systeme darauf läuft, ist die Chance bei NetBSD am größten, daß es unter erträglichem Aufwand darauf portieren werden kann. Obwohl nicht viel älter als FreeBSD, betrachtet sich NetBSD gern als der ,,große Bruder`` der Open-Source-BSDs. Es tendiert eher als die anderen beiden dazu, traditionelle Eigenschaften beizubehalten. Dieses konservative Verhalten hat durchaus auch einen positiven, ausgleichenden Effekt auf die anderen BSD-Systeme.

OpenBSD - http://www.openbsd.org
Ende 1996 spaltete sich OpenBSD von NetBSD ab und ist somit das mit Abstand jüngste Mitglied der Familie. Von NetBSD hat es die Unterstützung zahlreicher Plattformen übernommen, allerdings sind einige der nicht so gängigen Portierungen verkümmert, da es an Betreuern mangelt.

OpenBSD hat sich das Thema ,,Sicherheit`` ganz groß auf die Fahnen geschrieben. Zwar ist dies ein Aspekt, der von den anderen BSDs nicht vernachlässigt wird, doch ist dieses bei OpenBSD augenscheinlich am stärksten ausgeprägt - was nicht bedeuten soll, OpenBSD sei ein ,,Security Software Stew`` - ein Eintopf aus lauter Security-Software. Security bedeutet bei OpenBSD vorallem auch Correctness. Das Team unter der Führung von Theo de Raadt hat beispielsweise ein komplettes Quelltext-Auditing des Systems in Angriff genommen, um Schwachstellen auf die Schliche zu kommen. (Von diesen Aktionen profitieren natürlich auch FreeBSD und NetBSD, da die entsprechenden Korrekturen (sofern sie unumstritten sind) von ihnen übernommen werden.) OpenBSD's Bekenntnis zu Sicherheit ist auch ein Bekenntnis zu Kryptographie.

Herausragend sind hier vorallem die Unterstützung einiger Crypto-Beschleuniger karten, und die breit angelegte Integration starker Verschlüsselungsalgorithmen im Betriebssystem.

Da Theo de Raadt in Kanada lebt, unterliegen diese Algorithmen keinerlei Exportbeschränkungen.

fill

to UNIX\textregistered ist ein eingetragenes Warenzeichen von The Open GroupTM in den USA und anderen Ländern. Alle anderen Marken und Namen sind Eigentum ihrer jeweiligen Inhaber; alle entsprechenden Warenzeichen und eingetragenen Warenzeichen werden als solche anerkannt; ihre Nennung dient lediglich Identifikationszwecken.

Über dieses Dokument ...

This document was generated using the LaTeX2HTML translator Version 2002-2-1 (1.70)

Copyright © 1993, 1994, 1995, 1996, Nikos Drakos, Computer Based Learning Unit, University of Leeds.
Copyright © 1997, 1998, 1999, Ross Moore, Mathematics Department, Macquarie University, Sydney.

The command line arguments were:
latex2html -no_subdir -split +0 -address bim-leaflet@berklix._ERASE_.org -up_url http://www.berklix.org/bim/ -up_title Berkeley_In_Munich -prev_url http://www.berklix.org/bim/leaflet/ -prev_title BIM_Leaflet leaflet_g.tex

The translation was initiated by Julian H. Stacey on 2013-09-11


up previous
Aufwärts: Berkeley_In_Munich Vorherige Seite: BIM_Leaflet
bim-leaflet@berklix._ERASE_.org