Unix

Unix
UNIX logo.svg
Simh-pdp11-unix-sysiii.png
UNIX -System III auf A laufen PDP-11 Simulator
Entwickler Ken Thompson, Dennis Ritchie, Brian Kernighan, Douglas McIlroy, und Joe Ossanna bei Bell Labs
Geschrieben in C und Montagesprache
OS -Familie Unix
Quellmodell Historisch proprietäre Software, während einige Unix -Projekte (einschließlich BSD Familie und Illumos) sind Open Source
Erstveröffentlichung Die Entwicklung begann 1969
Erstes Handbuch veröffentlicht im Inneren Im November 1971[1]
Ankündigung außerhalb von Bell Labs im Oktober 1973 angekündigt[2]
Verfügbar in Englisch
Kernel Typ Variiert; monolithisch, Mikrokernel, Hybrid
Beeinflusst von CTSS,[3] Mehrheit
Standard
Benutzeroberfläche
Befehlszeilenschnittstelle und Grafisch (Wayland und X Fenstersystem; Android Oberflächenflinger; Mac OS Quarz)
Lizenz Variiert; Einige Versionen sind proprietär, andere sind frei/Quelloffene Software
Offizielle Website www.opengroup.org/Mitgliedschaft/Foren/Plattform/Unix

Unix (/ˈjnɪks/; Markenzeichen als Unix) ist eine Familie von Multitasking, Multiuser Computer Betriebssysteme das stammt vom Original AT&T Unix, deren Entwicklung 1969 begann[1] Bei der Bell Labs Forschungszentrum von Ken Thompson, Dennis Ritchie, und andere.[4]

Anfangs für den Einsatz innerhalb der GlockensystemAT & T lizenziert Unix -zu externen Parteien Ende der 1970er Jahre, was zu einer Vielzahl von akademischen und kommerziellen Unix -Varianten von Anbietern führt Universität von Kalifornien, Berkeley (BSD), Microsoft (Xenix), Sun Microsystems (Sonnenos/Solaris), HP/HPE (HP-UX), und IBM (AIX). In den frühen neunziger Jahren verkaufte AT & T seine Rechte in Unix an Novell, was dann die UNIX -Marke an verkaufte Die offene Gruppe, ein Industriekonsortium, das 1996 gegründet wurde. Die offene Gruppe ermöglicht die Verwendung der Marke für zertifizierte Betriebssysteme, die dem entsprechen Einzel -Unix -Spezifikation (SUS).

UNIX -Systeme sind durch a gekennzeichnet modulares Design das wird manchmal als "genannt"Unix -Philosophie"Nach dieser Philosophie sollte das Betriebssystem eine Reihe einfacher Tools bereitstellen, von denen jede eine begrenzte, genau definierte Funktion ausführt.[5] Ein einheitliches und Inode-basierend Dateisystem (das Unix filesystem) und ein Interprozesskommunikation Mechanismus als "bekannt"Rohre"dienen als Hauptmittel der Kommunikation,[4] und ein Hülse Skript- und Befehlssprache (die Unix Shell) wird verwendet, um die Werkzeuge zur Durchführung komplexer Workflows zu kombinieren.

Unix unterscheidet sich von seinen Vorgängern als erste von den Vorgängern tragbar Betriebssystem: Fast das gesamte Betriebssystem ist in der geschrieben C Programmiersprache, was es Unix ermöglicht, auf zahlreichen Plattformen zu arbeiten.[6]

Überblick

Version 7 Unix, das Forschung Unix Vorfahr aller modernen Unix -Systeme

UNIX war ursprünglich eine bequeme Plattform für Programmierer, die Software entwickeln, die auf sie und auf anderen Systemen ausgeführt werden soll, und nicht für Nichtprogrammierer.[7][8][9] Das System wurde größer, als sich das Betriebssystem in akademischen Kreisen ausbreitete, und als Benutzer dem System ihre eigenen Tools hinzufügten und sie mit Kollegen teilten.[10]

Anfangs war Unix nicht so konzipiert tragbar[6] oder für Multitasking.[11] Später gewann Unix allmählich Portabilität, Multitasking und Multi-User Fähigkeiten in a Zeitteilung Aufbau. UNIX -Systeme sind durch verschiedene Konzepte gekennzeichnet: die Verwendung von einfacher Text zum Speichern von Daten; Ein hierarchischer Dateisystem; Behandlungsgeräte und bestimmte Arten von Interprozesskommunikation (IPC) als Dateien; und die Verwendung einer großen Anzahl von Software-Tools, kleine Programme, die durch a zusammen aufgereiht werden können Befehlszeilen-Interpreter Verwendung Rohreim Gegensatz zur Verwendung eines einzelnen monolithischen Programms, das alle dieselben Funktionen enthält. Diese Konzepte sind gemeinsam als "bekannt" bekannt "Unix -Philosophie". Brian Kernighan und Rob Pike Fassen Sie dies zusammen Die UNIX -Programmierumgebung als "die Idee, dass die Macht eines Systems mehr aus den Beziehungen zwischen den Programmen als von den Programmen selbst zurückzuführen ist".[12]

In den frühen 1980er Jahren betrachteten die Benutzer Unix als potenzielles universelles Betriebssystem, das für Computer aller Größen geeignet war.[13][14] Die Unix -Umgebung und die Kundenserver Programmmodell waren wesentliche Elemente bei der Entwicklung der Internet und die Umgestaltung des Computers wie zentriert in Netzwerke eher als in einzelnen Computern.

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

