Unix- Unix

Unix
Simh-pdp11-unix-sysiii.png
Unix System III läuft auf einem PDP-11- Simulator
Entwickler Ken Thompson , Dennis Ritchie , Brian Kernighan , Douglas McIlroy und Joe Ossanna bei Bell Labs
Geschrieben in C und Assemblersprache
Betriebssystemfamilie Unix
Quellmodell Historisch proprietäre Software , während einige Unix-Projekte (einschließlich der BSD- Familie und illumos ) Open Source sind
Erstveröffentlichung Entwicklung begann 1969
Erstes Handbuch intern veröffentlicht im November 1971 Veröffentlichung außerhalb von Bell Labs im Oktober 1973 ( 1971-11 )
 ( 1973-10 )
Verfügbar in Englisch
Kernel- Typ Variiert; monolithisch , mikrokernel , hybrid
Beeinflusst von Multics
Standard -
Benutzeroberfläche
Befehlszeilenschnittstelle und Grafik ( Wayland und X Window System ; Android SurfaceFlinger ; macOS Quartz )
Lizenz Variiert; einige Versionen sind proprietär , andere sind freie / Open-Source-Software
Offizielle Website Opengroup .org / Unix

Unix ( / j U n ɪ k s / , als markenrechtlich geschützte UNIX ) ist eine Familie von Multitasking , Multi - User - Computer - Betriebssystemen , die von der ursprünglich ableiten AT & T Unix, deren Entwicklung begann in den 1970er Jahren an dem Bell Labs Research Center von Ken Thompson , Dennis Ritchie und andere.

Ursprünglich für die Verwendung innerhalb des Bell-Systems gedacht , lizenzierte AT&T Unix in den späten 1970er Jahren an Dritte, was zu einer Vielzahl sowohl akademischer als auch kommerzieller Unix-Varianten von Anbietern wie University of California, Berkeley ( BSD ), Microsoft ( Xenix ), Sun Microsystems führte ( SunOS / Solaris ), HP / HPE ( HP-UX ) und IBM ( AIX ). Anfang der 1990er Jahre verkaufte AT&T seine Unix-Rechte an Novell , die dann 1995 ihr Unix-Geschäft an die Santa Cruz Operation (SCO) verkaufte. Die UNIX-Marke ging an The Open Group , ein 1996 gegründetes Industriekonsortium, das die Verwendung des Zeichens für zertifizierte Betriebssysteme, die der Single UNIX Specification (SUS) entsprechen. Novell besitzt jedoch weiterhin die Unix-Urheberrechte, was im Gerichtsverfahren SCO Group, Inc. gegen Novell, Inc. (2010) bestätigt wurde.

Unix-Systeme zeichnen sich durch einen modularen Aufbau aus , der manchmal als „ Unix-Philosophie “ bezeichnet wird. Gemäß dieser Philosophie sollte das Betriebssystem eine Reihe einfacher Werkzeuge bereitstellen, von denen jedes eine begrenzte, genau definierte Funktion erfüllt. Ein vereinheitlichtes und Inode- basiertes Dateisystem (das Unix-Dateisystem ) und ein Interprozess-Kommunikationsmechanismus , bekannt als " Pipes ", dienen als Hauptkommunikationsmittel, und eine Shell- Skript- und Befehlssprache (die Unix-Shell ) wird verwendet, um die Werkzeuge zu kombinieren komplexe Arbeitsabläufe durchzuführen.

Unix unterscheidet sich von seinen Vorgängern als erstes portables Betriebssystem: Nahezu das gesamte Betriebssystem ist in der Programmiersprache C geschrieben , wodurch Unix auf zahlreichen Plattformen betrieben werden kann.

Überblick

Version 7 Unix , der Forschungs-Unix- Vorfahre aller modernen Unix-Systeme

Unix war ursprünglich als bequeme Plattform für Programmierer gedacht, die Software entwickeln, die darauf und auf anderen Systemen ausgeführt werden soll, und nicht für Nicht-Programmierer. Das System wurde größer, als sich das Betriebssystem in akademischen Kreisen verbreitete und Benutzer ihre eigenen Tools zum System hinzufügten und sie mit Kollegen teilten.

