Unix
Unix
Das Betriebssystem, das die Welt veränderte – von den Bell Labs 1969 bis zu modernen BSD-Varianten, macOS und Enterprise-Systemen wie Solaris und AIX. Die Philosophie, Architektur und Varianten von Unix im Detail.
1. Was ist Unix?
Definition
Unix ist ein Multiuser-, Multitasking-Betriebssystem, das 1969 in den Bell Labs von AT&T entwickelt wurde. Es gilt als eines der einflussreichsten Betriebssysteme der Geschichte und bildet die Grundlage für Linux, macOS, BSD und zahlreiche Enterprise-Systeme.
Der Name „Unix" ist ein Wortspiel auf „Multics" (Multiplexed Information and Computing Service) – ein früheres Projekt, an dem Ken Thompson und Dennis Ritchie beteiligt waren. Unix wurde als einfachere, elegantere Alternative zu Multics konzipiert.
Heute bezeichnet „Unix" sowohl das ursprüngliche Betriebssystem als auch die Familie unixoider Betriebssysteme, die dessen Architektur und Philosophie übernommen haben. Der Begriff „UNIX®" ist eine eingetragene Marke der Open Group – nur zertifizierte Systeme dürfen offiziell „UNIX" heißen (z.B. macOS, AIX, Solaris).
Unix vs. Unixoid vs. Linux
- UNIX® (zertifiziert): macOS, AIX, Solaris, HP-UX – offiziell von der Open Group zertifiziert
- Unixoid (Unix-like): Linux, FreeBSD, OpenBSD – verhalten sich wie Unix, sind aber nicht zertifiziert
- Linux: Unixoider Kernel, erstellt von Linus Torvalds 1991 – kein Unix-Code, aber Unix-kompatibel
2. Die Geschichte von Unix
Von einem Nebenprojekt in den Bell Labs zum Fundament der modernen Computerwelt.
Die Geburt von Unix
Ken Thompson schreibt die erste Version von Unix auf einer PDP-7 in den Bell Labs. Das System ist als einfaches, elegantes OS für Programmierer gedacht.
Erste Unix-Manuals
Das erste Unix Programmer's Manual wird veröffentlicht. Unix wird auf eine PDP-11 portiert und intern bei AT&T eingesetzt.
Unix in C umgeschrieben
Dennis Ritchie und Ken Thompson schreiben Unix in der Programmiersprache C um – revolutionär, da Betriebssysteme bisher in Assembler geschrieben wurden. Dies ermöglicht Portabilität auf andere Hardware.
Unix an Universitäten
AT&T lizenziert Unix an Universitäten (da AT&T als Telefonmonopol keine Computer verkaufen darf). Die UC Berkeley beginnt mit der Entwicklung von BSD Unix.
BSD Unix
Die University of California, Berkeley veröffentlicht 1BSD – den Beginn der BSD-Linie, die TCP/IP, CSH und viele weitere Innovationen hervorbringt.
System V
AT&T veröffentlicht System V (SysV) als kommerzielle Unix-Version. Die „Unix Wars" zwischen BSD und SysV beginnen.
POSIX-Standard
IEEE veröffentlicht POSIX (Portable Operating System Interface) – ein Standard, der die Kompatibilität zwischen Unix-Systemen sicherstellt.
Linux entsteht
Linus Torvalds veröffentlicht den Linux-Kernel – ein unixoides Betriebssystem von Grund auf neu geschrieben. Beginn einer neuen Ära.
macOS (Mac OS X)
Apple veröffentlicht Mac OS X – basiert auf Darwin (BSD-Kern) und erhält die offizielle UNIX®-Zertifizierung.
3. Die Unix-Philosophie
Die Unix-Philosophie ist ein Satz von Prinzipien, die das Design und die Entwicklung von Unix und unixoiden Systemen leiten. Sie beeinflusst bis heute Software-Entwicklung weltweit.
Do One Thing and Do It Well
Jedes Programm soll genau eine Aufgabe erledigen – und diese so gut wie möglich. Keine „Schweizer-Taschenmesser"-Programme.
Pipes & Filter
Programme kommunizieren über Standard-Ein- und Ausgabe. Pipes (|) verbinden Programme zu mächtigen Werkzeugketten.
Everything is a File
Alles ist eine Datei – Hardware, Sockets, Prozesse. Dies vereinheitlicht den Zugriff auf alle Ressourcen.
Text als universelles Interface
Programme arbeiten mit Textdaten (Plain Text). Das macht sie kombinierbar, lesbar und debuggbar.
Shell als Programmierumgebung
Die Shell ist nicht nur ein Kommando-Interpreter, sondern eine vollständige Skriptsprache für Automatisierung.
Multiuser & Sicherheit
Unix wurde von Anfang an als Multiuser-System entworfen – mit strenger Trennung von Benutzerrechten und Prozessen.
4. Unix-Architektur
Unix folgt einer klaren Schichtenarchitektur. Jede Schicht hat eine definierte Aufgabe und kommuniziert nur mit den benachbarten Schichten.
Schichtenmodell von Unix
Anwendungsschicht (User Space)
Web-Server, Datenbanken, Editoren, Compiler, Benutzerprogramme
Shell & Systembibliotheken
Bash, Zsh, libc, POSIX-API – Schnittstelle zwischen User und Kernel
Kernel
Prozessverwaltung, Speicherverwaltung, Dateisystem, Netzwerk-Stack, Treiber
Hardware
CPU, RAM, Festplatten, Netzwerkkarten, Peripherie
Kernkomponenten des Unix-Kernels
- Prozess-Scheduler: Verwaltet CPU-Zeit für alle laufenden Prozesse
- Speicherverwaltung: Virtueller Speicher, Paging, Swap
- VFS (Virtual File System): Abstraktionsschicht für verschiedene Dateisysteme
- Netzwerk-Stack: TCP/IP-Implementierung
- System Calls: Definierte Schnittstelle zwischen User Space und Kernel (z.B. open(), read(), fork())
5. Unix-Varianten und Derivate
Die Unix-Familie hat sich in zwei Hauptlinien verzweigt: BSD (Berkeley Software Distribution) und System V (AT&T). Daraus entstanden zahlreiche Varianten.
FreeBSD
Die populärste BSD-Variante. Bekannt für hohe Performance, Stabilität und fortschrittliches Netzwerk- und Speichermanagement.
- BSD-Lizenz (sehr frei)
- ZFS-Dateisystem nativ
- Jails (Container-Technologie)
- Ports/Pkg-Paketverwaltung
- Basis für macOS (Darwin)
OpenBSD
Fokussiert auf Sicherheit und Korrektheit. Führt regelmäßige Code-Audits durch. Entwickelt OpenSSH, OpenSMTPD und PF.
- Proaktive Code-Audits
- OpenSSH (weltweiter Standard)
- PF Firewall
- W^X, ASLR, pledge/unveil
- Nur 2 Remote-Exploits in Jahrzehnten
NetBSD
Das portabelste Betriebssystem der Welt. Läuft auf mehr Hardware-Plattformen als jedes andere OS – von Supercomputern bis zu Toastern.
- 50+ Hardware-Plattformen
- Sauberer, portabler Code
- pkgsrc (portable Paketverwaltung)
- Ideal für Embedded Systems
- Grundlage für Forschung
Oracle Solaris
Ursprünglich von Sun Microsystems entwickelt. Pionier bei ZFS, DTrace, Zones und SMF. Jetzt von Oracle weitergeführt.
- ZFS (wurde hier erfunden)
- DTrace (dynamische Analyse)
- Solaris Zones (Container)
- SMF (Service Management)
- UNIX®-zertifiziert
IBM AIX
IBMs proprietäres Unix für Power Systems. Eines der stabilsten und leistungsfähigsten kommerziellen Unix-Systeme.
- LPAR (Logische Partitionierung)
- WPAR (Workload Partitions)
- JFS2-Dateisystem
- Live Partition Mobility
- UNIX®-zertifiziert
HP-UX
HPs proprietäres Unix für PA-RISC und Itanium. Stark im Enterprise-Umfeld, aber heute im Rückgang.
- vPar/nPar (Partitionierung)
- VxFS (Journaling File System)
- Serviceguard (HA-Cluster)
- Itanium-Unterstützung
- UNIX®-zertifiziert
macOS
Basierend auf Darwin (BSD-Kern + XNU). Das meistgenutzte zertifizierte UNIX® der Welt – durch die Verbreitung von Macs.
- Darwin-Kern (XNU + BSD)
- APFS-Dateisystem
- Zsh als Standard-Shell
- Homebrew-Paketverwaltung
- UNIX®-zertifiziert (Single UNIX Spec)
6. Unix vs. Linux – Die Unterschiede
Linux wird oft als „Unix" bezeichnet, ist aber technisch gesehen ein unixoides System. Hier die wichtigsten Unterschiede:
| Aspekt | Unix (klassisch) | Linux |
|---|---|---|
| Herkunft | AT&T Bell Labs (1969) | Linus Torvalds (1991) |
| Code-Basis | Original AT&T-Code | Von Grund auf neu geschrieben |
| Lizenz | Proprietär (kommerziell) | GPL (Open Source) |
| Kosten | Lizenzkosten (oft hoch) | Kostenlos (Support optional) |
| Kernel | Monolithisch (variiert) | Monolithisch mit Modulen |
| Zertifizierung | UNIX® (The Open Group) | Nicht zertifiziert (POSIX-kompatibel) |
| Hardware | Oft an Hersteller-Hardware gebunden | Läuft auf fast jeder Hardware |
| Dateisysteme | UFS, JFS, VxFS, ZFS (Solaris) | ext4, XFS, Btrfs, ZFS (via FUSE) |
| Shell | sh, ksh, csh | bash, zsh, fish |
| Init-System | init (SysV), SMF (Solaris) | systemd, SysVinit, OpenRC |
| Paketverwaltung | Herstellerspezifisch | apt, dnf, pacman, zypper |
| Verbreitung | Enterprise, Mainframe, Nischen | Server (90%+), Cloud, Desktop, Mobile |
Warum hat Linux Unix größtenteils verdrängt?
- Kostenlos: Keine Lizenzkosten – entscheidend für Cloud und Startups
- Open Source: Community-Entwicklung, schnelle Innovation
- Hardware-Unabhängig: Läuft auf x86, ARM, RISC-V, Power, s390x
- Cloud-Native: AWS, Azure, GCP basieren auf Linux
- Container-Revolution: Docker und Kubernetes sind Linux-native
Unix existiert weiterhin in Nischen: macOS (Desktop), AIX (SAP/Banken), Solaris (Legacy-Enterprise), FreeBSD (Netzwerk/Storage).
7. Unix-Standards und Spezifikationen
| Standard | Herausgeber | Beschreibung |
|---|---|---|
| POSIX (IEEE 1003.1) | IEEE / The Open Group | Standard für Betriebssystem-Schnittstellen (APIs, Shell, Utilities). Garantiert Portabilität zwischen unixoiden Systemen. |
| Single UNIX Specification | The Open Group | Erweitert POSIX. Nur Systeme, die diese bestehen, dürfen „UNIX®" heißen. |
| FHS (Filesystem Hierarchy Standard) | Linux Foundation | Standardisiert die Verzeichnisstruktur (/etc, /var, /usr, /home, etc.) |
| LSB (Linux Standard Base) | Linux Foundation | Standard für Linux-Distributionen (Bibliotheken, Init-System, Paketformate) |
8. Unix-Dateisystem-Hierarchie (FHS)
Unix verwendet eine einheitliche, baumartige Verzeichnisstruktur. Alles beginnt bei / (Root).
„Alles ist eine Datei"
Das Unix-Konzept „Everything is a file" bedeutet, dass nicht nur Dokumente, sondern auch Hardware-Geräte, Netzwerk-Sockets und Prozesse über das Dateisystem angesprochen werden. Beispiele:
/dev/sda– Erste Festplatte/dev/null– Das „Nichts" (verschluckt alle Daten)/proc/cpuinfo– CPU-Informationen/dev/random– Zufallszahlengenerator
9. Shell & Wichtige Befehle
Die Shell ist die Kommandozeilen-Schnittstelle von Unix. Sie interpretiert Benutzereingaben und führt Programme aus.
| Shell | Entwickler | Jahr | Besonderheit |
|---|---|---|---|
| sh (Bourne Shell) | Stephen Bourne | 1979 | Die Original-Unix-Shell, POSIX-Standard |
| bash | Brian Fox (GNU) | 1989 | Bourne Again Shell, Standard auf Linux |
| zsh | Paul Falstad | 1990 | Standard auf macOS, erweiterbar |
| ksh | David Korn (AT&T) | 1983 | Korn Shell, Standard auf AIX/Solaris |
| csh / tcsh | Bill Joy (BSD) | 1978 | C-ähnliche Syntax, BSD-Standard |
| fish | Axel Liljencrantz | 2005 | Benutzerfreundlich, Autovervollständigung |
Die wichtigsten Unix-Befehle
Die Macht der Pipes
Das Pipe-Zeichen | ist das Herzstück der Unix-Philosophie. Es verbindet Programme:
10. FAQ – Häufige Fragen & Antworten
Häufige Fragen zu Unix
Technisch nein, praktisch ja. Linux ist kein zertifiziertes UNIX® und enthält keinen Original-Unix-Code. Es wurde von Linus Torvalds von Grund auf neu geschrieben. Aber:
- Linux implementiert die POSIX-Spezifikation
- Linux verhält sich wie Unix (unixoid)
- Fast alle Unix-Tools und -Konzepte funktionieren unter Linux
- Im Alltag werden die Begriffe oft synonym verwendet
In Unix wird alles als Datei repräsentiert – auch Hardware und abstrakte Konzepte:
/dev/sda– Festplatte als Datei/dev/null– „Schwarzes Loch" (verwirft alle Daten)/proc/cpuinfo– CPU-Informationen als lesbare Datei/dev/random– Zufallszahlen als Datei/proc/[pid]– Prozessinformationen als Verzeichnis
Dadurch können Standard-Tools wie cat, grep und cp auf alles angewendet werden – egal ob Textdatei, Hardware oder Prozess.
Die zwei Hauptlinien der Unix-Entwicklung:
- BSD (Berkeley Software Distribution): Entwickelt an der UC Berkeley. Brachte TCP/IP, C-Shell, vi-Editor. Fokus auf Innovation und Freiheit. Heute: FreeBSD, OpenBSD, NetBSD.
- System V (SysV): Kommerzielle Version von AT&T. Brachte SysVinit, vi-Verbesserungen. Fokus auf Standardisierung und Enterprise. Heute: AIX, Solaris, HP-UX.
Moderne Systeme (einschließlich Linux) kombinieren Elemente aus beiden Linien.
macOS basiert auf Darwin, einem Open-Source-Betriebssystem, das den XNU-Kernel (eine Kombination aus Mach-Mikrokernel und BSD-Komponenten) verwendet.
Apple hat macOS offiziell nach der Single UNIX Specification zertifizieren lassen. Damit ist macOS ein offizielles UNIX® – und durch die Verbreitung von Macs das meistgenutzte zertifizierte Unix der Welt.
Ja, in wichtigen Bereichen:
- macOS: Millionen von Desktop-Nutzern (zertifiziertes UNIX®)
- AIX: SAP-Systeme, Banken, Versicherungen auf IBM Power Systems
- Solaris: Legacy-Enterprise-Systeme, Oracle-Datenbanken
- FreeBSD: Netflix CDN, Netzwerkinfrastruktur, Storage (ZFS)
- OpenBSD: Firewalls, sicherheitskritische Systeme
Allerdings hat Linux den Großteil des Unix-Marktes übernommen – besonders in Cloud, Web und Container-Umgebungen.
POSIX (Portable Operating System Interface) ist ein IEEE-Standard, der definiert:
- Systemaufrufe (open, read, write, fork, etc.)
- Shell-Syntax und Standard-Utilities
- Thread-APIs (Pthreads)
- Reguläre Ausdrücke
- Dateisystem-Verhalten
POSIX sorgt dafür, dass Software, die für ein unixoides System geschrieben wurde, auf anderen unixoiden Systemen mit minimalen Änderungen läuft. Ohne POSIX wäre die Portabilität zwischen Unix, Linux und macOS nicht möglich.
Eine Pipe (|) leitet die Ausgabe eines Programms als Eingabe an ein anderes Programm weiter. Dies ermöglicht das Kombinieren einfacher Tools zu komplexen Datenverarbeitungs-Pipelines:
Pipes sind das Herzstück der Unix-Philosophie: Kleine, spezialisierte Tools werden zu mächtigen Werkzeugketten kombiniert.
Für die meisten Menschen ist Linux die bessere Wahl:
- Kostenlos und überall verfügbar
- Große Community und Dokumentation
- Dominierend in Cloud, Server und DevOps
- Grundlage für Docker, Kubernetes, CI/CD
Unix-Kenntnisse lohnen sich, wenn Sie in bestimmten Branchen arbeiten: Banken (AIX), Oracle-Umgebungen (Solaris), Netzwerk-Sicherheit (OpenBSD) oder Apple-Entwicklung (macOS/Darwin).
Das Gute: Die Konzepte sind übertragbar. Wer Linux kann, versteht auch Unix – und umgekehrt. Die Shell-Befehle, Dateisystem-Hierarchie und Systemkonzepte sind weitgehend identisch.
Zusammenfassung
Die wichtigsten Punkte
- Unix (1969): Entwickelt in den Bell Labs – eines der einflussreichsten Betriebssysteme der Geschichte
- Philosophie: Do one thing well, Pipes, Everything is a File, Text als Interface
- Architektur: Schichtenmodell (Hardware → Kernel → Shell → Anwendungen)
- Zwei Linien: BSD (Berkeley) und System V (AT&T)
- Varianten: FreeBSD, OpenBSD, NetBSD, Solaris, AIX, HP-UX, macOS
- Linux: Unixoides System, von Grund auf neu geschrieben, hat Unix weitgehend verdrängt
- POSIX: Standard für Portabilität zwischen unixoiden Systemen
- Zertifiziertes UNIX®: macOS, AIX, Solaris – von der Open Group zertifiziert
- Einsatz heute: Enterprise-Nischen, macOS-Desktop, Netzwerk, Storage, Security
Weiterführende Themen
Das unixoides Betriebssystem im Detail – Distributionen, Verwaltung, Einsatz.
Zu LinuxApples zertifiziertes UNIX® – Architektur, Terminal, Homebrew.
Zu macOSDie wichtigsten Shell-Befehle für Unix, Linux und macOS.
Zu Terminal-BefehlenUFS, ZFS, ext4, APFS – Dateisysteme im Unix-Umfeld.
Zu Dateisystemen