Das UNIX -Betriebssystem besteht aus vielen Bibliotheken und Versorgungsunternehmen zusammen mit dem Master Control -Programm, der Kernel. Der Kernel bietet Dienste an, um Programme zu starten und zu stoppen, die mit dem behandelt Dateisystem und andere gemeinsame "Aufgaben mit niedrigem Niveau", die die meisten Programme teilen, und den Zugriff auf den Zugriff, um Konflikte zu vermeiden, wenn Programme versuchen, gleichzeitig auf dieselbe Ressource oder das gleiche Gerät zuzugreifen. Um einen solchen Zugang zu vermitteln, hat der Kernel besondere Rechte, die sich in der Unterscheidung von widerspiegeln Kernelraum aus BenutzerraumLetzteres ist ein vorrangiger Bereich, in dem die meisten Anwendungsprogramme arbeiten.

Geschichte

Ken Thompson (sitzend) und Dennis Ritchie Zusammenarbeit bei a PDP-11

Die Ursprünge der Unix stammen aus Mitte der 1960er Jahre, wenn die Massachusetts Institute of Technology, Bell Labs, und General Electric entwickelten sich Mehrheit, a Zeitteilung Betriebssystem für die GE-645 Hauptrechner.[15] Mehrheit vorgestellt Mehrere Innovationen, aber auch schwerwiegende Probleme. Frustriert über die Größe und Komplexität von Mehrheitswesen, aber nicht durch ihre Ziele, zogen sich einzelne Forscher von Bell Labs aus dem Projekt zurück. Der letzte, der zu gehen war, waren Ken Thompson, Dennis Ritchie, Douglas McIlroy, und Joe Ossanna,[11] der beschloss, ihre Erfahrungen in einem neuen Projekt mit kleinerem Maßstab neu zu steigern. Dieses neue Betriebssystem war zunächst ohne organisatorische Unterstützung und auch ohne Namen.

Das neue Betriebssystem war ein Einzel-Tasking-System.[11] 1970 prägte die Gruppe den Namen Unics zum Uniplexed Informationen und Computerdienst Als ein Wortspiel an Mehrheit, was stand für Multiplexed Informationen und Computerdienste. Brian Kernighan Zucht die Idee an, fügt jedoch hinzu, dass sich "niemand erinnern kann" an den Ursprung der endgültigen Schreibweise Unix.[16] Dennis Ritchie,[11] Doug McIlroy,[1] und Peter G. Neumann[17] Auch Kreditkernighan.

Das Betriebssystem wurde ursprünglich geschrieben in MontagespracheAber 1973 wurde die Version 4 Unix in der Umgebung neu geschrieben C.[11] Version 4 Unix hatte jedoch noch viele PDP-11 Abhängige Codes und war nicht zum Portieren geeignet. Der erste Hafen einer anderen Plattform wurde fünf Jahre später (1978) für die Interdata 8/32.[18]

Bell Labs produzierten mehrere Versionen von Unix, die gemeinsam als als bezeichnet werden Forschung Unix. 1975 die erste Quelllizenz für Unix wurde verkauft an Donald B. Gillies Bei der Universität von Illinois Urbana -Kampagne Abteilung für Informatik (UIUC).[19] Der UIUC -Doktorand Greg Chesson, der im Unix -Kernel in Bell Labs gearbeitet hatte, war maßgeblich an der Aushandlung der Bedingungen der Lizenz beteiligt.[20]

In den späten 1970er und frühen 1980er Jahren führte der Einfluss der UNIX auf akademische Kreise zu einer großflächigen Einführung von UNIX (BSD und System v) durch kommerzielle Startups, die wiederum zu Unix-Fragmentierung in mehrere, ähnliche, aber oft leicht gegenseitig kompatible Systeme einschließlich der Dynix, HP-UX, Sonnenos/Solaris, AIX, und Xenix. In den späten 1980er Jahren AT & T. UNIX -Systemlabors und Sun Microsystems entwickelte System V Release 4 (SVR4), das anschließend von vielen kommerziellen Unix -Anbietern übernommen wurde.

In den 1990er Jahren Unix und Unix-artig Systeme wurden immer beliebter und wurden zum Betriebssystem der Wahl für Über 90% der weltweit besten Supercomputer der weltweit schnellsten Supercomputer,[21] als BSD und Linux Verteilungen wurden durch Zusammenarbeit durch ein weltweites Netzwerk von Programmierern entwickelt. Im Jahr 2000 hat Apple veröffentlicht Darwin, auch ein Unix -System, das zum Kern des Mac OS X -Betriebssystems wurde, später umbenannt Mac OS.[22]

Unix-ähnliche Betriebssysteme werden in der Moderne häufig eingesetzt Server, Arbeitsstationen, und mobile Geräte.[23]

Standards

In den späten 1980er Jahren wurde ein offenes Betriebssystem -Standardisierungsaufwand nun als nun bekannt als als Posix bildete eine gemeinsame Basis für alle Betriebssysteme; IEEE Basierte POSIX um die gemeinsame Struktur der wichtigsten konkurrierenden Varianten des UNIX -Systems und veröffentlichte 1988 den ersten POSIX -Standard Gemeinsame Open Software -Umgebung (Cose) Initiative, die schließlich zur Einzel -Unix -Spezifikation (Sus) verwaltet von Die offene Gruppe. Ab 1998 starteten die offene Gruppe und IEEE die Austin -Gruppe, um eine gemeinsame Definition von POSIX und der Einzel -UNIX -Spezifikation zu liefern, die bis 2008 zur offenen Gruppenbasisspezifikation geworden war.

1999 waren sich mehrere UNIX -Systemanbieter auf SVR4's einig Ausführbares und verknüpfbares Format (ELF) als Standard für Binär- und Objektcode -Dateien. Das gemeinsame Format ermöglicht eine erhebliche binäre Kompatibilität zwischen verschiedenen UNIX -Systemen, die auf derselben CPU -Architektur arbeiten.