Anfangs wurde Unix nicht für Portabilität oder Multitasking entwickelt . Später gewann Unix nach und nach Portabilität, Multitasking und Multi-User- Fähigkeiten in einer Time-Sharing- Konfiguration. Unix-Systeme zeichnen sich durch verschiedene Konzepte aus: die Verwendung von Klartext zum Speichern von Daten; ein hierarchisches Dateisystem ; Behandlung von Geräten und bestimmten Arten der Interprozesskommunikation (IPC) als Dateien; und die Verwendung einer großen Anzahl von Softwaretools , kleinen Programmen, die über einen Befehlszeileninterpreter mit Pipes aneinandergereiht werden können , im Gegensatz zur Verwendung eines einzigen monolithischen Programms, das die gleiche Funktionalität enthält. Diese Konzepte werden zusammenfassend als „ Unix-Philosophie “ bezeichnet. Brian Kernighan und Rob Pike fassen dies in The Unix Programming Environment zusammen als "die Idee, dass die Leistungsfähigkeit eines Systems mehr von den Beziehungen zwischen Programmen als von den Programmen selbst kommt".

In den frühen 1980er Jahren begannen die Benutzer, Unix als potenzielles universelles Betriebssystem zu sehen, das für Computer jeder Größe geeignet war. Die Unix-Umgebung und das Client-Server- Programmmodell waren wesentliche Elemente bei der Entwicklung des Internets und der Neugestaltung des Computers, der sich eher auf Netzwerke als auf einzelne Computer konzentrierte.

Sowohl Unix als auch die Programmiersprache C wurden von AT&T entwickelt und an staatliche und akademische Institutionen verteilt, was dazu führte, dass beide auf eine größere Vielfalt von Maschinenfamilien als jedes andere Betriebssystem portiert wurden.

Das Unix-Betriebssystem besteht aus vielen Bibliotheken und Dienstprogrammen zusammen mit dem Master-Steuerungsprogramm, dem Kernel . Der Kernel bietet Dienste zum Starten und Stoppen von Programmen, handhabt das Dateisystem und andere allgemeine "low-level"-Aufgaben, die die meisten Programme gemeinsam haben, und plant den Zugriff, um Konflikte zu vermeiden, wenn Programme gleichzeitig versuchen, auf dieselbe Ressource oder dasselbe Gerät zuzugreifen. Um einen solchen Zugriff zu vermitteln, hat der Kernel spezielle Rechte, die sich in der Unterscheidung zwischen Kernel-Raum und Benutzer-Raum widerspiegeln , wobei letzterer ein vorrangiger Bereich ist, in dem die meisten Anwendungsprogramme arbeiten.

Geschichte

Ken Thompson (sitzend) und Dennis Ritchie arbeiten zusammen an einem PDP-11

Die Ursprünge von Unix reichen bis in die Mitte der 1960er Jahre zurück, als das Massachusetts Institute of Technology , Bell Labs und General Electric Multics entwickelten , ein Timesharing- Betriebssystem für den Großrechner GE-645 . Multics bot mehrere Neuerungen , aber auch schwerwiegende Probleme. Frustriert von der Größe und Komplexität von Multics, aber nicht von seinen Zielen, begannen sich einzelne Forscher der Bell Labs aus dem Projekt zurückzuziehen. Die letzten, die gingen, waren Ken Thompson , Dennis Ritchie , Douglas McIlroy und Joe Ossanna , die beschlossen, ihre Erfahrungen in ein neues Projekt kleineren Maßstabs umzusetzen. Dieses neue Betriebssystem war zunächst ohne organisatorischen Rückhalt und auch ohne Namen.

Das neue Betriebssystem war ein Single-Tasking-System. 1970 prägte die Gruppe den Namen Unics für Uniplexed Information and Computing Service als Wortspiel mit Multics , das für Multiplexed Information and Computer Services stand . Brian Kernighan nimmt die Idee gut, fügt aber hinzu, dass sich "niemand an den Ursprung der endgültigen Schreibweise Unix erinnern kann" . Dennis Ritchie, Doug McIlroy und Peter G. Neumann schreiben Kernighan ebenfalls zu.

Das Betriebssystem wurde ursprünglich in Assembler geschrieben , aber 1973 wurde Version 4 Unix in C neu geschrieben . Version 4 Unix hatte jedoch noch viele PDP-11- abhängige Codes und war nicht für eine Portierung geeignet. Die erste Portierung auf eine andere Plattform erfolgte fünf Jahre später (1978) für die Interdata 8/32 .

1974 forderte Ken Robinson vom Department of Computer Science der University of New South Wales (UNSW) in Australien von Dennis Ritchie von Bell Labs eine Unix-Kopie für ihren PDP-11/40-Minicomputer an. Diese Installation von 1975 machte die UNSW zur ersten Universität außerhalb der Vereinigten Staaten, die Unix ausführte.

