Unix
Was ist Unix?
Unix (oft auch UNIX geschrieben) ist ein multitaskingfähiges und mehrbenutzerfähiges Betriebssystem, das ursprünglich 1969 in den Bell Laboratories von AT&T in den USA entwickelt wurde. Die Hauptentwickler waren Ken Thompson, Dennis Ritchie und weitere Kollegen.
Unix gilt als einer der wichtigsten und einflussreichsten Meilensteine in der Geschichte der Informatik. Es prägte maßgeblich die Art und Weise, wie Betriebssysteme aufgebaut sind, wie Software entwickelt wird und wie Netzwerke funktionieren. Viele moderne Betriebssysteme – darunter Linux, macOS, iOS, Android und diverse Server-Systeme – basieren direkt auf Unix-Prinzipien oder sind sogar zertifizierte Unix-Varianten.
Das ursprüngliche Ziel von Unix war es, ein portables, einfaches und effizientes System zu schaffen, das auf unterschiedlicher Hardware laufen kann. Im Gegensatz zu vielen damaligen Systemen, die nur auf speziellen Großrechnern liefen, war Unix darauf ausgelegt, flexibel zu sein.
Die Unix-Philosophie
Ein wesentlicher Grund für den anhaltenden Erfolg von Unix ist nicht nur der Code, sondern die dahinterstehende Denkweise, die als Unix-Philosophie bekannt ist. Sie wurde maßgeblich von Doug McIlroy formuliert und umfasst folgende Kernprinzipien:
- „Do one thing and do it well“: Jedes Programm sollte genau eine Aufgabe haben und diese perfekt erfüllen, anstatt viele Funktionen halbherzig zu integrieren.
- Komposition: Programme sollten so gestaltet sein, dass sie miteinander arbeiten können. Die Ausgabe des einen Programms dient als Eingabe für das nächste.
- Text als universelle Schnittstelle: Da Text einfach zu verarbeiten ist, sollten Programme wann immer möglich textbasierte Datenströme verwenden, um kompatibel zu bleiben.
- Frühes Prototyping: Man sollte schnell eine funktionierende Version erstellen und diese iterativ verbessern, statt lange an perfekten Plänen zu arbeiten.
Diese Philosophie förderte die Entwicklung kleiner, modularer Werkzeuge (Tools), die kombiniert werden können, um komplexe Probleme zu lösen – ein Ansatz, der die Softwareentwicklung bis heute prägt.
Technische Merkmale und Architektur
Unix führte mehrere technische Innovationen ein, die zum Industriestandard wurden:
Hierarchisches Dateisystem
Unix etablierte die baumartige Struktur von Dateien und Verzeichnissen, die mit einem Wurzelverzeichnis (/) beginnt. Dieses Modell wurde von fast allen nachfolgenden Betriebssystemen übernommen.
„Alles ist eine Datei“
In Unix werden nicht nur Textdateien, sondern auch Hardware-Geräte (Festplatten, Drucker, Terminals), Netzwerkverbindungen und Prozesse als Dateien behandelt. Das bedeutet, dass man mit denselben einfachen Befehlen (wie read und write) auf eine Textdatei zugreifen oder Daten an einen Drucker senden kann. Dies vereinheitlicht die Programmierung enorm.
Multiuser- und Multitasking-Fähigkeit
Unix war eines der ersten Systeme, das es mehreren Benutzern ermöglichte, sich gleichzeitig einzuloggen und unabhängig voneinander Programme auszuführen, ohne dass sich diese gegenseitig stören.
Die Shell
Die Shell ist die Kommandozeilen-Oberfläche von Unix. Sie dient als Vermittler zwischen dem Nutzer und dem Kernel (dem Kern des Betriebssystems). Durch die Shell können Nutzer Befehle eingeben, Skripte automatisieren und Programme verketten (Pipes). Bekannte Shells sind die Bourne Shell (sh), Bash (Bourne Again Shell) und Zsh.
Portabilität durch C
Ein revolutionärer Schritt war die Entscheidung von Ken Thompson und Dennis Ritchie, den Unix-Kernel größtenteils in der neu entwickelten Programmiersprache C zu schreiben. Vorher wurden Betriebssysteme fast ausschließlich in Assembler geschrieben, was sie an spezifische Hardware band. Durch C konnte Unix relativ einfach auf neue Prozessor-Architekturen kompiliert werden, was seine rasche Verbreitung ermöglichte.
Geschichte und Verbreitung
Die frühen Jahre bei AT&T
In den 1970er Jahren durfte AT&T aufgrund eines Kartellurteils Unix nicht kommerziell als Produkt verkaufen, stellte den Quellcode aber Universitäten gegen eine geringe Gebühr zur Verfügung. Dies führte dazu, dass Unix an Universitäten (wie Berkeley) gelehrt, verbessert und weiterentwickelt wurde. Hier entstand die berühmte BSD-Variante (Berkeley Software Distribution), die viele moderne Netzwerk-Features (wie TCP/IP) einführte.
Kommerzialisierung und Fragmentierung
Als AT&T in den 1980er Jahren begann, Unix kommerziell zu vermarkten, entstanden zahlreiche proprietäre Varianten verschiedener Hersteller:
- AIX (IBM)
- HP-UX (Hewlett-Packard)
- Solaris (Sun Microsystems, später Oracle)
- IRIX (Silicon Graphics)
Dies führte zu einem „Unix-Krieg“, bei dem verschiedene Hersteller inkompatible Standards setzten, was die Entwicklung zeitweise verlangsamte.
Die Geburt von Linux und Open Source
Ende der 80er/Anfang der 90er Jahre suchte der Student Linus Torvalds nach einem freien Unix-ähnlichen System. Da der Unix-Quellcode von AT&T und den Universitäten urheberrechtlich geschützt und teuer war, schrieb er einen eigenen Kernel von Grund auf neu: Linux. Kombiniert mit den freien Werkzeugen des GNU-Projekts entstand so ein vollständig freies, Unix-ähnliches Betriebssystem. Linux übernahm die Unix-Philosophie und Architektur, ist aber technisch kein direktes Derivat des originalen AT&T-Codes.
Unix heute
Heute existiert Unix in zwei Hauptformen:
- Zertifiziertes Unix: Proprietäre Systeme, die die offiziellen „Single UNIX Specification“-Standards erfüllen und das Markenrecht „UNIX“ tragen dürfen (z. B. macOS von Apple, AIX, HP-UX, Solaris).
- Unix-ähnliche Systeme (Unix-like): Systeme, die wie Unix funktionieren, aber nicht zertifiziert sind. Dazu gehören Linux, Android, ChromeOS und die verschiedenen BSD-Varianten (FreeBSD, OpenBSD, NetBSD).
Bedeutung für die moderne IT
Ohne Unix gäbe es das moderne Internet in seiner heutigen Form wahrscheinlich nicht.
- Server-Infrastruktur: Der Großteil der Webserver, Cloud-Infrastrukturen und Supercomputer läuft unter Unix oder Linux.
- Mobile Geräte: iOS (iPhone) und Android basieren auf Unix-Kernen (Darwin bzw. Linux). Ihr Smartphone ist im Kern ein Unix-Computer.
- Entwicklungswerkzeuge: Die meisten Programmiersprachen, Datenbanken und Web-Technologien sind unter Unix entstanden oder laufen dort am effizientesten.
- Standardisierung: Viele Befehle (
ls,cp,grep,ssh) und Konzepte sind so tief verwurzelt, dass sie auch in nicht-Unix-Systemen (wie Windows PowerShell oder WSL) nachgebildet werden.
Fazit
Unix ist mehr als nur ein Betriebssystem; es ist das Fundament der modernen digitalen Welt. Seine Architektur, seine Philosophie der modularen Werkzeuge und seine Portabilität haben die Informatik revolutioniert. Auch wenn der Name „Unix“ im Alltag seltener fällt als „Linux“ oder „macOS“, steckt die DNA von Unix in fast jedem Gerät, das wir heute nutzen – vom Server im Rechenzentrum bis zum Smartphone in der Hosentasche. Es bleibt das stabilste, sicherste und einflussreichste Betriebssystem-Design, das je geschaffen wurde.