Das Dateisystem Hierarchie 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 verpackt wurden. Durch Einbeziehung der Entwicklungsumgebung, Bibliotheken, Dokumente und dem tragbaren, veränderbaren Quellcode für alle diese Komponenten zusätzlich zur Kernel Unix war ein in sich geschlossenes Softwaresystem. Dies war einer der Hauptgründe, warum es sich um ein wichtiges Lehren- und Lerninstrument handelte und einen so breiten Einfluss hatte.[Nach wem?]

Die Einbeziehung dieser Komponenten machte das System nicht groß-die ursprüngliche V7 Unix-Verteilung, bestehend aus Kopien aller kompilierten Binärdateien sowie dem gesamten Quellcode und der Dokumentation, die weniger als 10 MB besetzt sind und auf einem einzigen neun-Track angekommen sind Magnetbandseinen Ruf als tragbares System verdienen.[24] Die gedruckte Dokumentation, Typenet aus den Online -Quellen, war in zwei Bänden enthalten.

Die Namen und Dateisystemorte der UNIX -Komponenten haben sich im gesamten Geschichte des Systems erheblich geändert. Trotzdem wird die V7 -Implementierung von vielen berücksichtigt[wer?] die kanonische frühe Struktur haben:

  • Kernel-Quellcode in /usr /sys, bestehend aus mehreren Unterkomponenten:
    • Conf-Konfiguration und maschinenabhängige Teile, einschließlich Startcode
    • Dev-Gerätetreiber für die Kontrolle der Hardware (und einige Pseudo-Hardware)
    • sys- Betriebssystem "Kernel", Speicherverwaltung, Prozessplanung, Systemaufrufe usw.
    • h-Header-Dateien, Definieren von Schlüsselstrukturen im System und wichtige systemspezifische Invariablen
  • Entwicklungsumgebung- Frühe Versionen von UNIX enthielten eine Entwicklungsumgebung, die ausreichte, um das gesamte System aus dem Quellcode nachzubilden:
    • ed- Texteditor zum Erstellen von Quellcodedateien
    • CC- - C Sprache Compiler (zuerst in V3 Unix erschien)
    • wie-Maschinensprachiger Assembler für die Maschine
    • ld- Linker zum Kombinieren von Objektdateien
    • lib-Objektcode-Bibliotheken (installiert in /lib oder /usr /lib). libcDie 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 Datenbankzugriff. V7 Unix stellte die erste Version der modernen "Standard -I/O" -Bibliothek vor stdio Als Teil der Systembibliothek. Spätere Implementierungen erhöhten die Anzahl der Bibliotheken erheblich.
    • machen- Build Manager (eingeführt in PWB/UNIX), um den Build -Prozess effektiv zu automatisieren
    • enthalten- Header -Dateien für Softwareentwicklung, Definieren von Standardschnittstellen und Systeminvarianten
    • Andere Sprachen-V7 UNIX enthielt einen FORTRAN-77-Compiler, einen programmierbaren willkürlichen Precision-Rechner (BC, DC), und die awk Skriptsprache; Spätere Versionen und Implementierungen enthalten viele andere Sprachkompiler und Toolsets. Frühe BSD -Veröffentlichungen enthalten Pascal Werkzeuge und viele moderne Unix -Systeme umfassen auch die GNU Compiler -Sammlung sowie oder anstelle eines proprietären Compiler -Systems.
    • Andere Werkzeuge-einschließlich eines Objekt-Code-Archivmanagers (ar), Symboltabelle Lister (nm), Compiler-Entwicklungswerkzeuge (z. Lex & yacc) und Debugging -Tools.
  • Befehle-UNIX unterscheidet kaum zwischen Befehlen (Programme auf Benutzerebene) für den Systembetrieb und die Wartung (z. Cron), Befehle des allgemeinen Nutzens (z. Grep) und allgemeinere Anwendungen wie das Textformatierung und das Typensatzpaket. Einige wichtige Kategorien sind jedoch:
    • Sch- Die "Shell" programmierbar Befehlszeilen-Interpreter, die primäre Benutzeroberfläche auf Unix, bevor Fenstersysteme angezeigt wurden, und sogar danach (innerhalb eines "Befehlsfensters").
    • Dienstprogramme- Das Kerntoolkit des UNIX -Befehlssatzes, einschließlich CP, ls, Grep, finden und viele andere. Unterkategorien umfassen:
      • Systemversorgungsunternehmen- Verwaltungswerkzeuge wie z. mkfs, fsck, und viele andere.
      • Benutzerversorger- Umweltmanagement -Tools wie z. Passwd, töten, und andere.
    • Dokumentformatierung- UNIX -Systeme wurden von Anfang an für die Vorbereitung von Dokumenten und die Typensetzung verwendet und umfassten viele verwandte Programme wie z. Nroff, TROFF, tbl, EQN, verweisen, und Bild. Einige moderne Unix -Systeme enthalten auch Pakete wie z. Tex und Ghostscript.
    • Grafik- das Handlung Das Subsystem stellte Einrichtungen zur Erzeugung einfacher Vektordiagramme in einem Geräts unabhängigen Format mit Gerätebetriebsdolmetschern zur Anzeige solcher Dateien bereit. Moderne Unix -Systeme umfassen auch im Allgemeinen auch X11 als Standardfenstersystem und GUIund viele Unterstützung OpenGL.
    • Kommunikation-Frühe UNIX-Systeme enthielten keine Kommunikation zwischen Systemen, umfassten jedoch die Kommunikationsprogramme für Inter-Benutzer Post und schreiben. V7 führte das frühe Kommunikationssystem mit Inter-Systemen ein UUCPund Systeme, die mit der BSD -Release 4.1c beginnen, enthalten TCP/IP Dienstprogramme.
  • Dokumentation-UNIX war das erste Betriebssystem, das alle Dokumentation online in maschinelles Lesbarempfehl enthielt. Die Dokumentation enthielt:
    • Mann- Handbuchseiten für jeden Befehl, Bibliothekskomponente, Systemanruf, Header -Datei usw.
    • Dokument- Längere Dokumente, in denen wichtige Subsysteme wie die C -Sprache und TROFF detailliert sind