Bell Labs produzierte mehrere Versionen von Unix, die zusammen als Research Unix bezeichnet werden . 1975 wurde die erste Quelllizenz für UNIX an Donald B. Gillies von der University of Illinois at Urbana-Champaign Department of Computer Science (UIUC) verkauft. UIUC-Doktorand Greg Chesson, der bei Bell Labs am Unix-Kernel gearbeitet hatte, war maßgeblich an den Verhandlungen über die Lizenzbedingungen beteiligt.

In den späten 1970er und frühen 1980er Jahren führte der Einfluss von Unix in akademischen Kreisen zu einer groß angelegten Übernahme von Unix ( BSD und System V ) durch kommerzielle Start-ups, was wiederum dazu führte, dass Unix in mehrere, ähnliche, aber oft leicht inkompatibele Teile zersplitterte Systeme einschließlich DYNIX , HP-UX , SunOS / Solaris , AIX und Xenix . In den späten 1980er Jahren entwickelten AT&T Unix System Laboratories und Sun Microsystems System V Release 4 ( SVR4 ), das anschließend von vielen kommerziellen Unix-Anbietern übernommen wurde.

In den 1990er Jahren wurden Unix und Unix-ähnliche Systeme immer beliebter und wurden zum bevorzugten Betriebssystem für über 90% der 500 schnellsten Supercomputer der Welt , da BSD- und Linux- Distributionen durch die Zusammenarbeit eines weltweiten Netzwerks von Programmierern entwickelt wurden. Im Jahr 2000 veröffentlichte Apple Darwin , ebenfalls ein Unix-System, das zum Kern des Betriebssystems Mac OS X wurde, das später in macOS umbenannt wurde .

Unix-Betriebssysteme sind in modernen Servern , Workstations und mobilen Geräten weit verbreitet .

Normen

In den späten 1980er Jahren lieferte eine Standardisierungsbemühung für offene Betriebssysteme, die heute als POSIX bekannt ist , eine gemeinsame Basis für alle Betriebssysteme; IEEE- basiertes POSIX basiert auf der gemeinsamen Struktur der wichtigsten konkurrierenden Varianten des Unix-Systems und veröffentlichte 1988 den ersten POSIX-Standard. In den frühen 1990er Jahren begann ein Industriekonsortium, das Common Open Software Environment (COSE ) Initiative, die schließlich zur Single UNIX Specification (SUS) wurde, die von The Open Group verwaltet wird . Ab 1998 gründeten die Open Group und das IEEE die Austin Group , um eine gemeinsame Definition von POSIX und der Single UNIX Specification bereitzustellen, die bis 2008 zur Open Group Base Specification wurde.

Im Bemühen um Kompatibilität einigten sich 1999 mehrere Unix-Systemanbieter auf das Executable and Linkable Format (ELF) von SVR4 als Standard für Binär- und Objektcodedateien. Das gemeinsame Format ermöglicht eine beträchtliche Binärkompatibilität zwischen verschiedenen Unix-Systemen, die auf derselben CPU-Architektur arbeiten.

Der Filesystem Hierarchy Standard wurde erstellt, um ein Referenzverzeichnis-Layout für Unix-ähnliche Betriebssysteme bereitzustellen; es wurde hauptsächlich in Linux verwendet.

Komponenten

Das Unix-System besteht aus mehreren Komponenten, die ursprünglich zusammen gepackt wurden. Durch die Einbeziehung der Entwicklungsumgebung, Bibliotheken, Dokumente und des portablen, modifizierbaren Quellcodes für all diese Komponenten zusätzlich zum Kernel eines Betriebssystems war Unix ein in sich geschlossenes Softwaresystem. Dies war einer der Hauptgründe dafür, dass es sich zu einem wichtigen Lehr- und Lerninstrument entwickelt hat und einen so breiten Einfluss hatte.

Die Einbeziehung dieser Komponenten machte das System nicht groß – die ursprüngliche V7-UNIX-Distribution, bestehend aus Kopien aller kompilierten Binärdateien sowie des gesamten Quellcodes und der Dokumentation, belegte weniger als 10 MB und kam auf einem einzigen neunspurigen Magnetband an . Die gedruckte Dokumentation, die aus den Online-Quellen gesetzt wurde, war in zwei Bänden enthalten.

