%   leaflet.tex  --  Oliver Fromme  <olli@fromme.com>
%
%   Informationsbrosch|re |ber BSD, erstellt anld_lich der
%   Messe ;Systems 2001+ in M|nchen.
%
%   Leaflet on the BSDs, in English & German (first written for a trade show).
%
%   Update 20.12.2002 - Rainer Duffner
%   Merge der Leaflets von Oliver Fromme und Daniel Lang
%   TeX scrapped from Oliver ....
%
%   Update Jan 2003 Julian H. Stacey
%   	Introduced Combined English + German format,
%   	translated Rainer's version to English
%	Tweaked english half a little, with feedback from advocacy@freebsd.org
%   	Next: Conversion from `le' to `m4' macro processor +
%   	introduction of m4 directives to compile A4 or USA
%
%   THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS "AS IS"
%   AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
%   TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
%   PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR
%   OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
%   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
%   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
%   USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
%   AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
%   LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
%   ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
%   POSSIBILITY OF SUCH DAMAGE.
%
% Avoid use of !}fmt within vi on the German sections, as it zaps umlauts,
% (It's nice on the English sections though, to make source more readable 
% to human editors).

\documentclass[10pt]{article}

\usepackage{pslatex}
\usepackage{german}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage{epsf,picinpar}

\paperheight=21cm	%   ISO A4 short side
\paperwidth=9.9cm	%   ISO A4 long side / 3
\special{papersize=99mm,210mm}

%%% %   Uncomment this to print "Entwurf" ("Draft") on each
%%% %   page's background in large, light grey letters.
%%%
%%% %   Some PostScript magic ...
%%% \special{!userdict begin /bop-hook{gsave 90 20 translate
%%% 70 rotate /Times-Roman findfont 116 scalefont setfont
%%% 0 0 moveto 0.85 setgray (ENTWURF) show grestore}def end}

%   Setup the text area on each page.
%   Borders:  left and right 0.5cm each,
%             to and bottom 1.0cm each.
%   (Note:  DVI drivers imply an offset of 1in top/left.)
\textheight=19cm	%   21cm - 2 * 1cm
\textwidth=8.9cm	%   9.9cm - 2 * 0.5cm
\topmargin=-2.81cm
\oddsidemargin=-2.04cm

\sloppy
\nonfrenchspacing
\parindent=0pt
\parskip=1ex
\pagestyle{empty}