Einfluss

Ken Thompson und Dennis Ritchie, Hauptentwickler von Forschung Unix
Foto von Usenix 1984, einschließlich Dennis Ritchie (Center)

Das UNIX -System hatte einen erheblichen Einfluss auf andere Betriebssysteme. Es erreichte seinen Ruf durch seine Interaktivität, indem es die Software mit einer nominalen Gebühr für den Bildungsnutzung bereitstellte, durch kostengünstige Hardware läuft und sich leicht anpassen und an verschiedene Maschinen wechselt. Unix wurde ursprünglich geschrieben in Montagesprache, wurde aber bald umgeschrieben C, a Programmiersprache auf hoher Ebene.[25] Obwohl dies der Führung von folgte CTSS, Mehrheit und Burroughs MCPEs war Unix, die die Idee populär machte.

Unix hatte ein drastisch vereinfachtes Dateimodell im Vergleich zu vielen zeitgenössischen Betriebssystemen: Behandlung aller Arten von Dateien als einfache Byte -Arrays. Die Dateisystemhierarchie enthielt Maschinendienste und -geräte (wie z. Drucker, Terminals, oder Laufwerke), die eine einheitliche Schnittstelle bereitstellen, aber auf Kosten gelegentlich zusätzliche Mechanismen wie z. ioctl und Modus -Flags, um auf Funktionen der Hardware zuzugreifen, die nicht zum einfachen "Stream of Bytes" -Modell passten. Das Plan 9 Das Betriebssystem drückte dieses Modell noch weiter und beseitigte die Notwendigkeit zusätzlicher Mechanismen.

Unix hat auch das hierarchische Dateisystem mit willkürlich verschachtelten Unterverzeichnissen populär gemacht, die ursprünglich durch Multics eingeführt wurden. Andere gängige Betriebssysteme der ERA hatten Möglichkeiten, ein Speichergerät in mehrere Verzeichnisse oder Abschnitte zu unterteilen, aber sie hatten eine feste Anzahl von Ebenen, häufig nur eine Ebene. Mehrere wichtige proprietäre Betriebssysteme fügten schließlich auch rekursive Subverdichterfunktionen hinzu, die auch nach mehreren mehreren strukturiert waren. Dez RSX-11m"Gruppe, Benutzer" -Hierarchie entwickelte sich zu OpenVMS Verzeichnisse, CP/mDie Volumina entwickelten sich zu MS-DOS 2,0+ Subditionorien und HPs MPE Group.Account Hierarchie und IBMs SSP und OS/400 Bibliothekssysteme wurden in breitere POSIX -Dateisysteme gefaltet.

Das Machen des Befehls-Dolmetschers zu einem gewöhnlichen Programm auf Benutzerebene mit zusätzlichen Befehlen als separate Programme war eine weitere Multics-Innovation, die von UNIX populär gemacht wurde. Das Unix Shell verwendete dieselbe Sprache für interaktive Befehle wie für das Skript (Shell -Skripte- Es gab keine separate Arbeitskontrollsprache wie die von IBM JCl). Da die Befehle von Shell und Betriebssystem "nur ein anderes 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 Befehlszeilen-Syntax von UNIX zum Erstellen modularer Ketten von Produzenten-Verbraucherprozessen (Pipelines) machte ein leistungsstarkes Programmierparadigma (Coroutinen) weit verbreitet. Viele spätere Befehlszeilen-Dolmetscher wurden von der Unix-Shell inspiriert.