Die Namen und Dateisystemspeicherorte der Unix-Komponenten haben sich im Laufe der Geschichte des Systems erheblich geändert. Nichtsdestotrotz wird die V7-Implementierung von vielen als die kanonische frühe Struktur angesehen:

  • Kernel  – Quellcode in /usr/sys, bestehend aus mehreren Unterkomponenten:
    • conf  – konfigurations- und maschinenabhängige Teile, einschließlich Bootcode
    • dev  – Gerätetreiber zur Steuerung von Hardware (und einiger Pseudo-Hardware)
    • sys  – Betriebssystem "Kernel", Handhabung der Speicherverwaltung, Prozessplanung, Systemaufrufe usw.
    • h  – Header-Dateien, die Schlüsselstrukturen innerhalb des Systems und wichtige systemspezifische Invariablen definieren
  • Entwicklungsumgebung  – Frühe Versionen von Unix enthielten eine Entwicklungsumgebung, die ausreichte, um das gesamte System aus dem Quellcode neu zu erstellen:
    • cc  – C-Sprachcompiler (erstmals in V3 Unix erschienen)
    • as  – Maschinensprach-Assembler für die Maschine
    • ld  – Linker, zum Kombinieren von Objektdateien
    • lib  – Objektcode-Bibliotheken (installiert in /lib oder /usr/lib). libc , die Systembibliothek mit C-Laufzeitunterstützung, war die primäre Bibliothek, aber es gab immer zusätzliche Bibliotheken für Dinge wie mathematische Funktionen ( libm ) oder Datenbankzugriffe. V7 Unix führte die erste Version der modernen "Standard I/O"-Bibliothek stdio als Teil der Systembibliothek ein. Spätere Implementierungen erhöhten die Anzahl der Bibliotheken erheblich.
    • make  – Build-Manager (eingeführt in PWB/UNIX ), zur effektiven Automatisierung des Build-Prozesses
    • include  – Header-Dateien für die Softwareentwicklung, Definition von Standardschnittstellen und Systeminvarianten
    • Andere Sprachen  – V7 Unix enthielt einen Fortran-77-Compiler, einen programmierbaren Rechner mit beliebiger Genauigkeit ( bc , dc ) und die Skriptsprache awk ; spätere Versionen und Implementierungen enthalten viele andere Sprachcompiler und Toolsets. Frühe BSD-Releases enthielten Pascal- Tools, und viele moderne Unix-Systeme enthalten auch die GNU Compiler Collection sowie oder anstelle eines proprietären Compilersystems.
    • Andere Tools  – einschließlich eines Objektcode-Archivmanagers ( ar ), eines Symboltabellen-Listeners ( nm ), Compiler-Entwicklungstools (zB lex & yacc ) und Debugging-Tools.
  • Befehle  – Unix unterscheidet kaum zwischen Befehlen (Programme auf Benutzerebene) für Systembetrieb und -wartung (zB cron ), Befehlen von allgemeinem Nutzen (zB grep ) und allgemeineren Anwendungen wie dem Textformatierungs- und Satzpaket. Einige Hauptkategorien sind jedoch:
    • sh  – der "shell" programmierbare Kommandozeilen-Interpreter , die primäre Benutzeroberfläche unter Unix vor dem Erscheinen von Windows-Systemen und sogar danach (innerhalb eines "Befehlsfensters").
    • Dienstprogramme  – das Kernwerkzeug des Unix-Befehlssatzes, einschließlich cp , ls , grep , find und viele andere. Unterkategorien umfassen:
      • Systemdienstprogramme  – Verwaltungstools wie mkfs , fsck und viele andere.
      • Benutzerdienstprogramme  – Umgebungsverwaltungstools wie passwd , kill und andere.
    • Dokumentenformatierung  – Unix-Systeme wurden von Anfang an für die Dokumentenvorbereitung und für Satzsysteme verwendet und umfassten viele verwandte Programme wie nroff , troff , tbl , eqn , refer und pic . Einige moderne Unix-Systeme enthalten auch Pakete wie TeX und Ghostscript .
    • Grafiken  – Das Plot- Subsystem bietet Möglichkeiten zur Erstellung einfacher Vektorplots in einem geräteunabhängigen Format mit gerätespezifischen Interpretern zur Anzeige solcher Dateien. Moderne Unix-Systeme enthalten im Allgemeinen auch X11 als Standard-Fenstersystem und GUI , und viele unterstützen OpenGL .
    • Kommunikation  – Frühe Unix-Systeme enthielten keine Intersystem-Kommunikation, enthielten aber die Inter-User-Kommunikationsprogramme mail und write . V7 führte das frühe Intersystem -Kommunikationssystem UUCP ein , und Systeme, die mit BSD-Release 4.1c begannen, enthielten TCP/IP- Dienstprogramme.
  • Dokumentation  – Unix war das erste Betriebssystem, das seine gesamte Dokumentation online in maschinenlesbarer Form bereitstellte. Die Dokumentation beinhaltete:
    • man  – Handbuchseiten für jeden Befehl, jede Bibliothekskomponente, jeden Systemaufruf ,jedeHeaderdatei usw.
    • doc  – längere Dokumente, die wichtige Subsysteme detailliert beschreiben, wie die Sprache C und troff

