1 Das Betriebssystem Linux 
1.1 Linux-Historie 
Linux ist ein frei verfügbares ("Open Source") und zu UNIX
kompatibles Betriebssystem, das 1991 von dem damals 21 Jahre alten
finnischen Informatik-Studenten Linus Torvalds begonnen wurde.
Der Studienanfänger an der Universität von Helsinki war mit den vorhandenen
PC-UNIX-Versionen für Intel Prozessoren unzufrieden und begann — auf einem
damals hochmodernen Intel-386SX-PC — sein eigenes UNIX-kompatibles
Betriebssystem zu bauen, das er später nach seinem Vornamen (Linux = "Linus' UNIX") benannte
(der erste Versuch einer Namensgebung lautete "Freax", wahrscheinlich wäre Linux mit diesem
Namen nie berühmt geworden ;-).
Als Basis dieser Entwicklung verwendete er zunächst das UNIX-Lernsystem
MINIX des Informatikprofessors und Betriebssystem-Experten
Andrew S. Tanenbaum,
das er aber bereits sehr früh durch sein eigenes Linux-System ersetzen konnte
(oder "musste": Der Sage nach ging seine 2. Platte mit dem MINIX-Entwicklungssystem
kaputt, als eine 1. Version von Linux fast lauffähig war).
Nach seinem inzwischen berühmten ersten
"Posting" zu Linux am 25.8.1991 mit der Ankündigung seines Vorhabens
Hello everybody out there using minix -
I'm doing a (free) operating system (just a hobby, won't be big and
professional like gnu) for 386(486) AT clones. …
begannen sich viele Leute dafür zu interessieren und seitdem wurde Linux
von ihm und vielen Freiwilligen auf der Welt weiterentwickelt (die
geraden Versionsnummern bezeichnen Produktions-Versionen, fehlende
ungerade Versionsnummern ab 1.0 bezeichnen Entwicklungs-Versionen):
| Version | Datum |
| 0.01 | Sep 1991 |
| 0.02 | Okt 1991 |
| 0.11 | Dez 1991 |
| 0.12 = 0.9 | Jan 1992 |
| 0.95 | Mär 1992 |
| 0.96 | Apr 1992 |
| 0.97 | Aug 1992 |
| 0.98 | Okt 1992 |
|
|
| Version | Datum |
| 0.99 | Dez 1993 |
| 1.0 | Mär 1994 |
| 1.2 | Mär 1995 |
| 2.0 | Jun 1996 |
| 2.2 | Jan 1999 |
| 2.4 | Jan 2001 |
| 2.6.0 - 2.6.39 | Dez 2003 - Jun 2011 |
| 3.0 | Jul 2011 |
|
Berühmt wurde auch der Disput zwischen Linus Torvalds und
Andrew S. Tanenbaum im Januar/Februar 1992, der mit dem berühmten Satz
"Linux is obsolete" (Linux ist überflüssig) begann.
Professor Tanenbaum meinte damit vor allem die technologische Rückständigkeit
des anfangs monolithischen, nicht portierbaren Linux-Kernels (lief nur auf
i386) gegenüber modernen Betriebssystemen mit Micro-Kerneln, aber auch die
verteilte und ungesteuerte Entwicklung von Linux.
Heutzutage ist Linux natürlich auf viele Hardware-Plattformen portiert
und aus dem monolithischen Kernel wurde ein modularer Kernel (eine
Zwischenstufe zwischen monolithischem und Micro-Kernel). Der Entwicklungsprozeß
ist nach wie vor verteilt, aber es gibt Kontroll-Instanzen und einen kleinen
Kreis von Entwicklern, der die strategischen Entscheidungen trifft.
Torvalds konterte diesen damals berechtigten Einwand, indem er mit ein paar
geschickten Entscheidungen Linux auf einen langfristigen Erfolgkurs brachte:
- Freigabe des Linux-Codes unter der GPL
- Vollständige Offenlegung des Entwicklungsprozesses
- Verwendung der bereits vorhandenen GNU-Software statt Neuentwicklung
- Beteiligung vieler Entwickler weltweit
- Berücksichtigung von Anwenderwünschen
- Orientierung an offenen Standards (z.B. POSIX, XPG, OSF, COSE, RFCs, …)
- Mäßige Kontrolle des Entwicklungsprozesses
- Strenge Trennung von Produktions- (gerade Nummern) und Entwicklungs-Versionen (ungerade Nummern)
- Sorgfältige Tests vor der Freigabe einer Version
- Kein Marketing
- Technische Orientierung
- Pragmatismus
Diese Kombination, das zunehmend für Privatanwender erschwingliche Internet
und die Tatsache, dass die Zeit dafür einfach "reif" war, haben Linux zu
einem sehr erfolgreichen Betriebssystem gemacht.
Der Pinguin "Tux" (geschaffen von dem Cartoonisten Larry Ewing)
ist seit 1996 das offizielle Maskottchen von Linux, da Linus Torvalds
eine Vorliebe für Pinguine hat, seitdem er im Zoo von Canberra von einem
dieser kälteliebenden Frackträger gebissen wurde:
Selbstverständlich gibt es auch einen echten Pinguin namens Tux:
Führende Köpfe der Linux-Community adoptierten 1997 anläßlich des Geburtstags
von Linus Torvalds für diesen einen Schwarzfußpinguin im Zoo von Bristol
(Großbritannien):
1.2 Eigenschaften von Linux 
Im Unterschied zu Windows ist Linux nicht nur auf Intel-i386-PCs, sondern
auch auf vielen anderen Hardware-Plattformen einsetzbar:
- Acorn ARM
- AMD x86-64 (Opteron)
- AXIS CRIS
- DEC Alpha (jetzt HP, vorher Compaq)
- DEC VAX
- Hitachi SuperH
- HP PA/RISC
- IBM PowerPC
- IBM S/390 (Mainframe)
- Intel IA-64 (Itanium)
- Intel Strong-ARM
- Motorola 68000
- Renesas M32R
- SGI MIPS
- SUN Sparc und UltraSparc
Linux bietet die gesamte Funktionalität, die man von einem modernen
Betriebssystem erwartet:
- Multiuser-Betrieb
- Echtes (präemptives) Multitasking
- Hierarchisches Dateisystem (aber keine Laufwerksbuchstaben)
- Geräteunabhängigkeit
- Netzwerkfähigkeit
- Ausgereiftes Zugriffsrechte-System (z.B. auch ACLs)
- Symmetric Multi Processing-Unterstützung (SMP)
- Threads ("Lightweight" Processes)
- Virtuelle Speicherverwaltung
- Speicherschutz-Mechanismen
- Dynamisch nachladbare Bibliotheken
- Hohe Netzwerk-Performance
- Grafische Oberfläche (X Windows System, KDE, GNOME — auf Wunsch)
Alle diese Eigenschaften machen Linux zu einer sehr guten Lösung für viele
Einsatzgebiete. Linux wird daher bereits auf Millionen von Rechner
weltweit erfolgreich eingesetzt.
1.3 Gründe für Linux 
- Ausgereift, extrem stabil und performant (seit 15 bzw. 40 Jahren am Markt)
- Hält viele Standards ein (POSIX, X/Open, RFC, …)
- Viele fertige Tools + Entwicklungs-Werkzeuge vorhanden
- Automatisierbar durch programmierbare Shell
- Fern-Administration integriert
- Portabel
- Resourcen-schonend
- Genau auf die Anforderungen "zuschneiderbar"
- Keine grafische Oberfläche notwendig (z.B. bei Servern)
- 32/64-Bit-Prozessoren werden unterstützt
Einige vordergründig nicht-technische Gründe für den Einsatz von
Linux sind:
- Deutlich weniger anfällig gegen Angriffe (als z.B. Windows;
aufgrund seiner geringen Verbreitung und der überlegenen Sicherheitsmerkmale)
- Keine Abhängigkeit von einem Hersteller
- Mehr Wettbewerb
- Lizenzkostenfrei
- Die "Funktionsweise" ist vollständig dokumentiert
- Die "Innereien" sind zugänglich
- An Standards orientiert
- Man kann daran "herumbasteln"
- Man kann mit daran entwicklen
- Verschworene "Community"
- Einfach "Hip"
1.4 Einsatzgebiete von Linux 
Benutzt wird Linux von privaten Anwendern, Ämter, Behörden,
Ausbildungseinrichtungen, Schulen, Stadtverwaltungen, Universitäten,
Forschungszentren, kleinen, mittleren und großen Firmen, die es aus den
verschiedensten Gründen als Alternative zu anderen Betriebssystemen
sehen.
Die Hauptanwendungsgebiete von Linux sind derzeit:
- Im Server-Bereich (Datei-, Drucker-, Mail-, WEB-, FTP-, Anmelde-Server)
- In der Internet-Infrastruktur (DNS, Router)
- Im Netzwerk-Sicherheitsbereich (Proxy, Gateway, Firewall)
Aber auch als Desktop auf Anwender-Clients wird Linux
mehr und mehr eingesetzt, da zu einer ganzen Reihe von sogenannten
Standard-Anwendungen unter Windows vergleichbar leistungsfähige und
stabile(re) Produkte unter Linux existieren:
| Microsoft Windows | Linux/GNU |
| .NET/C# | DotGNU, Mono |
| Access | OpenOffice-Base, Rekall |
| Acrobat Reader | Xpdf, Kpdf |
| Active Directory | OpenLDAP |
| Bilder/Fotoverwaltung | F-Spot, gThumb |
| Excel | OpenOffice-Calc |
| Exchange | Exim, Postfix, Qmail, Sendmail |
| Frontpage | Bluefish, Coffecup, NVU, Quanta |
| Illustrator, Freehand, Coreldraw, Xara | Inkscape |
| Internet Explorer | Firefox, Galeon, Konqueror, Lynx, Opera |
| Internet Information Server (IIS) | Apache |
| Media Player | Mplayer, Vlc, Xine |
| Mindmapper | vym — View Your Mind |
| Nero | Abcde, Brasero, K3b |
| Norton Commander | Midnight Commander |
| Notepad | Gedit, Kate |
| Office | Applixware, KOffice, OpenOffice, StarOffice |
| Outlook | Evolution, Horde, Kontact, Thunderbird |
| MP3-Player | Amarok, Helix, XMMS |
| Photoshop | Gimp |
| Powerpoint | OpenOffice-Impress |
| Project | MrProject |
| Quark Express | Applixware, Scribus |
| Quicken | GNUCash |
| SQL Server | MySQL, PostgreSQL |
| Taschenrechner | Kcalc |
| Desktopsuche | Beagle, Tracker |
| Visio | Dia |
| Visual Studio | Eclipse, Kdevelop |
| Windows | Linux + XFree86/Xorg + KDE/GNOME |
| Windows Explorer | Konqueror, Nautilus |
| Winrar | 7-Zip |
| Word | OpenOffice-Writer |
| Write | Kwrite |
| Xara 3D | Blender |
| Scannen | XSane |
1.5 Linux-Distributionen 
Für Linux-Systeme gibt es nicht wie sonst üblich nur einen
Hersteller beziehungsweise Vertreiber, sondern mehrere sogenannte
"Distributoren"
stehen im Wettbewerb miteinander (nur eine kleine Auswahl):
Eine Distribution ist eine Zusammenstellung folgender Bestandteile zu einem Paket:
- CDs/DVDs mit Linux-Betriebssystem und mehreren 1000 Anwendungs-Programmen
- Grafisches Installations- und Administrations-Programm mit Hardwareerkennung
- Gedrucktes Installations- und Anwender-Handbuch
- Zeitlich begrenzter Installations-Support per Telefon oder E-Mail
Linux wurde zunächst ausschließlich über das Internet verteilt. Mit der stark
steigenden Zahl von verfügbaren (Anwendungs)Programmen hat sich der Vertrieb
über Distributionen mit CDROMs und DVDs etabliert und wird zunehmend mit
Supportdienstleistungen verknüpft.
Eine Distribution kostet zwischen 20,- und 100,- Euro für 1-7 CDs (oder
1-2 DVDs) und ein oder mehrere Handbücher. Für Firmen gibt es inzwischen
professionell orientierte Distributionen mit Wartungsverträgen
und mehrjähriger Weiterentwicklungs- und Supportgarantie, die dann
allerdings erst ab 400.- bis 2000.- Euro erhältlich sind. Interessant (und
teuer) sind diese professionellen Distributionen vor allem deshalb, weil sie
vom Hersteller für Hardware wie DELL, HP, IBM und für Software
wie ORACLE, Sybase, SAP zertifiziert sind.
2 Das GNU-System 
Im Zusammenhang mit Linux muss auf jeden Fall das GNU-System (GNU
steht für "Ghee it's not UNIX" oder "GNU's not UNIX") erwähnt
werden. Es bildet zusammen mit dem Linux-Kern das Linux-Betriebssystem, man
sollte also eigentlich immer von "Linux/GNU" oder "GNU/Linux"
sprechen.
Genau genommen bezeichnet "Linux" nämlich nur den ursprünglich von
Linus Torvalds entwickelten "Kern" des Betriebssystems. Dieser Kern
bietet ausschließlich Basisfunktionalitäten und ist für sich alleine nicht
verwendbar. Er ist im wesentlichen für die Ansteuerung der Hardware
(Treiber) und für die Koordination von Hard- und Software verantwortlich
(Ressourcenverteilung für Speicher, CPU, I/O-Kanäle und Netzwerk).
Ein "richtiges" Betriebssystem entsteht erst durch das Hinzufügen
weiterer — für einen sinnvollen Einsatz unbedingt notwendiger — Komponenten wie
z.B.
- Kommandozeilen-Werkzeuge
- Programmierumgebungen
- Netzwerksoftware (Server und Clients)
- Grafische Oberflächen
- X Window
(grundlegende Grafik-Funktionen)
- KDE
(Kool Desktop Environment)
- GNOME
(GNU Network Object Model Environment)
GNU wurde ebenfalls als UNIX-kompatibles Betriebssystem
von Richard
Stallman 1984 begonnen, als dieser sich über seine Abhängigkeit von
Software-Herstellern ärgerte, die nicht bereit waren, Fehler aus ihrer
Software zu entfernen.
Er gründete 1985 die FSF (Free Software Foundation) und ersann die GPL
(GNU General Public License), eine "revolutionäre" Software-Lizenz, die
so ganz anders geartet war als alle bis dahin bekannten Lizenz-Spielarten
von Software-Herstellern.
Allerdings begann Herr Stallman mit der Realisierung seines
UNIX-Ersatz-Systems am anderen Ende. Nicht der Kern des Betriebssystems
wurde zuerst implementiert, sondern die vielen für ein Betriebssystem
notwendigen Werkzeuge außen herum wurden von ihm und seiner Gruppe
implementiert bzw. von anderen Gruppen in dieses System integriert, z.B.:
- Editoren "emacs" und "vim"
- Portabler GNU-C-Compiler "gcc"
- Portabler GNU-C++-Compiler "g++"
- Portabler GNU-Fortran-Compiler "f77"
- Portabler GNU-Awk-Interpreter "gawk"
- Portabler GNU-PostScript-Interpreter "ghostscript"
- Kommandozeilenorientierter GNU-Debugger "gdb"
- Grafischer GNU-Debugger "ddd"
- GNU-make "gmake"
- Kommando-Shell "bash"
- Scanner-Generator "flex" und Parser-Generator "bison"
Lange bevor der geplante eigene GNU-Betriebssystem-Kern "Hurd" (Hird
of UNIX-Replacing Daemons) verfügbar wurde, hatte sich aber bereits der
"Linux"-Kern von Linus Torvalds durchgesetzt.
Das offizielle Maskottchen von GNU ist ein "Gnu":
2.1 GPL 
Hauptsächlicher Grund für die weite Verbreitung von Linux ist — neben
der technologischen Qualität — dass es von Anfang an unter die
im Zusammenhang mit dem GNU-Projekt entwickelte GPL (GNU General Public
License) gestellt wurde.
Diese Lizenz garantiert jedem den kostenlosen Zugang zum Quellcode
von Linux. Linux darf und muss frei und kostenlos kopiert, übertragen,
verteilt, eingesetzt, verändert und erweitert werden. Entwickler haben
daher vollständigen Einblick in den Quellcode. Sie können somit
sehr einfach neue Funktionalitäten ergänzen bzw. (sicherheitsrelevante)
Programmierfehler schnell finden und beheben.
Treiber für neue Hardware (z.B. SCSI Controller, Grafikkarten,
WLAN, Fernsehkarten, …) können dadurch ebenfalls sehr schnell integriert
werden (sofern ihre Ansteuerung vom Hardware-Hersteller offengelegt wird,
was leider nicht immer der Fall ist ;-().
Allerdings führt die Verwendung von GPL-Software zusammen mit eigenentwickelter
Software dazu, dass diese eigene Software ebenfalls automatisch unter der
GPL steht ("Copyleft-Prinzip").
2.2 LGPL 
Die LGPL (GNU Lesser General Public License) (und auch z.B. die
BSD-Lizenz) erlaubt im Gegensatz zur GPL den Einsatz zusammen mit
eigenentwickelter Software, ohne dass diese offengelegt werden muss. Unter
die LGPL fallen z.B. die mit dem gcc oder g++ mitgelieferten C- und
C++-Bibliotheken.
Viele Software-Pakete (z.B. Qt oder MySQL) kommen auch
in Form von 2 Lizenzen. Einer kostenfreien unter der GPL und einer
kommerziellen (mit Kosten verbundenen) unter einer anderen Lizenz. Dies
erlaubt jedem die Entscheidung, ob er seine Software offenlegt und keine
Lizenzgebühren zahlt oder ob er lieber Lizenzgebühren zahlt und dafür seine
Software-Quellen nicht offenlegt.
3 BSD-Systeme 
Neben Linux gibt es noch weitere Open Source Betriebssysteme, z.B. eine
Linie von UNIX-kompatiblen Betriebssystemen, die aus dem UNIX-Derivat
BSDLite 4.4 (Berkeley Software Distribution) entstanden sind:
- Darwin (Open Source BSD-OS von Apple, Grundlage von System X)
- DragonflyBSD (Abspaltung von FreeBSD)
- FreeBSD (sehr optimiertes und robustes BSD-UNIX)
- NetBSD (sehr portables BSD-UNIX)
- OpenBSD (sehr sicheres BSD-UNIX, Ableger von NetBSD)
Weitere Links zu BSD.
4 System X 
Das seit einigen Jahren als Nachfolger von MacOS auf
Apple-Rechnern eingesetzte Betriebssystem System X ist ebenfalls ein
BSD-UNIX-Derivat. Es hieß früher NeXTStep und stammte ursprünglich
von der Firma NeXT, die dem Apple-Mitgründer Steve Jobs
gehörte und später von Apple aufgekauft wurde. Das Original-NeXTStep-System
wird als GNUstep/OpenStep
weitergeführt
Im Unterschied zu Linux basiert NeXTStep (und damit auch System X) auf
dem fortschrittlichen Micro-Kernel MACH 2.5. Weitere bahnbrechende
Besonderheiten von NeXTStep waren die Verwendung von Display PostScript
statt X Window für die grafische Oberfläche und von Objective C
als Programmiersprache.
5 Das UNIX-System 
UNIX ist eigentlich eine portable Betriebssystemfamilie mit den beiden
Hauptlinien
- BSD-UNIX (Berkeley Software Distribution von der University of California at Berkeley)
- UNIX System V (ursprüngliches UNIX-System von den AT&T Bell Laboratories)
Es bildet die Grundlage für fast alle heutigen kommerziellen und
nichtkommerziellen Betriebssysteme. "UNIX" ist mittlerweile
ein geschütztes Markenzeichen der Open Group. Alle vergangenen und heute existierenden
UNIX-Systeme wie
- AIX (IBM)
- HP/UX (Hewlett-Packard)
- Irix (Silicon Graphics)
- NextStep (Next)
- SCO UnixWare (Santa Cruz Operation)
- SunOS (SUN Microsystems)
- Solaris (SUN Microsystems)
- Tru64 (Compaq)
- Ultrix (Digital Equipment Corporation)
stammen von einer der beiden Hauptlinien ab (Linux ist hingegen eine
komplette Neuentwicklung). UNIX ist sicher eines der einflussreichsten
Betriebssysteme im Bereich der modernen Computernutzung.
5.1 UNIX-Historie 
Vorläufer des Betriebssystems UNIX war das System MULTICS, das um
1965 gemeinsam von den Hardware-Herstellern General Electric,
Honeywell, dem MIT (Massachusetts Institute of Technology) und den AT&T
Bell Laboratories begonnen wurde. Aufgrund seiner hohen Komplexität und
der damals noch nicht ausreichend fortgeschrittenen Hardware-Technologie
scheiterte dieses Projekt jedoch.
Einige der in den Bell Laboratories von AT&T an MULTICS beteiligten
Entwickler (Dennis Richie, Doug McIlroy, Joseph Ossanna, Brian Kernighan,
Ken Thompson) implementierten ausgehend von diesen Erfahrungen ab
1969 dann ein viel kleineres Multi-User-Betriebssystem auf einem
Minicomputer PDP-7 von DEC (Digital Equipment Corporation), zunächst noch in
Assembler (Maschinensprache).
Ziel war es, ein Mehrbenutzersystem zu schaffen, das zur
Programmierung und zur Bildung einer Gemeinschaft der Benutzer
dienen sollte. Die PDP/7-Hardware war denkbar einfach (16 + 8 KByte Speicher,
512 KByte Festplatte, Dateigröße maximal 64 KByte), daher wurden in dem Projekt
einige weitreichende Entscheidungen getroffen, die auch heute noch in
UNIX-Systemen anzutreffen sind (siehe UNIX-Prinzipien).
Das System wurde 1970 auf eine PDP-11 migriert und intern im
Patentbüro der Bell Laboratories als Textverarbeitungssystem eingesetzt. Der
Begriff "UNIX" entstand als eine "Verballhornung" des Begriffs
"UNICS" (Uniplexed Information & Computing Service), der wiederum
vom Begriff "MULTICS" (Multiplexed Information & Computing Service)
abgeleitet war.
1971-1973 wurde UNIX (bis auf wenige Teile) in der höheren
Programmiersprache C neu implementiert (Abkömmling von B bzw.
BCPL bzw. NB, erst damit wurde es wirklich portabel)
und auf eine PDP-11/74 portiert (in diesem Zusammenhang entstand
auch das Konzept der Pipes). 1974 wurde dieses System unter
dem Namen UNIX V4 abgeschlossen.
UNIX wurde 1973 einer breiteren Öffentlichkeit bekannt, als es
auf einer Tagung (ACM Symposium) vorgestellt wurde und 1974,
als dieser überarbeitete Vortrag unter dem Titel
"The
UNIX Time-Sharing System" in der Zeitschrift CACM erschien. Das
Interesse an diesem System wuchs und viele wollen es einsetzen. Aufgrund
der Monopolstellung von AT&T im Telefon-Markt durft das UNIX-System nicht
verkauft werden, und so wurde der Quellcode des Systems (!) gegen
einen geringen Unkostenbeitrag an Interessierte "verschenkt".
Das System wurde daher von vielen Hardware-Herstellern und Universitäten
eingesetzt und erweitert, vor allem an der University of California at
Berkeley, die das später sehr verbreitete BSD-UNIX schuf. 1980
wurde es dort auch auf einen damals verbreiteten Computer, die 32-Bit-Maschine
VAX der Firma Digital Equipment Corporation portiert (die erste
32-Bit-Version von UNIX).
Ab 1979 versuchte AT&T mit UNIX V7 das System
kommerziell zu vermarkten. Auch Microsoft versucht mit XENIX
eine kommerzielle Portierung auf Intel 80286 Prozessoren, übergibt aber
später die Rechte an diesem System an die Firma SCO (Santa Cruz Operation).
Ab 1980 finanziert die DARPA (Defense Advanced Research
Projects Agency) für mehr als 20 Jahre die BSD-UNIX-Entwicklung an der
UCB (University of California at Berkeley, auch "Cal"), vor allem,
um das gerade entwickelte TCP/IP-Protokoll zu verbreiten, das als
kriegswichtig galt.
Die verschiedenen UNIX-Linien begannen im Zuge dieses Prozesses immer
mehr auseinanderzulaufen, was z.B. die Portierung von Software oder die
einheitliche Systemadministration erschwerte (siehe
UNIX-Versions-Geschichte).
5.2 UNIX-Prinzipien 
Das Betriebssystem UNIX wurde auf Basis folgender Prinzipien konzipiert
und realisiert, die seine "Essenz" ausmachen. Sie sind auch heute noch für die
Eleganz (und auch die Widersprüchlichkeiten) des UNIX-Systems
verantwortlich.
- Prinzipien
- "Small is beautiful"
- KISS = "keep it simple stupid"
- Portabilität ist mehr wert als Effizienz ("C statt Assembler")
- Prozess-Erzeugung muss billig sein ("fork")
- GROSS/Kleinschreibung zählt (fast alles wird klein geschrieben)
- Dateisystem
- Ein logischer hierarchischer Dateibaum (eine Wurzel)
- Dateien sind ein Strom von Bytes
- Standard-Dateiformat ist die "flache" ASCII-Datei (in Zeilen strukturierte Textdatei)
- Jedes Programm kennt 3 standardmäßig geöffnete Dateien: Standard-Eingabe, -Ausgabe und -Fehlerkanal
- Hardware (Geräte) ist per Dateiname ansprechbar ("alles ist eine Datei")
- System- und Benutzerdaten sind streng getrennt
- Werkzeuge
- Viele kleine spezialisierte und standardisierte Werkzeuge
- Werkzeuge sind als "Filter" realisiert
- Werkzeuge sind leicht kombinierbar (durch Umlenkung, Pipe)
- Benutzerschnittstelle
- Kommandozeilenorientierte Benutzerschnittstelle ("Shell statt GUI")
- Der Befehlsinterpreter ist nicht Teil des Betriebssystems (Shell)
- Keine unnötigen Ablaufmeldungen ("stumm")
- Keine Rückfragen ("der Benutzer weiß was er tut")
- Kurze und prägnante Fehlermeldungen
- Vollständige Dokumentation online verfügbar (Manual-Pages)
- Zugriffsrechte
- Multiuser-System
- Jede Datei ist einem Besitzer zugeordnet
- Überschaubar (im wesentlichen 3 Stück: read, write, execute)
- Normale Benutzer dürfen fast alles ansehen, aber fast nichts verändern
5.3 UNIX-Standards 
Da es aufgrund der historischen Entwicklung nicht "das UNIX-System" gab,
versuchten ab den 80-er Jahren einige Organisationen wie
- OSF (Open Software Foundation)
- UI (UNIX International)
- X/Open (Bison, europäische Anwender)
über eine Reihe von Standards das UNIX-System zu vereinheitlichen:
- COSE (Common Open Software Environment)
- POSIX (Portable Operating System Interface)
- SUS (Single UNIX Specification)
- SVID (System V Interface Definition)
- XPG (X/Open Portability Guide)
- XSI (X/Open System Interface)
Aufgrund der Rivalitäten unter den einzelnen Herstellern (als
"UNIX-Krieg" bekannt) und einer Reihe von Copyright-Prozessen
zwischen AT&T und BSD scheiterten alle diese Bemühungen oder zogen sich
zumindest sehr lange hin. Inzwischen erfüllen aber die meisten UNIX-System
den System V- und POSIX-Standard, der eine Zusammenfassung von SysV und
BSD darstellt.
5.4 Grafische Oberflächen 
Zunächst kannten die einzelnen UNIX-Systeme noch keine grafische
Benutzerschnittstelle (GUI). Mit der Entwicklung der grundlegenden und
portablen Grafik-Schnittstelle X11 Window am MIT (Massachusetts
Institute of Technology) wurde diese Art der Benutzung eines UNIX-Systems aber
immer interessanter. Leider entwickelten sich auch hier viele verschiedene,
untereinander inkompatible Ansätze wie z.B.:
- CDE (Common Desktop Environment)
- Looking Glass
- MOTIF
- OpenLook
- OpenWindows (SUN)
- VUE (Visual User Environment, Hewlett Packard)
- Wabi (Windows Binary Application Interface, SUN)
Inzwischen haben sich als Standard aber folgende Grafische Oberflächen herausgebildet:
- GNOME (GNU Network Object Model Environment)
- KDE (Kool Desktop Environment)
Das erste
"Posting" zu KDE am 14.10.1996 von Matthias Ettrich.
5.5 Besondere UNIX-Ableger 
5.5.1 GNU 
Aus Ärger über die zunehmende Kommerzialisierung von UNIX begann
Richard Stallman
1984 das UNIX-kompatible Betriebssystem GNU als vollständige
Neuentwicklung. Dieses System ist nicht-kommerziell und ist im Quellcode
erhältlich.
5.5.2 MINIX 
Ab 1987 entwickelte der Informatik-Professor Andrew S. Tanenbaum
ein PC-basiertes UNIX namens MINIX zu Lehrzwecken, da das
Original-UNIX-System von AT&T auch für Universitäten nicht mehr umsonst
verfügbar war. Dieses System wurde bewußt nicht kommerziell vertrieben,
sondern war gegen einen geringen Betrag inklusive Quellcode erhältlich.
5.5.3 Linux 
Mit der Schaffung des freien UNIX-Systems Linux durch Linus
Torvalds als Neuimplementierung von UNIX ab 1991 hat der lange
gehegte Traum eines einheitlichen UNIX-Systems wieder neue Nahrung
bekommen. Als Ausgangsbasis verwendete er dabei obiges MINIX, das
er aber sehr schnell durch sein eigenes System ersetzte. Auch dieses System
ist nicht-kommerziell und im Quellcode erhältlich.
Die Kombination Linux + GNU bildet heute das am weitesten verbreitete
UNIX-System und erfüllt sämtliche UNIX-Standards.
5.6 Besondere UNIX-Firmen 
5.6.1 Novell 
Von 1993-1995 besaß die Firma Novell die Rechte an UNIX,
verkaufte sie dann aber an die Firma Caldera (heute SCO). Ende 2004
hat Novell erneut den Einstieg in das UNIX-Geschäft vollzogen, indem es den
weltweit zweitgrößten Linux-Distributor SuSE AG (aus Deutschland)
übernahm.
5.6.2 SCO (Santa Cruz Operation) 
Seit 2003 führt die Firma SCO eine Copyright-Klage gegen IBM
und diverse andere Linux-Hersteller und -Benutzer. Grundlage dieser Klage ist
die Behauptung, dass in Linux Quellcode aus dem Original-UNIX-System
einkopiert wurde, und die Firma SCO sich als Besitzer des Original
UNIX-Quellcodes fühlt.
Dieses Gerichtsverfahren zieht sich seit über 8 Jahren hin und
wird noch lange nicht abgeschlossen sein, da die Anwälte der Firma SCO
ständig neue Anträge (z.B. auf zusätzliche Informationsbeschaffung seitens
IBM) stellen und Anklagen gegenüber weiteren Firmen (z.B. Novell) erheben,
ohne bisher einen einzigen wirklichen Beweis für ihre Behauptung angetreten
zu haben. Die Chancen der Firma SCO, ihre Auffassung durchzusetzen, werden
von den meisten Marktteilnehmern inzwischen als sehr gering eingeschätzt.
© 2003-2012 OSTC GmbH — $linuxgnu.pg,v 1.41 2011-08-25 13:00:55$
|