Eine grundlegende Vereinfachung von Unix war der Fokus auf Neue Zeile-abgrenzt Text für fast alle Dateiformate. In der Originalversion von UNIX gab es keine "binären" Editoren - das gesamte System wurde mit den Befehlskripten von Text Shell konfiguriert. Der gemeinsame Nenner im I/A -System war das Byte - anders als "rekordbasierte" Dateisysteme. Der Fokus auf Text, um fast alles zu repräsentieren, machte Unix -Pipes besonders nützlich und förderte die Entwicklung einfacher, allgemeiner Werkzeuge, die leicht kombiniert werden könnten, um kompliziertere Leistungen zu erbringen ad hoc Aufgaben. Der Fokus auf Text und Bytes machte das System weitaus skalierbarer und tragbarer als andere Systeme. Im Laufe der Zeit haben sich textbasierte Anwendungen auch in Anwendungsbereichen wie Drucksprachen als beliebt erwiesen (z. B. Drucksprachen (PostScript, ODF) und auf der Anwendungsschicht der Internetprotokolle, z.B., Ftp, SMTP, Http, SEIFE, und SCHLUCK.

Unix hat eine Syntax für populär gemacht Reguläre Ausdrücke Das fand eine weit verbreitete Verwendung. Die UNIX -Programmierschnittstelle wurde zur Grundlage für einen weit verbreiteten Betriebssystem -Schnittstellenstandard (POSIX, siehe oben). Das C Programmiersprache Bald über UNIX hinaus verbreitet und jetzt allgegenwärtig in Systemen und Anwendungen.

Frühe Unix -Entwickler waren wichtig, um die Konzepte von zu bringen Modularität und Wiederverwendbarkeit hinein Softwareentwicklung Üben, eine Bewegung von "Softwaretools" laichen. Im Laufe der Zeit haben die führenden Entwickler von UNIX (und Programmen, die darauf ausgeführt) eine Reihe kultureller Normen für die Entwicklung von Software hergestellt, die genauso wichtig und einflussreich wurden wie die Technologie der UNIX selbst; Dies wurde als als bezeichnet Unix -Philosophie.

Das TCP/IP -Netzwerkprotokolle wurden schnell in den UNIX -Versionen implementiert Internet Explosion der weltweiten Echtzeitkonnektivität und die die Grundlage für Implementierungen auf vielen anderen Plattformen bildete.

Die UNIX-Richtlinie für umfangreiche Online-Dokumentation und (seit vielen Jahren) Bereitszugriff auf alle Systemquellencode erhöhte die Erwartungen des Programmierers und trug zum Start der bei Kostenlose Softwarebewegung 1983.

Kostenlose Unix- und Unix-ähnliche Varianten

Konsolen -Screenshots von Debian (Top, ein beliebter Linux -Verteilung) und Freebsd (unten, eine beliebte Unix-artig Betriebssystem)

1983,, Richard Stallman kündigte die an GNU (kurz für "GNU's NICHT UNIX") Projekt, eine ehrgeizige Bemühungen, a zu erstellen gratis Software Unix-artig System; "frei" in dem Sinne, dass jeder, der eine Kopie erhalten hat, frei zu verwenden, zu studieren, zu ändern und umzuverteilen. Das eigene Kernel -Entwicklungsprojekt des GNU -Projekts, Gnu Hurdhatte noch keinen funktionierenden Kernel produziert, sondern 1991 Linus Torvalds veröffentlichte die Linux Kernel als kostenlose Software unter der GNU Allgemeine öffentliche Lizenz. Zusätzlich zu ihrer Verwendung in der GNU Betriebssystem, viele GNU -Pakete - wie die GNU Compiler -Sammlung (und der Rest der GNU Toolchain), das GNU C -Bibliothek und die GNU -Kern -Dienstprogramme- Ich habe auch in anderen kostenlosen Unix -Systemen eine zentrale Rolle gespielt.

Linux -Verteilungen, bestehend aus dem Linux -Kernel und großen Sammlungen kompatibler Software, sind sowohl bei einzelnen Nutzern als auch im Geschäft populär geworden. Zu den beliebten Verteilungen gehören Red Hat Enterprise Linux, Fedora, SUSE Linux Enterprise, OpenSuse, Debian, Ubuntu, Linux Mint, Mandriva Linux, Slackware Linux, Arch Linux und Gentoo.[26]

Ein freies Derivat von BSD Unix, 386bs, wurde 1992 veröffentlicht und führte zur Netbsd und Freebsd Projekte. Mit der Siedlung von 1994 einer Klage gegen die University of California und Berkeley Software Design Inc. (USL v. BSDI) durch UNIX -SystemlaborsEs wurde klargestellt, dass Berkeley das Recht hatte, BSD Unix kostenlos zu verteilen, wenn dies gewünscht wurde. Seitdem wurde BSD UNIX in mehreren verschiedenen Produktzweigen entwickelt, einschließlich OpenBSD und Libelle BSD.

Linux und BSD erfüllen zunehmend den Marktbedarf traditionell von proprietären Unix -Betriebssystemen und expandieren in neue Märkte wie dem Verbraucherdesktop sowie mobilen und eingebetteten Geräte. Aufgrund des modularen Designs des UNIX -Modells ist das Teilen von Komponenten relativ häufig. Infolgedessen enthalten die meisten oder alle Unix- und Unix-ähnlichen Systeme zumindest einige BSD-Code, und einige Systeme enthalten auch GNU-Dienstprogramme in ihre Verteilungen.

In einem Interview von 1999 äußerte Dennis Ritchie seine Meinung, dass Linux- und BSD -Betriebssysteme eine Fortsetzung der Grundlage des UNIX -Designs sind und Ableitungen von UNIX sind:[27]

Ich denke, das Linux -Phänomen ist ziemlich entzückend, weil es so stark auf der Grundlage des Unix zieht. Linux scheint die gesündeste der direkten Unix -Derivate zu gehören, obwohl es auch die verschiedenen BSD -Systeme sowie die offiziellen Angebote der Hersteller von Workstation und Mainframe gibt.

Im selben Interview gibt er an, dass er sowohl Unix als auch Linux als "die Fortsetzung von Ideen, die von Ken und mir und vielen anderen vor vielen Jahren begonnen haben" betrachtet.[27]

OpenSolaris war das gratis Software Gegenstück zu Solaris entwickelt von Sun Microsystems, einschließlich a CDDL-lizenziert Kernel und ein in erster Linie GNU Userland. Jedoch, Orakel Das Projekt eingestellt nach dem Erwerb von Sun, das eine Gruppe ehemaliger Sun -Mitarbeiter und Mitglieder der OpenSolaris -Community zu OpenSolaris in die Fork -OpenSolaris veranlasste Illumos Kernel. Ab 2014 bleibt Illumos das einzige aktive Open-Source-System V Derivat.

Arpanet

Im Mai 1975 beschrieb RFC 681 die Entwicklung von Netzwerk Unix im Zentrum für fortgeschrittene Berechnung am Urbana-Champaign der Universität von Illinois.[28] Das UNIX -System soll "mehrere interessante Fähigkeiten als eine präsentieren Arpanet Mini-Host ". Zu dieser Zeit benötigte Unix eine Lizenz von Bell Telefonlabors Das kostete 20.000 US-Dollar für nicht-universitäre Institutionen, während die Universitäten eine Lizenz für eine nominale Gebühr von 150 USD erhalten könnten. Es wurde festgestellt, dass Bell "offen für Vorschläge" für eine arpanetweite Lizenz war.

Der RFC erwähnt ausdrücklich, dass UNIX "leistungsstarke lokale Verarbeitungseinrichtungen in Bezug auf Benutzerprogramme anbietet, mehrere Compiler, ein Editor bezogen auf Qed, ein vielseitiges Dokumentvorbereitungssystem und ein effizientes System Dateisystem mit hoch entwickelter Zugangskontrolle, montierbar und entzückende Volumes und eine einheitliche Behandlung von Peripheriegeräten als Sonderdateien. "Letzteres erlaubte das Netzwerkkontrollprogramm (NCP), um in das UNIX -Dateisystem zu integrieren, behandelt Netzwerkverbindungen Als Sonderdateien, auf die über Standard Unix zugegriffen werden könnte E/O -Anrufe, der den zusätzlichen Vorteil des Schließens aller Verbindungen zum Programmausgang enthielt, sollte der Benutzer dies vernachlässigen. Damit "die Menge an Code minimiert werden, die dem Basic Unix hinzugefügt wurde Kernel", Ein Großteil des NCP -Code lief in a austauschbar Benutzerprozess, nur bei Bedarf ausführen.[28]

Branding

HP9000 Arbeitsplatz laufend HP-UX, ein zertifiziertes UNIX -Betriebssystem

Im Oktober 1993, Novell, das Unternehmen, das die Rechte an der UNIX -System v -Quelle zu diesem Zeitpunkt besaß, übertragen die Warenzeichen von Unix zu der X/Open Company (jetzt Die offene Gruppe),[29] und verkaufte 1995 die damit verbundenen Geschäftsbetriebe an an Santa Cruz Operation (SCO).[30][31] Ob Novell auch das verkaufte Urheberrechte An die tatsächliche Software war 2006 Gegenstand einer Bundesklage, SCO v. Novell, was Novell gewann. Der Fall wurde Berufung eingelegt, aber am 30. August 2011 bestätigte das Berufungsgericht der Vereinigten Staaten für den Zehnten Kreis die Prozessentscheidungen und schloss den Fall.[32] UNIX -Anbieter SCO Group Inc. Angeklagter Novell von Verleumdung des Titels.

Der gegenwärtige Eigentümer der Marke Unix ist die offene Gruppe, ein Branchenstandardskonsortium. Nur Systeme entsprechen und zertifiziert mit und zertifiziert Einzel -Unix -Spezifikation qualifizieren sich als "Unix" (andere werden genannt "Unix-artig").

Nach Dekret der offenen Gruppe bezieht sich der Begriff "Unix" mehr auf eine Klasse von Betriebssystemen als auf eine spezifische Implementierung eines Betriebssystems. Diejenigen Betriebssysteme, die der einzelnen Unix -Spezifikation der offenen Gruppe erfüllen, sollten in der Lage sein, die zu tragen Unix 98 oder Unix 03 Marken sind heute, nachdem der Anbieter des Betriebssystems eine erhebliche Zertifizierungsgebühr und jährliche Marken -Lizenzgebühren für die offene Gruppe zahlt.[33] Zu den Systemen, die für die Verwendung der UNIX -Marke lizenziert wurden AIX,[34] Euleros,[35] HP-UX,[36] Inspire K-UX,[37] Irrix,[38] Mac OS,[39] Solaris,[40] Tru64 UNIX (ehemals "Digital Unix" oder OSF/1),[41] und Z/OS.[42] Insbesondere sind Euleros und Inspire K-UX Linux-Distributionen als UNIX 03-konform zertifiziert.[43][44]

Manchmal eine Darstellung wie Un*x, *Nix, oder *N? X wird verwendet, um alle Betriebssysteme ähnlich wie UNIX anzuzeigen. Dies ergibt sich aus der Verwendung des Sternchens (*) und die Frage markieren Charaktere als Platzhalterindikatoren in vielen Versorgungsunternehmen. Diese Notation wird auch verwendet, um andere UNIX-ähnliche Systeme zu beschreiben, die die Anforderungen für das Unix-Branding aus der offenen Gruppe nicht erfüllt haben.

Die offene Gruppe fordert das an Unix wird immer als Adjektiv verwendet, gefolgt von einem generischen Begriff wie z. System Um die Schaffung von a zu vermeiden Generalisiertes Markenzeichen.

Unix war die ursprüngliche Formatierung,[umstritten ] aber die Verwendung von Unix bleibt weit verbreitet, weil es einst Typset in war Kleine Kappen (Unix). Entsprechend Dennis Ritchie, bei der Präsentation des ursprünglichen Unix -Papiers dem dritten Betriebssystemsymposium des Amerikaners Verband für Rechenmaschinen (ACM), "Wir hatten einen neuen Typenetter und TROFF war gerade erfunden worden und wir waren berauscht, indem wir kleine Kappen produzieren konnten.[45] Viele der Vorgänger und Zeitgenossen des Betriebssystems verwendeten All-Oppercase-Schriftzug, so viele Menschen schrieben den Namen im oberen Fall aufgrund von Gewohnheitsgewalt. Es ist kein Akronym.[46]

Markennamen können von verschiedenen Unternehmen in verschiedenen Ländern registriert werden, und in einigen Ländern können in einigen Ländern denselben Markennamen von zwei verschiedenen Unternehmen kontrolliert werden, wenn jedes Unternehmen die Marke in leicht unterscheidbaren Kategorien verwendet. Das Ergebnis ist, dass UNIX als Markenname für verschiedene Produkte verwendet wurde, darunter Bücherregale, Tintenstifte, Flaschenkleber, Windeln, Haartrockner und Lebensmittelbehälter.[47]

Mehrere pluralische Formen von UNIX werden beiläufig verwendet, um sich auf mehrere Marken von Unix- und UNIX-ähnlichen Systemen zu beziehen. Am häufigsten ist das konventionelle Unixes, aber EinheitenUNIX als behandeln Latein Substantiv der dritte Deklination, ist auch beliebt. Die Pseudo-Anglo-Sachse Plural Unixen ist nicht häufig, obwohl gelegentlich gesehen. Sun MicrosystemsDer Entwickler der Solaris -Variante hat behauptet, dass der Begriff Unix ist selbst plural und verweist auf seine vielen Implementierungen.[48]

Siehe auch

Verweise

  1. ^ a b c McIlroy, M. D. (1987). A Research Unix Reader: Annotierte Auszüge aus dem Programmierhandbuch, 1971–1986 (PDF) (Technischer Bericht). Cstr. Bell Labs. 139. Archiviert (PDF) Aus dem Original am 11. November 2017.
  2. ^ Ritchie, D. M.; Thompson, K. (1974). "Das Unix Time-Sharing-System" (PDF). Kommunikation der ACM. 17 (7): 365–375. Citeseerx 10.1.1.118.1214. doi:10.1145/361011.361061. S2CID 53235982. Archiviert (PDF) Aus dem Original am 11. Juni 2015.
  3. ^ Ritchie, Dennis M. (1977). Das Unix Time-Sharing-System: eine Retrospektive (PDF). Zehnte Hawaii Internationale Konferenz über die Systemwissenschaften. Ein guter Fall kann vorgenommen werden, dass [UNIX] im Wesentlichen eine moderne Implementierung des CTSS -Systems von MIT ist
  4. ^ a b Ritchie, D.M.; Thompson, K. (Juli 1978). "Das Unix Time-Sharing-System". Glockensystemtechnologie. J. 57 (6): 1905–1929. Citeseerx 10.1.1.112.595. doi:10.1002/j.1538-7305.1978.tb02136.x. Abgerufen 9. Dezember, 2012.
  5. ^ Raymond, Eric (19. September 2003). Die Kunst der Unix -Programmierung. Addison-Wesley. ISBN 978-0-13-142901-7. Archiviert Aus dem Original am 12. Februar 2009. Abgerufen 9. Februar 2009.
  6. ^ a b Ritchie, Dennis M. (Januar 1993). "Die Entwicklung der C -Sprache" (PDF). Archiviert (PDF) Aus dem Original am 11. Juni 2015. Abgerufen 30. Juli 2022.
  7. ^ Raymond, Eric Steven (2003). "Die Elemente des Operationssystemstils". Die Kunst der Unix -Programmierung. Abgerufen 16. August, 2020.
  8. ^ Brand, Stewart (1984). Tandy/Radio Shack Book: Whole Earth Software -Katalog. ISBN 9780385191661. Unix wurde von Softwareentwicklern für Softwareentwickler erstellt, um sich eine Umgebung zu bieten, die sie vollständig manipulieren konnten.
  9. ^ Spolsky, Joel (December 14, 2003). "Bikulturalismus". Joel über Software. Abgerufen 21. März, 2021. Als Unix geschaffen wurde und als es seine kulturellen Werte bildete, Es gab keine Endbenutzer.
  10. ^ Kräfte, Shelley; Peek, Jerry; O'Reilly, Tim; Loukides, Mike (2002). Unix -Elektrowerkzeuge. ISBN 978-0-596-00330-2.
  11. ^ a b c d e Ritchie, Dennis M. "Die Entwicklung des Unix Time-Sharing-Systems" (PDF). Archiviert (PDF) Aus dem Original am 3. April 2017. Abgerufen 9. Januar 2017.
  12. ^ Kernighan, Brian W. Pike, Rob. Die UNIX -Programmierumgebung. 1984. viii
  13. ^ Fiedler, Ryan (Oktober 1983). "Das Unix -Tutorial / Teil 3: UNIX auf dem Mikrocomputer -Marktplatz". BYTE. p. 132. Abgerufen 30. Januar, 2015.
  14. ^ Brand, Stewart (1984). Tandy/Radio Shack Book: Whole Earth Software -Katalog. ISBN 9780385191661. Das Beste an Unix ist seine Portabilität. UNIX-Ports über eine ganze Reihe von Hardware-von dem Single-User 5000 IBM PC bis zum 5 Millionen US-Dollar-Cray. Zum ersten Mal wird der Stabilitätspunkt zur Softwareumgebung, nicht zur Hardwarearchitektur. UNIX überschreitet Änderungen in der Hardware -Technologie, sodass Programme, die für die Unix -Umgebung geschrieben wurden, in die nächste Generation von Hardware übergehen können.
  15. ^ Stuart, Brian L. (2009). Prinzipien der Betriebssysteme: Design & Anwendungen. Boston, Massachusetts: Thompson Learning. p. 23. ISBN 978-1-4188-3769-3.
  16. ^ Dolya, Aleksey (29. Juli 2003). "Interview mit Brian Kernighan". Linux Journal. Archiviert Aus dem Original am 18. Oktober 2017.
  17. ^ Rik Farrow. "Ein Interview mit Peter G. Neumann" (PDF). ;Anmeldung:. 42 (4): 38. Das führte dann zu Unics (die kastrierten Ein-Benutzer-Mehrheit, die aufgrund von Brian Kernighan so genannt wurde) später zu Unix (wahrscheinlich aufgrund von AT & T-Anwälten).
  18. ^ "Portabilität von C -Programmen und das UNIX -System". Glockenlabs.com. Abgerufen 24. August, 2018.
  19. ^ Thompson, Ken (16. September 2014). "Persönliche Mitteilung, Ken Thompson an Donald W. Gillies". UBC ECE -Website. Archiviert Aus dem Original am 22. März 2016.
  20. ^ Chesson, Greg (12. November 2014). "Persönliche Mitteilung, Greg Chesson an Donald W. Gillies". UBC ECE -Website. Archiviert Aus dem Original am 22. März 2016.
  21. ^ "Betriebssystemfamilie - Systeme teilen". Top 500 -Projekt.
  22. ^ "Wird geladen". Entwickler.apple.com. Archiviert Aus dem Original am 9. Juni 2012. Abgerufen 22. August 2012.
  23. ^ "Unix 'Rache". Asymco. 29. September 2010. Archiviert Aus dem Original am 9. November 2010. Abgerufen 9. November 2010.
  24. ^ "UNIX: Das Betriebssystem setzt neue Standards ein". Ionos digitalguide. Abgerufen 10. Mai, 2022.
  25. ^ Ritchie, Dennis (1979). "Die Entwicklung des Unix Time-Sharing-Systems". Bell Labs. Archiviert Aus dem Original am 11. Juni 2015. Abgerufen 30. April 2016. Die vielleicht wichtigste Wasserscheide ereignete sich 1973, als der Kernel des Betriebssystems in C umgeschrieben wurde.
  26. ^ "Hauptverteilungen". Distrowatch.com.
  27. ^ a b Benet, Manuel (1999). "Interview mit Dennis M. Ritchie". Linuxfocus.org. Archiviert Aus dem Original am 4. Januar 2018. Abgerufen 16. August 2020.
  28. ^ a b Holmgren, Steve (Mai 1975). Netzwerk Unix. Ietf. doi:10.17487/rfc0681. RFC 681. Abgerufen 22. April, 2021.
  29. ^ Chuck Karish (12. Oktober 1993). "Der Name Unix ist jetzt Eigenschaft von X/Open". Newsgroup:comp.std.unix. Usenet: [email protected]. Abgerufen 21. Februar, 2020.
  30. ^ "Novell vervollständigt den Verkauf des Unixware -Geschäfts an den Santa Cruz Operation | Micro Focus". www.novell.com. Archiviert vom Original am 20. Dezember 2015. Abgerufen 20. Dezember 2015.
  31. ^ "HP, Novell und SCO zur Bereitstellung von UNIX-Betriebssystemen mit hohem Volumen mit erweitertem Netzwerk- und Enterprise-Diensten". Novell.com. 20. September 1995. Archiviert Aus dem Original am 23. Januar 2007. Abgerufen 9. November, 2010.
  32. ^ Jones, Pamela. "SCO -Dateien locken Sie Anweisung und wir finden heraus, worum es bei seiner Attraktivität geht.". Groklaw. Graklaw.net. Abgerufen 12. April, 2011.
  33. ^ Die offene Gruppe. "Der offene Markengebührzeitplan". Archiviert vom Original am 31. Dezember 2011. Abgerufen 26. Dezember, 2011. Das Recht, die UNIX -Marke zu verwenden, muss der Lizenznehmer an die offene Gruppe zahlen, eine zusätzliche jährliche Gebühr, die gemäß der nachstehend aufgeführten Gebührentabelle berechnet wird.
  34. ^ Die offene Gruppe. "AIX 6 Betriebssystem V6.1.2 mit SP1 oder späterer Zertifizierung". Archiviert Aus dem Original am 8. April 2016.
  35. ^ Die Open Group (8. September 2016). "Huawei Euleros 2.0 Zertifizierung".
  36. ^ Die offene Gruppe. "HP-UX 11i V3 Release B.11.31 oder späterer Zertifizierung". Archiviert Aus dem Original am 8. April 2016.
  37. ^ Die offene Gruppe. "Inspur K-UX 2.0-Zertifizierung". Archiviert Aus dem Original am 9. Juli 2014.
  38. ^ Die offene Gruppe. "IRIX 6.5.28 mit Patches (4605 und 7029) Zertifizierung". Archiviert Aus dem Original am 4. März 2016.
  39. ^ "MacOS Version 10.12 Sierra auf Intel-basierten Mac-Computern". Die offene Gruppe. Archiviert Aus dem Original am 2. Oktober 2016.
  40. ^ Die offene Gruppe. "Oracle Solaris 11 FCS und spätere Zertifizierung". Archiviert Aus dem Original am 24. September 2015.
  41. ^ Bonnie Talerico. "Hewlett-Packard Company Conformance Statement". Die offene Gruppe. Archiviert Aus dem Original am 10. Dezember 2015. Abgerufen 8. Dezember, 2015.
  42. ^ Vivian W. Morabito. "IBM Corporation Conformance Statement". Die offene Gruppe. Abgerufen 21. Januar, 2018.
  43. ^ Peng Shen. "Huawei Konformitätserklärung". Die offene Gruppe. Abgerufen 22. Januar, 2020.
  44. ^ Peng Shen. "Huawei Konformitätserklärung: Befehle und Dienstprogramme v4". Die offene Gruppe. Abgerufen 22. Januar, 2020.
  45. ^ Raymond, Eric S. (Hrsg.). "Unix". Die Jargon -Datei. Archiviert Aus dem Original am 4. Juni 2011. Abgerufen 9. November, 2010.
  46. ^ Troy, Douglas (1990). UNIX -Systeme. Berechnung von Grundlagen. Benjamin/Cumming Publishing Company. p. 4. ISBN 978-0-201-19827-0.
  47. ^ "AuTRES UNIX, AUTRES MOEURS (Otherunix)". Glockenlabors. 1. April 2000. Archiviert Aus dem Original am 3. April 2017. Abgerufen 3. Januar, 2018.
  48. ^ "Geschichte der Solaris" (PDF). Archiviert (PDF) Aus dem Original am 18. März 2017. Unix ist plural. Es ist nicht ein Betriebssystem, sondern viele Implementierungen einer Idee, die 1965 stammt.

Weitere Lektüre

Allgemein
Bücher
Fernsehen
Gespräche

Externe Links