Auswirkung

Ken Thompson und Dennis Ritchie , Hauptentwickler von Research Unix
Foto von USENIX 1984, darunter Dennis Ritchie (Mitte)
Plan 9 von Bell Labs erweitert die Designprinzipien von Unix und wurde als Nachfolger von Unix entwickelt.

Das Unix-System hatte einen erheblichen Einfluss auf andere Betriebssysteme. Es erlangte seinen Ruf durch seine Interaktivität, durch die Bereitstellung der Software gegen eine geringe Gebühr für Bildungszwecke, durch die Ausführung auf kostengünstiger Hardware und durch die einfache Anpassung und den Wechsel auf verschiedene Maschinen. Unix wurde ursprünglich in Assembler geschrieben , wurde aber bald in C , einer höheren Programmiersprache, umgeschrieben . Obwohl dies dem Beispiel von Multics und Burroughs folgte , war es Unix, das die Idee populär machte.

Unix hatte im Vergleich zu vielen modernen Betriebssystemen ein drastisch vereinfachtes Dateimodell: alle Arten von Dateien wurden als einfache Byte-Arrays behandelt. Die Dateisystemhierarchie enthielt Maschinendienste und -geräte (wie Drucker , Terminals oder Plattenlaufwerke ), die eine einheitliche Schnittstelle bereitstellten, jedoch auf Kosten gelegentlicher zusätzlicher Mechanismen wie ioctl- und Modus-Flags für den Zugriff auf Funktionen der Hardware erforderlich waren , die dies nicht taten passen Sie das einfache "Stream of Bytes"-Modell an. Das Betriebssystem Plan 9 hat dieses Modell noch weiter vorangetrieben und zusätzliche Mechanismen überflüssig gemacht.

Unix hat auch das hierarchische Dateisystem mit willkürlich verschachtelten Unterverzeichnissen populär gemacht, das ursprünglich von Multics eingeführt wurde. Andere gängige Betriebssysteme der Ära hatten Möglichkeiten, ein Speichergerät in mehrere Verzeichnisse oder Abschnitte zu unterteilen, aber sie hatten eine feste Anzahl von Ebenen, oft nur eine Ebene. Mehrere große proprietäre Betriebssysteme fügten schließlich rekursive Unterverzeichnisfunktionen hinzu, die ebenfalls nach Multics gemustert waren. DEC RSX-11M 's "Gruppe, Benutzer" Hierarchie in entwickelten OpenVMS Verzeichnisse, CP / M ' s Volumen entwickelte sich in MS-DOS 2.0+ Verzeichnisse und HP MPE group.account Hierarchie und IBMs SSP und OS / 400 - Bibliothekssysteme wurden gefaltet in breitere POSIX-Dateisysteme.

Den Befehlsinterpreter zu einem gewöhnlichen Programm auf Benutzerebene zu machen, wobei zusätzliche Befehle als separate Programme bereitgestellt werden, war eine weitere Multics-Innovation, die von Unix populär gemacht wurde. Die Unix-Shell verwendete für interaktive Befehle dieselbe Sprache wie für die Skripterstellung ( Shell-Skripte  – es gab keine separate Job-Steuerungssprache wie IBMs JCL ). Da die Shell- und OS-Befehle "nur ein weiteres Programm" waren, konnte der Benutzer seine eigene Shell auswählen (oder sogar schreiben). Neue Befehle könnten hinzugefügt werden, ohne die Shell selbst zu ändern. Die innovative Befehlszeilensyntax von Unix zum Erstellen modularer Ketten von Producer-Consumer-Prozessen ( Pipelines ) machte ein mächtiges Programmierparadigma ( Coroutinen ) allgemein verfügbar. Viele spätere Befehlszeileninterpreter wurden von der Unix-Shell inspiriert.