\newcommand{\UNIX}{UNIX\textregistered}
\newcommand{\TOG}{The Open Group\texttrademark}
\newcommand{\Abschnitt}[1]{
	\begin{center}
		\large{\sffamily\bfseries #1}
	\end{center}
 }

\newcommand{\UAbschnitt}[1] {
	\begin{center}
		\small{\center{\sffamily\bfseries #1}}
	\end{center}
 }

%==================  end of preamble  ==================

\begin{document}

\begin{center}
%	BIM -- Berkeley in Munich \ $<$bim_ERASE@mailman.berklix.org$>$\\
	BIM -- Berkeley in Munich \\
	stellt vor:
\end{center}

\begin{center}
	\Huge\textbf{BSD}\\
	\large\textsc{Berkeley Software Distribution}
\end{center}

\vskip 0pt plus 1fill

\hspace*{0.1\textwidth}{\epsfxsize=0.8\textwidth \leavevmode \epsffile{bug.ps}}

\vskip 0pt plus 1fill

In dieser Brosch|re mvchten wir Ihnen einen \berblick
|ber die drei Open-Source-Vertreter der Familie der
BSD-\UNIX-Betriebssysteme vermitteln:

\begin{center}
\large\bfseries
\begin{tabular}{l@{\quad}l}
	FreeBSD	& \texttt{http://www.freebsd.org/} \\
	NetBSD	& \texttt{http://www.netbsd.org/} \\
	OpenBSD	& \texttt{http://www.openbsd.org/}
\end{tabular}
\end{center}

\vskip 0pt plus 1fill

\begin{center}
\small{
English translation also available:
\vskip 0pt 
http://www.berklix.org/bim/leaflet/
 }
\vskip 0pt plus 1fill
\end{center}

 {\footnotesize
% \hbox to \hsize{\textcopyright{} BIM, http://bim.bsn.com/
\hbox to \hsize{\textcopyright{} BIM, http://www.berklix.org/bim/
%	\hss Stand 10/2001\@.  Alle Angaben ohne Gewdhr.}
	\hss Jan/2003\@.  
	Alle Angaben ohne Gewdhr.
 }
\hbox to \hsize{Satz:  \LaTeXe{} unter FreeBSD 4.7
	\hss Druck:  dvips\,/\,ps2pdf}
\hbox to \hsize{\hss
	Prepared/ Printed in Germany\quad-\quad Imprim\'e en Allemagne
	\hss}
\par}

\newpage

\Abschnitt{
Einf|hrung
 }

BSD-Unix -
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 kvnnen.

\Abschnitt{
Viele BSDs - Eine Philosphie
 }

Traditionell unterteilt man die Gruppe der
UNIX-Be\-triebs\-systeme in zwei Lager:
System V (kurz: "`SysV"') und BSD\@.
Letzteres wurde urspr|nglich an der
Universitdt 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-Unix reichen bis in die 70'er Jahre des 20.
Jahrhunderts zur|ck, und folglich ist die vollstdndige Historie etwas zu umfangreich um an dieser Stelle komplett ausgerollt zu werden - man kann aber folgendes sagen:

\begin{itemize}
\item
In BSD-Systemen stecken 30 Jahre Entwicklungsarbeit,
in denen die Software zwar immer wieder den Anforderungen der Zeit angepasst wurde,
aber ohne jedesmal alles |ber den Haufen zu werfen und komplett neu anzufangen.
In der Folge ist heute jedes der BSD-Derivate ein reifes,
stabiles Unix ohne "`Kinderkrankheiten"'.

\item
Im Laufe der Zeit entstanden aus einem einzigen "`BSD-Stamm"' mehrere lose
gekoppelte Linien,
die jedes f|r sich jeweils eigene Ziele verfolgen,
sich im Kern aber immer noch sehr dhnlich sind und auch durch
wechselseitige Portierungen von Schnittstellen,
Treibern und Applikationen gegenseitig austauschen.

\item
Es gibt heute folgende "`Linien"' oder Derivate:
FreeBSD, NetBSD, OpenBSD,
%
Hinweis:
Aus Platzgr|nden kann auf diesem Faltblatt nicht auf BSDi, MacOS X, Darwin und DragonflyBSD eingegangen werden.

\item
Keines der BSDs ist eine "`Linux Distribution"' - Linux und
FreeBSD sind zwar insofern dhnlich,
als das sie z.T.
die gleiche Software verwenden (z.B. gcc etc.) aber Kernel,
Lizenz und Entwicklungsmodell unterscheiden sich gravierend.
\end{itemize}

\Abschnitt{
Gemeinsamkeiten
 }
Alle BSDs haben folgende Eigenschaften und Randbedingungen gemeinsam:

\UAbschnitt{
BSD-Lizenz
 }
Der grv_te Teil des Quellcodes der freien BSD-Betriebsysteme
wird nach verschiedenen BSD-Lizenzen lizensiert.
% not true above ! jhs@
Im Gegensatz zur vom Linux-Kernel verwendeten GPL-Lizenz gestatten
BSD-artige Lizenzen (auch hier gibt es mehrere Varianten...) die
Weitergabe von Bindrcode ohne dazugehvrigen Sourcecode,
was vorallem f|r kommerzielle Produkte wichtig ist,
die auf BSD-Code basieren aber deren Quellcode man nicht oder nicht
vollstdndig freigeben will.

\UAbschnitt{
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 kvnnen.
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
vergrvssert.

\UAbschnitt{
Professionelle Entwicklung
 }
Alle BSDs pflegen den kompletten Betriebsystem-Sourcecode in einem
CVS-Repository (Sourcecode-Verwaltung).
Dadurch lassen sich alle Dnderungen nachvollziehen,
zur|ckverfolgen und ggf.
auch zur|ckrollen.
Ausserdem ldsst sich erst dadurch ein Release-Engineering
f|r ein ganzes, verteilt entwickleltes Betriebsystem sinnvoll realisieren.

\UAbschnitt{
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 dhnlich wie
in kommerziellen Software-Projekten.
Es existiert jeweils eine Art "`Steering Committee"',
genannt \textit{Core},
das neben dem eigentlichen Programmieren mit zunehmender
Projektgrv_e hauptsdchlich Planungsaufgaben wahrnimmt,
oder wahrnehmen sollte.
Um das Core-Team herum gibt es eine gro_e Anzahl weiterer Entwickler
- \textit{Committer} - die f|r die Pflege der Dokumentation oder
Treibern etc.
zustdndig sind - eben alle die Aufgaben,
die bei der Realisierung eines gro_en Projekts anfallen.

\UAbschnitt{
Software im \berfluss
 }
Alle BSDs kvnnen |ber 99\% der im Quellcode verf|gbaren Software (z.B.
von 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 Bindr-Pakete f|r Linux gibt.
Dadurch lassen sich eine weitere gro_e Anzahl Programme unter BSD nutzen,
von denen es hvchstens Linux-Versionen gibt (Acrobat-Reader,
Netscape7, StarOffice 6.0, Quake3 etc.).
Dies geschieht ohne sichtbare Geschwindigkeitseinbu_en.
Die Qualitdt bzw.
Vollstdndigkeit des Linux ABI ist jedoch nicht unter allen BSDs
gleich gut entwickelt - FreeBSD hat hier die meisten Fdhigkeiten.

\UAbschnitt{
Stabiles Filesystem
 }
Das UFS-Dateisystem ist seit Jahren bewdhrt und sehr leistungsfdhig,
durch \textit{Softupdates} wird die Integritdt der Meta-Daten
auch bei einem Crash sichergestellt.

\UAbschnitt{
Ports-System
 }
Viele frei verf|gbare Software ist nur im Source verf|gbar,
oder kann nicht ohne (juristische) Probleme als \textit{Package}
(fertig kompiliertes Paket,
das BSD-Gegenst|ck zum RPM) weiterverbreitet werden.
Daher gibt es das sgn.
\textit{Ports-Framework}.
Es besteht aus einer Hierarchie von Makefiles und ggf.
Patches die beschreiben,
wie sich ein bestimmtes Source-Paket entpacken,
kompilieren und installieren ldsst.
Das Ports-System kann eigenstdndig benvtigte Quellcode-
oder Bindrdateien aus dem Internet oder von CDROM laden
und ber|cksichigt dabei auch Abhdngigkeiten.

Die BSDs im einzelnen:

\Abschnitt{FreeBSD}
Auf normalen PCs (Intel, AMD oder VIA CPUs)
ist FreeBSD der am
hdufigsten 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 grv_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 Alpha, AMD64/Opteron, Intel Itanium, UltraSPARC-III - in den meisten Fdllen wird aber i386 das Einstiegsystem sein.
Als einziger der drei bietet FreeBSD eine ausgereifte
Unterst|tzung f|r Systeme mit mehreren Prozessoren
(SMP).

\Abschnitt{NetBSD}
NetBSD ist etwa genauso alt wie FreeBSD.
Seine hervorragendste Eigenschaft ist,
da_ es auf einer gro_en Zahl von
Hardware-Plattformen lduft --
es unterst|tzt mehr Architekturen
als jedes andere Betriebssystem.
Eine vollstdndige Liste w|rde
den Rahmen dieser Brosch|re sprengen
(und wdre wahrscheinlich kurze Zeit spdter
schon wieder |berholt),
daher sei an dieser Stelle
auf die Webseite des NetBSD-Projektes verwiesen.
In vielen Fdllen mag die Entscheidung f|r NetBSD
leichtfallen, da es einfach das einzige in Frage kommende
Betriebssystem ist,
das auf der vorhandenen Rechnerplattform lduft.
Selbst, wenn man eine so exotische Hardware besitzt,
da_ bisher keines der drei BSD-Systeme darauf lduft,
ist die Chance bei NetBSD am grv_ten,
da_ es unter ertrdglichem Aufwand
darauf portieren werden kann.
Obwohl nicht viel dlter 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.

\Abschnitt{OpenBSD}
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 gdngigen
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
auch nicht vernachldssigt wird,
doch ist dieses bei OpenBSD
augenscheinlich am stdrksten ausgeprdgt - was nicht bedeuten soll,
OpenBSD sei
ein "`Security Software Stew"' - ein Eintopf aus lauter Security-Software.
Security bedeutet bei OpenBSD vorallem auch \textit{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 Exportbeschrdnkungen.

\vskip 0pt plus 1fill

\hbox to \hsize{\hss\rule{10em}{0.4pt}\hss}
\footnotesize
\UNIX\
ist ein eingetragenes Warenzeichen und
\TOG\
 ist ein Warenzeichen
von
\TOG\
in den USA und anderen Ldndern.
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.

\end{document}

%==================  T H E  E N D ==================