Eine grundlegende vereinfachenden Annahme von Unix war seinen Fokus auf Newline - begrenzt Text für fast alle Dateiformate. In der ursprünglichen Unix-Version gab es keine "binären" Editoren – das gesamte System wurde mit textuellen Shell-Befehlsskripten konfiguriert. Der gemeinsame Nenner im I/O-System war das Byte – im Gegensatz zu „record-based“ Filesystemen . Der Fokus auf Text zur Darstellung von fast allem machte Unix-Pipes besonders nützlich und förderte die Entwicklung einfacher, allgemeiner Werkzeuge, die leicht kombiniert werden konnten, um kompliziertere Ad-hoc- Aufgaben auszuführen. Der Fokus auf Text und Bytes machte das System weitaus skalierbarer und portabler als andere Systeme. Im Laufe der Zeit haben sich textbasierte Anwendungen auch sehr beliebt in Anwendungsbereichen, wie zum Beispiel Drucksprachen (bewährte Postscript , ODF ) und auf der Anwendungsschicht der Internet - Protokolle , zB FTP , SMTP , HTTP , SOAP und SIP .

Unix hat eine Syntax für reguläre Ausdrücke populär gemacht , die weit verbreitet ist. Die Unix-Programmierschnittstelle wurde zur Grundlage für einen weit verbreiteten Betriebssystem-Schnittstellenstandard (POSIX, siehe oben). Die Programmiersprache C verbreitete sich bald über Unix hinaus und ist heute in der System- und Anwendungsprogrammierung allgegenwärtig.

Frühe Unix-Entwickler waren wichtig, um die Konzepte der Modularität und Wiederverwendbarkeit in die Software-Engineering- Praxis zu bringen und eine "Software-Tools"-Bewegung hervorzubringen. Im Laufe der Zeit haben die führenden Unix-Entwickler (und Programme, die darauf liefen) eine Reihe kultureller Normen für die Entwicklung von Software aufgestellt, Normen, die so wichtig und einflussreich wurden wie die Technologie von Unix selbst; dies wurde als Unix-Philosophie bezeichnet .

Die TCP/IP-Netzwerkprotokolle wurden schnell auf den auf relativ preiswerten Computern weit verbreiteten Unix-Versionen implementiert, was zur Internetexplosion der weltweiten Echtzeit-Konnektivität beitrug und die Grundlage für Implementierungen auf vielen anderen Plattformen bildete.

Die Unix-Politik der umfassenden Online-Dokumentation und (seit vielen Jahren) des leichten Zugriffs auf den gesamten Systemquellcode weckte die Erwartungen der Programmierer und trug 1983 zum Start der Freie-Software-Bewegung bei.

Freies Unix und Unix-ähnliche Varianten

Konsolen-Screenshots von Debian (oben, eine beliebte Linux-Distribution ) und FreeBSD (unten, ein beliebtes Unix-ähnliches Betriebssystem)

1983 kündigte Richard Stallman das GNU- Projekt (kurz für "GNU's Not Unix") an, einen ehrgeizigen Versuch, ein Unix-ähnliches System mit freier Software zu schaffen ; "frei" in dem Sinne, dass jeder, der eine Kopie erhalten hat, diese frei verwenden, studieren, ändern und weitergeben kann. Das eigene Kernel-Entwicklungsprojekt des GNU- Projekts, GNU Hurd , hatte noch keinen funktionierenden Kernel produziert, aber 1991 veröffentlichte Linus Torvalds den Kernel Linux als freie Software unter der GNU General Public License . Neben ihrer Verwendung im GNU- Betriebssystem haben viele GNU-Pakete – wie die GNU Compiler Collection (und der Rest der GNU-Toolchain ), die GNU-C-Bibliothek und die GNU-Kern-Utilities  – in anderen Fällen eine zentrale Rolle gespielt auch freie Unix-Systeme.

Linux-Distributionen , bestehend aus dem Linux-Kernel und großen Sammlungen kompatibler Software, sind sowohl bei Privatanwendern als auch in Unternehmen beliebt geworden. Beliebte Distributionen sind Red Hat Enterprise Linux , Fedora , SUSE Linux Enterprise , openSUSE , Debian , Ubuntu , Linux Mint , Mandriva Linux , Slackware Linux , Arch Linux und Gentoo .

Ein freies Derivat von BSD Unix, 386BSD , wurde 1992 veröffentlicht und führte zu den NetBSD- und FreeBSD- Projekten. Mit der Beilegung einer Klage von Unix System Laboratories gegen die University of California und Berkeley Software Design Inc. ( USL gegen BSDi ) im Jahr 1994 wurde klargestellt , dass Berkeley das Recht hatte , BSD Unix auf Wunsch kostenlos zu verteilen . Seitdem wurde BSD Unix in verschiedenen Produktzweigen entwickelt, darunter OpenBSD und DragonFly BSD .

Linux und BSD erfüllen zunehmend die Marktbedürfnisse, die traditionell von proprietären Unix-Betriebssystemen bedient werden, und expandieren in neue Märkte wie Desktop-Computer und mobile und eingebettete Geräte für Verbraucher. Aufgrund des modularen Aufbaus des Unix-Modells ist die gemeinsame Nutzung von Komponenten relativ verbreitet; folglich enthalten die meisten oder alle Unix- und Unix-ähnlichen Systeme zumindest etwas BSD-Code, und einige Systeme enthalten auch GNU-Dienstprogramme in ihren Distributionen.

In einem Interview von 1999 äußerte Dennis Ritchie seine Meinung, dass Linux- und BSD-Betriebssysteme eine Fortsetzung der Basis des Unix-Designs und Derivate von Unix sind:

Ich finde das Linux-Phänomen ganz entzückend, weil es so stark auf der Basis basiert, die Unix zur Verfügung gestellt hat. Linux scheint unter den direkten Unix-Derivaten das gesündeste zu sein, aber es gibt auch die verschiedenen BSD-Systeme sowie die offizielleren Angebote der Workstation- und Mainframe-Hersteller.

Im selben Interview erklärt er, dass er sowohl Unix als auch Linux als "die Fortsetzung von Ideen ansieht, die von Ken und mir und vielen anderen vor vielen Jahren begonnen wurden".

OpenSolaris war das von Sun Microsystems entwickelte freie Software- Gegenstück zu Solaris , das einen CDDL- lizenzierten Kernel und ein hauptsächlich GNU- Benutzerland enthielt . Allerdings Oracle das Projekt auf ihre Übernahme von Sun, die aufgefordert , eine Gruppe ehemaliger Mitarbeiter von Sun und den Mitgliedern der Opensolaris - Community auf Gabel Open in den aufgegebenen Illumos - Kernel. Ab 2014 bleibt illumos das einzige aktive Open-Source-Derivat von System V.

ARPANET

Im Mai 1975 beschrieb RFC 681 die Entwicklung von Network Unix durch das Center for Advanced Computation an der University of Illinois Urbana-Champaign . Das Unix-System soll "als ARPANET- Mini-Host mehrere interessante Fähigkeiten bieten ". Zu dieser Zeit benötigte Unix eine Lizenz von Bell Telephone Laboratories , die für nichtuniversitäre Einrichtungen 20.000 US-Dollar kostete, während Universitäten eine Lizenz für eine Schutzgebühr von 150 US-Dollar erhalten konnten. Es wurde festgestellt, dass Bell „offen für Vorschläge“ für eine ARPANET-weite Lizenz sei.

Der RFC erwähnt ausdrücklich, dass Unix "leistungsstarke lokale Verarbeitungsmöglichkeiten in Bezug auf Benutzerprogramme, mehrere Compiler , einen auf QED basierenden Editor , ein vielseitiges Dokumentenvorbereitungssystem und ein effizientes Dateisystem mit ausgeklügelter Zugriffskontrolle, ein- und ausbaubaren Datenträgern bietet. und eine einheitliche Behandlung von Peripheriegeräten als spezielle Dateien ." Letzteres ermöglichte die Integration des Network Control Program (NCP) in das Unix-Dateisystem, das Netzwerkverbindungen als spezielle Dateien behandelte, auf die über Standard-Unix- I/O-Aufrufe zugegriffen werden konnte , was den zusätzlichen Vorteil beinhaltete, dass alle Verbindungen beim Beenden des Programms geschlossen wurden. sollte der Benutzer dies versäumen. Das modulare Design von Unix ermöglichte es ihnen, "die Menge an Code zu minimieren, die dem grundlegenden Unix- Kernel hinzugefügt wurde ", wobei ein Großteil des NCP-Codes in einem austauschbaren Benutzerprozess ausgeführt wurde, der nur bei Bedarf ausgeführt wurde.

Markenzeichen

HP9000 Workstation mit HP-UX , einem zertifizierten Unix-Betriebssystem

Im Oktober 1993 übertrug Novell , das zu dieser Zeit die Rechte an der Unix System V-Quelle besaß, die Marken von Unix an die X/Open Company (jetzt The Open Group ) und verkaufte 1995 die zugehörigen Geschäftsaktivitäten an Santa Cruz-Operation (SCO). Ob Novell auch die Urheberrechte an der eigentlichen Software verkaufte, war 2006 Gegenstand einer Bundesklage, SCO v. Novell , die Novell gewann. Gegen den Fall wurde Berufung eingelegt, aber am 30. August 2011 bestätigte das Berufungsgericht der Vereinigten Staaten für den zehnten Bezirk die Gerichtsentscheidungen und schloss den Fall. Der Unix-Anbieter SCO Group Inc. beschuldigte Novell der Titelverleumdung .

Der gegenwärtige Eigentümer der Marke UNIX ist The Open Group, ein Konsortium für Industriestandards. Nur Systeme, die vollständig mit der Single UNIX Specification kompatibel und zertifiziert sind, qualifizieren sich als "UNIX" (andere werden als " Unix-like " bezeichnet).

Laut Dekret von The Open Group bezieht sich der Begriff "UNIX" eher auf eine Klasse von Betriebssystemen als auf eine spezifische Implementierung eines Betriebssystems; Betriebssysteme, die die Single UNIX Specification von The Open Group erfüllen, sollten heute die Marken UNIX 98 oder UNIX 03 tragen können , nachdem der Anbieter des Betriebssystems eine beträchtliche Zertifizierungsgebühr und jährliche Markenlizenzgebühren an The Open Group gezahlt hat. Zu den Systemen, die für die Verwendung der Marke UNIX lizenziert wurden, gehören AIX , EulerOS , HP-UX , Inspur K-UX , IRIX , macOS , Solaris , Tru64 UNIX (früher „Digital UNIX“ oder OSF/1 ) und z/OS . Insbesondere EulerOS und Inspur K-UX sind Linux-Distributionen, die als UNIX 03-kompatibel zertifiziert sind.

Manchmal wird eine Darstellung wie Un*x , *NIX oder *N?X verwendet, um alle Betriebssysteme anzuzeigen, die Unix ähnlich sind. Dies kommt von der Verwendung des Sternchens ( * ) und der Fragezeichen als Platzhalterzeichen in vielen Dienstprogrammen. Diese Notation wird auch verwendet, um andere Unix-ähnliche Systeme zu beschreiben, die die Anforderungen für das UNIX-Branding der Open Group nicht erfüllen.

Die Open Group fordert, dass UNIX immer als Adjektiv gefolgt von einem Oberbegriff wie System verwendet wird , um die Schaffung einer generischen Marke zu vermeiden .

Unix war die ursprüngliche Formatierung, aber die Verwendung von UNIX bleibt weit verbreitet, da es früher in Kapitälchen ( Unix ) gesetzt wurde. Laut Dennis Ritchie , als wir das ursprüngliche Unix-Papier auf dem dritten Operating Systems Symposium der American Association for Computing Machinery (ACM) vorstellten , "hatten wir einen neuen Schriftsetzer, und troff war gerade erfunden worden und wir waren berauscht von der Fähigkeit, kleine Kappen". Viele der Vorgänger und Zeitgenossen des Betriebssystems verwendeten ausschließlich Großbuchstaben, so dass viele Leute den Namen aus Gewohnheit in Großbuchstaben schrieben. Es ist kein Akronym.

Markennamen können von verschiedenen Rechtsträgern in verschiedenen Ländern eingetragen werden und Markengesetze in einigen Ländern erlauben die Kontrolle desselben Markennamens durch zwei unterschiedliche Rechtsträger, wenn jede Rechtspersönlichkeit die Marke in leicht unterscheidbaren Kategorien verwendet. Das Ergebnis ist, dass Unix als Markenname für verschiedene Produkte verwendet wurde, darunter Bücherregale, Tintenstifte, Klebstoff in Flaschen, Windeln, Haartrockner und Lebensmittelbehälter.

Mehrere Pluralformen von Unix werden beiläufig verwendet, um auf mehrere Marken von Unix und Unix-ähnlichen Systemen zu verweisen. Am gebräuchlichsten ist das konventionelle Unix , aber auch Unices , das Unix als lateinisches Substantiv der dritten Deklination behandelt , ist ebenfalls beliebt. Die pseudo -angelsächsische Pluralform Unixen ist nicht üblich, obwohl sie gelegentlich vorkommt. Sun Microsystems , Entwickler der Solaris-Variante, hat behauptet, dass der Begriff Unix selbst ein Plural ist und sich auf seine vielen Implementierungen bezieht.

Siehe auch

Verweise

Weiterlesen

Allgemein
Bücher
Fernsehen
Gespräche

Externe Links