Betriebssystem

Ein Betriebssystem (OS) ist eine Reihe der Software, die Computerhardware-Mittel führt und stellen Sie allgemeine Dienstleistungen für Computerprogramme zur Verfügung. Das Betriebssystem ist ein Lebensbestandteil der Systemsoftware in einem Computersystem. Anwendungsprogramme verlangen, dass ein Betriebssystem fungiert.

Time-Sharing planen Betriebssysteme Aufgaben für den effizienten Gebrauch des Systems und können auch dafür verantwortlich seiend für Kostenzuteilung der Verarbeiter-Zeit, Massenlagerung, Druck und andere Mittel einschließen.

Für Hardware-Funktionen wie Eingang und Produktion und Speicherzuteilung ist das Betriebssystem zwischen Programmen und der Computerhardware Mittelsmann, obwohl der Anwendungscode gewöhnlich direkt durch die Hardware durchgeführt wird und oft ein System einer OS-Funktion wird zurufen oder dadurch unterbrochen werden lassen. Betriebssysteme können auf fast jedem Gerät gefunden werden, das einen Computer — von Autotelefonen und Videospiel-Konsolen zu Supercomputern und Webservern enthält.

Beispiele von populären modernen Betriebssystemen schließen Androiden, BSD, EIN/AUSGABE-STEUERSYSTEM, Linux, Mac OS X, Windows von Microsoft, Windows-Telefon und IBM z/OS ein. Alle teilen diese, außer Windows und z/OS, Wurzeln in UNIX.

Typen

Schritthaltender

Echtzeitbetriebssystem von:A ist ein stark mehrbeanspruchendes Betriebssystem, das darauf zielt, Echtzeitanwendungen durchzuführen. Echtzeitbetriebssysteme verwenden häufig spezialisierte Terminplanungsalgorithmen, so dass sie eine deterministische Natur des Verhaltens erreichen können. Das Hauptziel von Echtzeitbetriebssystemen ist ihre schnelle und voraussagbare Antwort auf Ereignisse. Sie haben einen Ereignis-gesteuerten oder Time-Sharing-Design und häufig Aspekte von beiden. Ein Ereignis-gesteuertes System schaltet zwischen Aufgaben um, die auf ihren Prioritäten oder Außenereignissen gestützt sind, während Time-Sharing Betriebssysteme auf Uhr-Unterbrechungen gestützte Aufgaben schaltet.

Mehrbenutzer

:A-Mehrbenutzer Betriebssystem erlaubt vielfachen Benutzern, auf ein Computersystem gleichzeitig zuzugreifen. Time-Sharing-System kann als Mehrbenutzersysteme klassifiziert werden, weil sie einen vielfachen Benutzerzugang zu einem Computer durch das Teilen der Zeit ermöglichen. Einzelbenutzerbetriebssysteme, im Vergleich mit einem Mehrbenutzer Betriebssystem, sind durch einen einzelnen Benutzer auf einmal verwendbar. Wenn es im Stande ist, vielfache Rechnungen auf Windows zu verwenden, macht Betriebssystem es ein Mehrbenutzersystem nicht. Eher ist nur der Netzverwalter der echte Benutzer. Aber für ein UNIX ähnliches Betriebssystem ist es für zwei Benutzer zur Anmeldung auf einmal möglich, und diese Fähigkeit zum OS macht es einen Mehrbenutzer Betriebssystem.

Gegen die Einzelprogrammverarbeitung stark mehrbeanspruchend

:When, den nur einem einzelnen Programm erlaubt wird, auf einmal, das System zu führen, wird unter einem Einzelprogrammverarbeitungssystem gruppiert. Jedoch, wenn das Betriebssystem die Ausführung von vielfachen Aufgaben auf einmal erlaubt, wird es als ein stark mehrbeanspruchendes Betriebssystem klassifiziert. Das Mehrbeschäftigen kann zwei Typen sein: Vorkaufs- oder kooperativ. In der präemptiven Multitasking schneidet das Betriebssystem die Zentraleinheitszeit auf und widmet ein Ablagefach jedem der Programme. Unix ähnliche Betriebssysteme wie Solaris und Linux unterstützen präemptive Multitasking, wie AmigaOS tut. Das kooperative Mehrbeschäftigen wird durch das Verlassen auf jeden Prozess erreicht, um Zeit den anderen Prozessen auf eine definierte Weise zu geben. 16-Bit-Versionen von Windows von Microsoft haben das kooperative Mehrbeschäftigen verwendet. 32-Bit-Versionen, sowohl Windows NT als auch Win9x, haben das Vorkaufsmehrbeschäftigen verwendet. Mac OS vor OS X hat gepflegt, das kooperative Mehrbeschäftigen zu unterstützen.

Verteilter

:A hat Betriebssystem verteilt führt eine Gruppe von unabhängigen Computern und lässt sie scheinen, ein einzelner Computer zu sein. Die Entwicklung von vernetzten Computern, die verbunden werden und mit einander kommunizieren konnten, hat verteilte Computerwissenschaft verursacht. Verteilte Berechnung wird auf mehr als einer Maschine ausgeführt. Wenn Computer in einer Gruppe in der Zusammenarbeit arbeiten, machen sie ein verteiltes System.

Eingebetteter

:Embedded Betriebssysteme werden entworfen, um in eingebetteten Computersystemen verwendet zu werden. Sie werden entworfen, um auf kleinen Maschinen wie PDAs mit weniger Autonomie zu funktionieren. Sie sind im Stande, mit einer begrenzten Zahl von Mitteln zu funktionieren. Sie sind sehr kompakt und durch das Design äußerst effizient. Windows CE und Minix 3 sind einige Beispiele von eingebetteten Betriebssystemen.

Zusammenfassung

Frühe Computer wurden gebaut, um eine Reihe von einzelnen Aufgaben wie eine Rechenmaschine durchzuführen. Betriebssysteme haben in ihren modernen und komplizierteren Formen bis zum Anfang der 1960er Jahre nicht bestanden. Grundlegende Betriebssystemeigenschaften wurden in den 1950er Jahren wie Residentmonitor-Funktionen entwickelt, die verschiedene Programme in der Folge automatisch führen konnten, um Verarbeitung zu beschleunigen. Hardware-Eigenschaften wurden hinzugefügt, der Gebrauch von Laufzeitbibliotheken, Unterbrechungen und paralleler Verarbeitung ermöglicht hat. Als Personalcomputer durch Gesellschaften wie Apple Inc., Atari, IBM und Amiga populär in den 1980er Jahren geworden sind, haben Verkäufer Betriebssysteme in sie eingeschlossen, die vorher weit verwendet auf dem Großrechner und den Minicomputern geworden waren.

Geschichte

In den 1940er Jahren hatten die frühsten elektronischen Digitalsysteme keine Betriebssysteme. Elektronische Systeme dieser Zeit waren im Vergleich zu denjenigen heute so primitiv, dass in Instruktionen häufig ins System ein Bit auf einmal auf Reihen von mechanischen Schaltern oder durch Springer-Leitungen auf Stecker-Ausschüssen eingegangen wurde. Das waren Systeme des speziellen Zwecks, die zum Beispiel Ballistik-Tische für das Militär erzeugt haben oder den Druck von Lohnliste-Kontrollen von Daten auf geschlagenen Papierkarten kontrolliert haben. Nachdem programmierbare allgemeine Zweck-Computer erfunden wurden, wurden Maschinensprachen (aus Reihen von binären Ziffern 0 und 1 auf dem geschlagenen Lochstreifen bestehend), eingeführt, der den Programmierprozess (Stern, 1981) beschleunigt hat.

Am Anfang der 1950er Jahre konnte ein Computer nur ein Programm auf einmal durchführen. Jeder Benutzer hat alleinigen Nutzen des Computers seit einer beschränkten Zeitspanne gehabt und würde in einer vorgesehenen Zeit mit dem Programm und den Daten auf geschlagenen Papierkarten ankommen und/oder hat Band geschlagen. Das Programm würde in die Maschine geladen, und die Maschine würde an die Arbeit gemacht, bis das Programm vollendet hat oder abgestürzt ist. Bei Programmen konnte allgemein über eine Frontplatte mit Knebelknopf-Schaltern und Tafel-Lichtern die Fehler beseitigt werden. Es wird gesagt, dass Alan Turing ein Master davon auf der frühen 1-Zeichen-Maschine von Manchester war, und er bereits die primitive Vorstellung eines Betriebssystems von den Grundsätzen der Universalen Maschine von Turing ableitete.

Spätere Maschinen sind mit Bibliotheken von Programmen gekommen, die mit einem Programm eines Benutzers verbunden würden, um bei Operationen solchem, wie eingegeben, und Produktion und Erzeugen-Computercode aus dem menschlich-lesbaren symbolischen Code zu helfen. Das war die Entstehung des modern-tägigen Computersystems. Jedoch haben Maschinen noch einen einzelnen Job auf einmal geführt. An der Universität von Cambridge in England war die Job-Warteschlange auf einmal eine Waschlinie, von der Bänder mit verschiedenen farbigen Wäscheklammern gehängt wurden, um Auftragspriorität anzuzeigen.

Großrechner

Im Laufe der 1950er Jahre wurde für viele Haupteigenschaften im Feld von Betriebssystemen, einschließlich Gruppe-Verarbeitung, Unterbrechung des Eingangs/Produktion, Pufferung, des Mehrbeschäftigens, des Spulens, der Laufzeitbibliotheken, des Verbindungsladens und der Programme den Weg gebahnt, um Aufzeichnungen in Dateien zu sortieren. Diese Eigenschaften wurden eingeschlossen oder in die Anwendungssoftware an der Auswahl von Anwendungsprogrammierern, aber nicht in einem getrennten durch alle Anwendungen verwendeten Betriebssystem nicht eingeschlossen. 1959 wurde das AKTIEN-Betriebssystem als ein einheitliches Dienstprogramm für IBM 704, und später in den 709 und 7090 Großrechnern veröffentlicht, obwohl es durch IBSYS/IBJOB auf den 709, 7090 und 7094 schnell verdrängt wurde.

Während der 1960er Jahre hat der OS/360 von IBM das Konzept eines einzelnen OS das Überspannen eines kompletten Erzeugnisses eingeführt, das für den Erfolg der Maschinen des Systems/360 entscheidend war. Der aktuelle Großrechner von IBM Betriebssysteme sind entfernte Nachkommen dieses ursprünglichen Systems und für OS/360 geschriebener Anwendungen, kann noch auf modernen Maschinen geführt werden.

OS/360 hat auch für das Konzept den Weg gebahnt, dass das Betriebssystem alle Systemmittel nachgeht, die, einschließlich Programms und Datenraumzuteilung im Hauptgedächtnis und Dateiraums in der sekundären Lagerung und Datei verwendet werden, die sich während der Aktualisierung schließen lässt. Wenn der Prozess aus irgendeinem Grund begrenzt wird, werden alle diese Mittel durch das Betriebssystem zurückgefordert.

Das alternative BEDIENUNGSFELD 67 System für S/360-67 angefangenen eine ganze Linie von IBM Betriebssysteme hat sich auf das Konzept virtueller Maschinen konzentriert. Andere auf Reihe-Großrechnern von IBM S/360 verwendete Betriebssysteme haben von IBM entwickelte Systeme eingeschlossen: WEIL/360 (Vereinbarkeitsbetriebssystem), DOS/360 (Plattenbetriebssystem), TSS/360 (Time-Sharing-System), TOS/360 (Band-Betriebssystem), BOS/360 (Grundlegendes Betriebssystem), und ACP (Luftfahrtgesellschaft-Kontrollprogramm), sowie einige Systeme von Nichtibm: MTS (Michiganer Endsystem), MUSIK (Mehrbenutzersystem für die Interaktive Computerwissenschaft), und ORVYL (Time-Sharing-System von Stanford).

Control Data Corporation hat das SPIELRAUM Betriebssystem in den 1960er Jahren für die Gruppe-Verarbeitung entwickelt. In der Zusammenarbeit mit der Universität Minnesotas, dem Kronos und später NO wurden Betriebssysteme während der 1970er Jahre entwickelt, die gleichzeitige Gruppe und Time-Sharing-Gebrauch unterstützt haben. Wie viele kommerzielle Time-Sharing-Systeme war seine Schnittstelle eine Erweiterung der Dartmouth GRUNDLEGENDEN Betriebssysteme, eine der Pionieranstrengungen im Time-Sharing und den Programmiersprachen. Gegen Ende der 1970er Jahre haben Kontrolldaten und die Universität Illinois den PLATO Betriebssystem entwickelt, das Plasmatafel-Anzeigen und Langstreckentime-Sharing-Netze verwendet hat. Plato war für seine Zeit bemerkenswert innovativ, Echtzeitchat und Mehrbenutzer grafische Spiele zeigend.

Burroughs Corporation hat den B5000 1961 mit dem MCP, (Master-Kontrollprogramm) Betriebssystem eingeführt. Der B5000 war eine Stapel-Maschine, die entworfen ist, um höhere Programmiersprachen ohne Maschinensprache oder Monteur exklusiv zu unterstützen, und tatsächlich war der MCP der erste OS, der exklusiv auf einer höheren Programmiersprache - ESPOL, ein Dialekt des Algols zu schreiben ist. MCP hat auch viele andere bahnbrechende Neuerungen, solcher als seiend die erste kommerzielle Durchführung des virtuellen Gedächtnisses eingeführt. Während der Entwicklung des AS400 hat IBM eine Annäherung an Burroughs gemacht, um MCP zu lizenzieren, auf der AS400 Hardware zu laufen. Dieser Vorschlag wurde vom Management von Burroughs geneigt, um seine vorhandene Hardware-Produktion zu schützen. MCP ist noch im Gebrauch heute in der Linie von Unisys ClearPath/MCP von Computern.

UNIVAC, der erste kommerzielle Computerhersteller, hat eine Reihe von EXEC Betriebssysteme erzeugt. Wie alle frühen Großrechner-Systeme war das ein Gruppe-orientiertes System, das magnetische Trommeln, Platten, Karte-Leser und Liniendrucker geführt hat. In den 1970er Jahren hat UNIVAC das System von Real-Time Basic (RTB) erzeugt, um groß angelegtes Time-Sharing, auch gestaltet nach dem Dartmouth v. Chr. System zu unterstützen.

General Electric und MIT haben General Electric Comprehensive Operating Supervisor (GECOS) entwickelt, der das Konzept beringter Sicherheitsvorzug-Niveaus eingeführt hat. Nach dem Erwerb durch Honeywell wurde es zu General Comprehensive Operating System (GCOS) umbenannt.

Digital Equipment Corporation hat viele Betriebssysteme für seine verschiedenen Computerlinien, einschließlich SPITZEN 10 und SPITZEN 20 Time-Sharing-Systeme für die PDP-10 36-Bit-Klassensysteme entwickelt. Vor dem weit verbreiteten Gebrauch von UNIX waren SPITZEN 10 ein besonders populäres System in Universitäten, und in der frühen ARPANET Gemeinschaft.

Gegen Ende der 1960er Jahre im Laufe des Endes der 1970er Jahre haben sich mehrere Hardware-Fähigkeiten entwickelt, der ähnlicher oder getragener Software erlaubt hat, auf mehr als einem System zu laufen. Frühe Systeme hatten Mikroprogrammierung verwertet, um Eigenschaften auf ihren Systemen durchzuführen, um verschiedenen zu Grunde liegenden Computerarchitekturen zu erlauben zu scheinen, dasselbe als andere in einer Reihe zu sein. Tatsächlich waren meiste 360s nach dem 360/40 (außer dem 360/165 und 360/168) mikroprogrammierte Durchführungen. Aber bald, wie man bewies, waren andere Mittel, Anwendungsvereinbarkeit zu erreichen, bedeutender.

Die enorme Investition in der Software für diese seit den 1960er Jahren gemachten Systeme hat die meisten ursprünglichen Computerhersteller veranlasst fortzusetzen, vereinbare Betriebssysteme zusammen mit der Hardware zu entwickeln. Der bemerkenswerte unterstützte Großrechner Betriebssysteme schließt ein:

Mikrocomputer

Die ersten Mikrocomputer hatten die Kapazität oder das Bedürfnis nach den wohl durchdachten Betriebssystemen nicht, die für Großrechner und minis entwickelt worden waren; minimalistic Betriebssysteme, wurden häufig geladene vom ROM und bekannte als Monitore entwickelt. Betriebssystem einer bemerkenswerter früher Platte war BEDIENUNGSFELD/M, das auf vielen frühen Mikrocomputern unterstützt wurde und durch das MS-DOS des Microsofts nah imitiert wurde, das wild populär als das Betriebssystem geworden ist, das für IBM PC gewählt ist (die Version von IBM davon wurde IBM DOS oder PC-DOS genannt). In den 80er Jahren hat Apple Computer Inc. (jetzt Apple Inc.) seine populäre Reihe der Apple II von Mikrocomputern aufgegeben, um den Computer des Apple Macintosh mit innovativer Graphical User Interface (GUI) dem Mac OS einzuführen.

Die Einführung des Spans von Intel 80386 CPU mit 32-Bit-Architektur und Paginierungsfähigkeiten, versorgten Personalcomputern mit der Fähigkeit, stark mehrbeanspruchende Betriebssysteme wie diejenigen von früheren Minicomputern und Großrechnern zu führen. Microsoft hat auf diesen Fortschritt durch die Einstellung von Dave Cutler geantwortet, der den VMS Betriebssystem für Digital Equipment Corporation entwickelt hatte. Er würde die Entwicklung von Windows NT Betriebssystem führen, das fortsetzt, als die Basis für die Betriebssystemlinie des Microsofts zu dienen. Steve Jobs, ein Mitbegründer von Apple Inc., hat NeXT Computer Inc. angefangen, die den Unix ähnlichen NEXTSTEP Betriebssystem entwickelt hat. NEXTSTEP würde später von Apple Inc. erworben und, zusammen mit dem Code von FreeBSD als der Kern von Mac OS X. verwendet

Das GNU-Projekt wurde mit dem Aktivisten und Programmierer Richard Stallman mit der Absicht eines ganzen Ersatzes der kostenlosen Software zum Eigentums-UNIX Betriebssystem angefangen. Während das Projekt im Kopieren der Funktionalität von verschiedenen Teilen von UNIX, Entwicklung des GNUS hoch erfolgreich war, hat sich Kern von Hurd erwiesen, unproduktiv zu sein. 1991 hat finnischer Informatik-Student Linus Torvalds, mit der Zusammenarbeit von Freiwilligen, die über das Internet zusammenarbeiten, die erste Version des Kerns von Linux veröffentlicht. Es wurde bald mit den GNU-Benutzerraumbestandteilen und der Systemsoftware verschmolzen, um ein ganzes Betriebssystem zu bilden. Seitdem ist die Kombination der zwei Hauptbestandteile gewöhnlich einfach "Linux" durch die Softwareindustrie, eine Namengeben-Tagung genannt geworden, dass Stallman und die Organisation zur Förderung freier Software entgegengesetzt bleiben, den Namen GNU/Linux bevorzugend. Der Softwarevertrieb von Berkeley, bekannt als BSD, ist die UNIX Ableitung, die von der Universität Kaliforniens, Berkeley verteilt ist, in den 1970er Jahren anfangend. Frei verteilt und getragen zu vielen Minicomputern hat es schließlich auch einen folgenden für den Gebrauch auf PCs, hauptsächlich als FreeBSD, NetBSD und OpenBSD gewonnen.

Beispiele von Betriebssystemen

UNIX und UNIX ähnliche Betriebssysteme

File:Unix geschichts-simple.png|256px|thumb|Evolution von Systemen von Unix

Verzug

</imagemap>

Ken Thompson hat B geschrieben, der hauptsächlich auf BCPL gestützt ist, den er gepflegt hat, Unix zu schreiben, der auf seiner Erfahrung im MULTICS-Projekt gestützt ist. B wurde durch C und Unix ersetzt, der in eine große, komplizierte Familie von in Wechselbeziehung stehenden Betriebssystemen entwickelt ist, die in jedem modernen Betriebssystem einflussreich gewesen sind (sieh Geschichte).

Die UNIX ähnliche Familie ist eine verschiedene Gruppe von Betriebssystemen, mit mehreren Hauptunterkategorien einschließlich des Systems V, BSD und GNU/Linux. Der Name "UNIX" ist eine Handelsmarke von Open Group, die es für den Gebrauch mit jedem Betriebssystem lizenziert, das sich wie man gezeigt hat, ihren Definitionen angepasst hat. "UNIX ähnlich" wird allgemein verwendet, um sich auf den großen Satz von Betriebssystemen zu beziehen, die dem ursprünglichen UNIX ähneln.

Unix ähnliche Systeme laufen auf einem großen Angebot an Computerarchitekturen. Sie werden schwer für Server im Geschäft, sowie Arbeitsplätze in akademischen und Technikumgebungen verwendet. Freie UNIX Varianten, wie GNU/Linux und BSD, sind in diesen Gebieten populär.

Vier Betriebssysteme werden durch Open Group (Halter der Handelsmarke von Unix) als Unix bescheinigt. Der HP-UX des HP und der AIX von IBM sind beide Nachkommen des ursprünglichen System V Unix und werden entworfen, um nur auf der Hardware ihres jeweiligen Verkäufers zu laufen. Im Gegensatz können Sonne-Mikrosysteme Solaris Operating System auf vielfachen Typen der Hardware, einschließlich x86 und Server von Sparc und PCs laufen. Mac OS X des Apfels, ein Ersatz für den Apfel früher (non-Unix) Mac OS, ist eine Hybride kernbasierte BSD Variante ist auf NeXTSTEP, Mach und FreeBSD zurückzuführen gewesen.

Zwischenfunktionsfähigkeit von Unix wurde durch das Herstellen des POSIX Standards gesucht. Der POSIX Standard kann auf jedes Betriebssystem angewandt werden, obwohl es für verschiedene Varianten von Unix ursprünglich geschaffen wurde.

BSD und seine Nachkommen

Eine Untergruppe der Familie von Unix ist die Softwarevertriebsfamilie von Berkeley, die FreeBSD, NetBSD, und OpenBSD, PC-BSD einschließt. Diese Betriebssysteme werden meistens auf webservers gefunden, obwohl sie auch als ein Personalcomputer OS fungieren können. Das Internet schuldet viel von seiner Existenz zu BSD, weil viele der durch Computer jetzt allgemein verwendeten Protokolle, um in Verbindung zu stehen, senden Sie und Daten über ein Netz erhalten Sie, wurden weit durchgeführt und hat sich in BSD verfeinert. Das World Wide Web wurde auch zuerst auf mehreren Computern demonstriert, die einen OS führen, der auf BSD genannt NextStep gestützt ist.

BSD hat seine Wurzeln in Unix. 1974, Universität Kaliforniens, hat Berkeley sein erstes System von Unix installiert. Mit der Zeit haben Studenten und Personal in der Informatik-Abteilung dort begonnen, neue Programme hinzuzufügen, um Dinge leichter wie Textaufbereiter zu machen. Als Berkely neue VAX Computer 1978 mit installiertem Unix erhalten hat, haben die Studenten der Schule Unix noch mehr modifiziert, um die Hardware-Möglichkeiten des Computers auszunutzen. Die Verteidigung hat sich die Fortgeschrittene Forschungsprojektagentur vom US-Verteidigungsministerium interessiert und hat sich dafür entschieden, das Projekt finanziell zu unterstützen. Viele Schulen, Vereinigungen und Regierungsorganisationen haben Notiz genommen und haben angefangen, die Version von Berkeley von Unix statt des offiziellen zu verwenden, der durch AT&T. verteilt ist

Steve Jobs, nach dem Verlassen von Apple Inc. 1985, hat NeXT Inc., eine Gesellschaft gebildet, die Computer des hohen Endes verfertigt hat, die auf einer Schwankung von BSD genannt NeXTSTEP laufen. Einer dieser Computer wurde von Tim Berners-Lee als der erste webserver verwendet, um das World Wide Web zu schaffen.

Entwickler wie Keith Bostic haben das Projekt gefördert, jeden nichtfreien Code zu ersetzen, der mit Glockenlaboratorien entstanden ist. Sobald das, jedoch, AT&T verklagt getan wurde. Schließlich, nach zwei Jahren von gesetzlichen Streiten, ist das BSD-Projekt vorn herausgekommen und hat mehrere freie Ableitungen, wie FreeBSD und NetBSD erzeugt.

Mac OS X

Mac OS X ist eine Linie von offenen grafischen Kernbetriebssystemen entwickelt, auf den Markt gebracht und verkauft von Apple Inc., von denen der letzte auf allen zurzeit Schiffscomputern von Macintosh vorgeladen wird. Mac OS X ist der Nachfolger des ursprünglichen Mac OS, der das primäre Betriebssystem des Apfels seit 1984 gewesen war. Verschieden von seinem Vorgänger ist Mac OS X ein UNIX Betriebssystem hat auf Technologie gebaut, die an NeXT im Laufe der zweiten Hälfte der 1980er Jahre entwickelt worden war und herauf bis den Apfel die Gesellschaft Anfang 1997 gekauft hat.

Das Betriebssystem wurde zuerst 1999 als Mac OS X Server 1.0, mit einer tischorientierten Version (Mac OS X v10.0 "Gepard") im Anschluss an im März 2001 veröffentlicht. Seitdem sind sechs verschiedenere "Kunden-" und "Server"-Ausgaben von Mac OS X, das neuste Wesen OS X 10.8" Silberlöwe veröffentlicht worden", der zuerst am 16. Februar 2012 für Entwickler bereitgestellt wurde, und zum Publikum späten Sommer 2012 veröffentlicht zu werden. Ausgaben von Mac OS X werden nach großen Katzen genannt.

Die Server-Ausgabe, Mac OS X Server, ist zu seinem Tischkollegen architektonisch identisch, aber läuft gewöhnlich auf der Linie des Apfels der Server-Hardware von Macintosh. Mac OS X Server schließt Arbeitsgruppenverwaltungs- und Regierungssoftwarewerkzeuge ein, die vereinfachten Zugang zu Schlüsselnetzdiensten, einschließlich eines Postübertragungsagenten, eines Samba-Servers, eines LDAP Servers, eines Domainname-Servers und anderer zur Verfügung stellen. In Mac OS X v10.7 Löwe sind alle Server-Aspekte von Mac OS X Server in die Kundenversion integriert worden.

Linux und GNU

Linux (oder GNU/Linux) ist ein Unix ähnliches Betriebssystem, das ohne jeden wirklichen Code von Unix, verschieden von BSD und seinen Varianten entwickelt wurde. Linux kann auf einer breiten Reihe von Geräten von Supercomputern bis Armbanduhren verwendet werden. Der Linux Kern wird laut einer offenen Quelllizenz veröffentlicht, so kann jeder lesen und seinen Code modifizieren. Es ist modifiziert worden, um auf einer großen Vielfalt der Elektronik zu laufen. Obwohl Schätzungen darauf hinweisen, dass Linux auf 1.82 % aller Personalcomputer verwendet wird, ist es für den Gebrauch in Servern und eingebetteten Systemen (wie Mobiltelefone) weit angenommen worden. Linux hat Unix in den meisten Plätzen ersetzt, und wird auf den 10 stärksten Supercomputern in der Welt verwendet. Der Linux Kern wird in etwas populärem Vertrieb, wie Roter Hut, Debian, Ubuntu, Linux Minze und der Androide von Google verwendet.

Das GNU-Projekt ist eine Massenkollaboration von Programmierern, die sich bemühen, ein völlig freies und offenes Betriebssystem zu schaffen, das Unix, aber mit dem völlig ursprünglichen Code ähnlich war. Es wurde 1983 von Richard Stallman angefangen, und ist für viele der Teile von den meisten Varianten von Linux verantwortlich. Tausende von Stücken der Software für eigentlich jedes Betriebssystem werden laut der GNU-Lizenz der Breiten Öffentlichkeit lizenziert. Inzwischen hat der Kern von Linux als ein Seitenprojekt von Linus Torvalds, einem Universitätsstudenten von Finnland begonnen. 1991 hat Torvalds Arbeit daran begonnen, und hat Information über sein Projekt über einen newsgroup für Computerstudenten und Programmierer angeschlagen. Er hat eine Welle der Unterstützung und Freiwilligen erhalten, die damit geendet haben, einen flüggen Kern zu schaffen. Programmierer vom GNU haben Notiz genommen, und Mitglieder von beiden Projekten haben gearbeitet, um die beendeten GNU-Teile mit dem Kern von Linux zu integrieren, um ein flügges Betriebssystem zu schaffen.

Google Chrom OS

Chrom ist ein Betriebssystem, das auf dem Kern von Linux gestützt ist und von Google entworfen ist. Da Chrom-OS Computerbenutzer ins Visier nimmt, die den grössten Teil ihrer Zeit im Internet verbringen, ist es hauptsächlich ein WWW-Browser ohne Fähigkeit, Anwendungen zu führen. Es verlässt sich auf Internetanwendungen (oder Web apps) verwendet im WWW-Browser, um Aufgaben wie Textverarbeitung und Mediabetrachtung, sowie rechnerabhängiger Speicher zu vollbringen, um die meisten Dateien zu versorgen.

Windows von Microsoft

Windows von Microsoft ist eine Familie von von Microsoft Corporation entworfenen Eigentumsbetriebssystemen, und in erster Linie ins Visier genommen zur Architektur von Intel hat Computer mit dem ungefähr 88.9 Prozent Gesamtgebrauch-Anteil auf verbundenen Computern des Webs gestützt. Die neueste Version ist Windows 7 für Arbeitsplätze und Windows-Server 2008 R2 für Server. Windows 7 hat kürzlich Windows XP als am meisten verwendeter OS eingeholt.

Windows von Microsoft ist 1985 als eine Anwendung entstanden, die oben auf dem MS-DOS läuft, das das Standardbetriebssystem war, das auf den meisten Architektur-Personalcomputern von Intel zurzeit verladen ist. 1995 wurde Windows 95 veröffentlicht, der nur MS-DOS als eine Stiefelstrippe verwendet hat. Für umgekehrt die Vereinbarkeit konnte Win9x MS-DOS der echten Weise und 16-Bit-Fahrer des Windows 3.x führen. Windows Ich, veröffentlicht 2000, war die letzte Version in der Win9x Familie. Spätere Versionen haben alle auf dem Kern des Windows NT basiert. Jetzige Versionen von Windows, das auf IA-32 und x86-64 Mikroprozessoren geführt ist, obwohl Windows 8 ARM-Architektur unterstützen wird. In der Vergangenheit hat Windows NT Architekturen von Nichtintel unterstützt.

Server-Ausgaben von Windows werden weit verwendet. In den letzten Jahren hat Microsoft bedeutendes Kapital ausgegeben, um den Gebrauch von Windows als ein Server Betriebsumgebung zu fördern. Jedoch ist der Gebrauch von Windows auf Servern nicht so weit verbreitet wie auf Personalcomputern, weil sich Windows gegen Linux und BSD für den Server-Marktanteil bewirbt.

Anderer

Es hat viele Betriebssysteme gegeben, die an ihrem Tag bedeutend waren, aber nicht mehr so wie AmigaOS sind; OS/2 von IBM und Microsoft; Mac OS, der non-Unix Vorgänger Mac OS X des Apfels; BeOS; XTS-300; RISC OS; MorphOS und FreeMint. Einige werden noch auf Nische-Märkten verwendet und setzen fort, als Minderheitsplattformen für Anhänger-Gemeinschaften und Fachmann-Anwendungen entwickelt zu werden. OpenVMS früher vom DEZ, ist noch unter der aktiven Entwicklung durch Hewlett Packard. Und doch werden andere Betriebssysteme fast exklusiv in der Akademie für die Betriebssystemausbildung verwendet oder Forschung über Betriebssystemkonzepte zu tun. Ein typisches Beispiel eines Systems, das beide Rollen erfüllt, ist MINIX, während zum Beispiel Eigenartigkeit rein für die Forschung verwendet wird.

Andere Betriebssysteme haben gescheitert, bedeutenden Marktanteil zu gewinnen, aber haben Neuerungen eingeführt, die Hauptströmung Betriebssysteme, nicht zuletzt Glockenlaboratorium-Plan 9 beeinflusst haben.

Bestandteile

Die Bestandteile eines Betriebssystems alle bestehen, um die verschiedenen Teile eines Computers zusammenarbeiten zu lassen. Die ganze Software — von Finanzdatenbanken bis Filmredakteure — muss das Betriebssystem durchgehen, um einige der Hardware, ob es zu verwenden, so einfach sein, wie eine Maus oder Tastatur oder Komplex als eine Internetverbindung.

Kern

Mithilfe vom firmware und den Gerät-Fahrern stellt der Kern das grundlegendste Niveau der Kontrolle über alle Hardware-Geräte des Computers zur Verfügung. Es führt Speicherzugang für Programme im RAM, es bestimmt, welche Programme Zugang bekommen, zu denen Hardware-Mitteln es sich niederlässt oder die Betriebszustände der Zentraleinheit für die optimale Operation zu jeder Zeit neu fasst, und es die Daten für die langfristige unvergängliche Lagerung mit Dateisystemen auf solchen Medien wie Platten, Bänder, Blitz-Gedächtnis usw. organisiert.

Programm-Ausführung

Das Betriebssystem stellt eine Schnittstelle zwischen einem Anwendungsprogramm und der Computerhardware zur Verfügung, so dass ein Anwendungsprogramm mit der Hardware nur durch das Befolgen Regeln und ins Betriebssystem programmierten Verfahren aufeinander wirken kann. Das Betriebssystem ist auch eine Reihe von Dienstleistungen, die Entwicklung und Ausführung von Anwendungsprogrammen vereinfachen. Die Durchführung eines Anwendungsprogramms ist mit der Entwicklung eines Prozesses durch den Betriebssystemkern verbunden, der Speicherraum und andere Mittel zuteilt, einen Vorrang für den Prozess im Mehrbeschäftigen von Systemen, Lastprogramm binärer Code ins Gedächtnis gründet, und Ausführung des Anwendungsprogramms beginnt, das dann mit dem Benutzer und mit Hardware-Geräten aufeinander wirkt.

Unterbrechungen

Unterbrechungen sind zu Betriebssystemen zentral, weil sie einen effizienten Weg für das Betriebssystem zur Verfügung stellen, um aufeinander zu wirken und auf seine Umgebung zu reagieren. Die Alternative — das Betriebssystem zu haben, "beobachtet" die verschiedenen Quellen des Eingangs für Ereignisse, die (abstimmen), die verlangen, dass Handlung — in älteren Systemen mit sehr kleinen Stapeln (50 oder 60 Bytes) gefunden werden kann, aber in modernen Systemen mit großen Stapeln ungewöhnlich ist. Unterbrechungsbasierte Programmierung wird durch die meisten modernen Zentraleinheiten direkt unterstützt. Unterbrechungen versorgen einen Computer mit einem Weg, automatisch lokale Register-Zusammenhänge zu sparen, und spezifischen Code als Antwort auf Ereignisse zu führen. Sogar sehr grundlegende Computer unterstützen Hardware-Unterbrechungen, und erlauben dem Programmierer, Code anzugeben, der geführt werden kann, wenn dieses Ereignis stattfindet.

Wenn eine Unterbrechung erhalten wird, hebt die Hardware des Computers automatisch beliebiges Programm auf, führt zurzeit, spart seinen Status, und führt mit der Unterbrechung vorher vereinigten Computercode; das ist dem Stellen eines Lesezeichens in einem Buch als Antwort auf einen Anruf analog. In modernen Betriebssystemen werden Unterbrechungen durch den Kern des Betriebssystems behandelt. Unterbrechungen können entweder aus der Hardware des Computers oder aus dem laufenden Programm kommen.

Wenn ein Hardware-Gerät eine Unterbrechung auslöst, entscheidet der Kern des Betriebssystems, wie man sich mit diesem Ereignis allgemein befasst, indem man einen in einer Prozession gehenden Code führt. Der Betrag des Codes, der wird führt, hängt vom Vorrang der Unterbrechung ab (zum Beispiel: Eine Person antwortet gewöhnlich auf eine Rauchmelder-Warnung, bevor sie ans Telefon geht). Die Verarbeitung von Hardware-Unterbrechungen ist eine Aufgabe, die gewöhnlich an die Software genannt Gerät-Fahrer delegiert wird, der entweder ein Teil des Kerns des Betriebssystems, ein Teil eines anderen Programms oder beide sein kann. Gerät-Fahrer können dann Information zu einem laufenden Programm durch verschiedene Mittel weitergeben.

Ein Programm kann auch eine Unterbrechung zum Betriebssystem auslösen. Wenn ein Programm auf Hardware zum Beispiel zugreifen möchte, kann es den Kern des Betriebssystems unterbrechen, der Kontrolle veranlasst, zurück zum Kern passiert zu werden. Der Kern wird dann die Bitte bearbeiten. Wenn ein Programm zusätzliche Mittel wünscht (oder Mittel verschütten möchte) wie Gedächtnis, wird es eine Unterbrechung auslösen, um die Aufmerksamkeit des Kerns zu bekommen.

Weisen

Moderne Zentraleinheiten unterstützen vielfache Verfahrensweisen. Zentraleinheiten mit dieser Fähigkeit verwenden mindestens zwei Weisen: geschützte Weise und Oberaufseher-Weise. Die Oberaufseher-Weise wird durch den Kern des Betriebssystems für Aufgaben der niedrigen Stufe verwendet, die uneingeschränkten Zugang zur Hardware wie das Steuern brauchen, wie Gedächtnis geschrieben und, und Kommunikation mit Geräten wie Grafikkarten gelöscht wird. Geschützte Weise wird im Gegensatz für fast etwas anderes verwendet. Anwendungen funktionieren innerhalb der geschützten Weise, und können nur Hardware durch das Kommunizieren mit dem Kern verwenden, der alles in der Oberaufseher-Weise kontrolliert. Zentraleinheiten könnten andere Weisen haben, die der geschützten Weise ebenso wie die virtuellen Weisen ähnlich sind, um mit älteren Verarbeiter-Typen, wie 16-Bit-Verarbeiter auf einem 32 Bit oder 32-Bit-Verarbeiter auf einem 64 Bit wettzueifern.

Wenn ein Computer zuerst aufspringt, läuft er in der Oberaufseher-Weise automatisch. Die ersten paar Programme, um auf dem Computer zu laufen, der BIOS oder EFI, bootloader, und das Betriebssystem seiend, haben unbegrenzten Zugang zur Hardware - und das ist erforderlich, weil, definitionsgemäß eine geschützte Umwelt initialisierend, nur außerhalb einer getan werden kann. Jedoch, wenn das Betriebssystem Kontrolle zu einem anderen Programm passiert, kann es die Zentraleinheit in die geschützte Weise legen.

In der geschützten Weise können Programme Zugang zu einem mehr beschränkten Satz der Instruktionen der Zentraleinheit haben. Ein Benutzerprogramm kann geschützte Weise verlassen, indem nur es eine Unterbrechung ausgelöst wird, Kontrolle veranlassend, zurück zum Kern passiert zu werden. Auf diese Weise kann das Betriebssystem exklusive Kontrolle über Dinge wie Zugang zur Hardware und dem Gedächtnis aufrechterhalten.

Der Begriff "hat Weise-Quelle geschützt" allgemein bezieht sich auf ein oder mehr Zentraleinheitsregister, die Information enthalten, die dem laufenden Programm nicht erlaubt wird zu verändern. Versuche, diese Mittel zu verändern, verursachen allgemein einen Schalter zur Oberaufseher-Weise, wo sich das Betriebssystem mit der unzulässigen Operation befassen kann, versuchte das Programm (zum Beispiel, durch die Tötung des Programms).

Speichermanagement

Unter anderem, eine Mehrprogrammierung Betriebssystemkern muss dafür verantwortlich sein, das ganze Systemgedächtnis zu führen, das zurzeit im Gebrauch durch Programme ist. Das stellt sicher, dass ein Programm Gedächtnis bereits im Gebrauch durch ein anderes Programm nicht stört. Seit dem Programm-Zeitanteil muss jedes Programm unabhängigen Zugang zum Gedächtnis haben.

Kooperatives Speichermanagement, das durch viele frühe Betriebssysteme verwendet ist, nimmt an, dass alle Programme freiwilligen Gebrauch des Speicherbetriebsleiters des Kerns machen, und ihr zugeteiltes Gedächtnis nicht überschreiten. Dieses System des Speichermanagements wird fast mehr nie gesehen, da Programme häufig Programmfehler enthalten, die sie veranlassen können, ihr zugeteiltes Gedächtnis zu überschreiten. Wenn ein Programm scheitert, kann es durch ein oder mehr andere Programme verwendetes Gedächtnis veranlassen, betroffen oder überschrieben zu werden. Böswillige Programme oder Viren können das Gedächtnis eines anderen Programms zweckmäßig verändern, oder können die Operation des Betriebssystems selbst betreffen. Mit dem kooperativen Speichermanagement nimmt es nur ein haben sich Programm schlecht benommen, um das System zu zertrümmern.

Speicherschutz ermöglicht dem Kern, einen Zugang eines Prozesses zum Gedächtnis des Computers zu beschränken. Verschiedene Methoden des Speicherschutzes, bestehen einschließlich der Speichersegmentation und Paginierung. Alle Methoden verlangen ein Niveau der Hardware-Unterstützung (wie die 80286 MMU), der in allen Computern nicht besteht.

Sowohl in der Segmentation als auch in Paginierung geben bestimmte geschützte Weise-Register zur Zentraleinheit an, welche Speicheradresse es einem laufenden Programm dem Zugang erlauben sollte. Versuche, auf andere Adressen zuzugreifen, werden eine Unterbrechung auslösen, die die Zentraleinheit veranlassen wird, in Oberaufseher-Weise wiedereinzugehen, den verantwortlichen Kern legend. Das wird eine Segmentationsübertretung oder Seg-V für den kurzen genannt, und da es sowohl schwierig ist, ein bedeutungsvolles Ergebnis solch einer Operation zuzuteilen, als auch weil es gewöhnlich ein Zeichen eines sich schlecht benehmenden Programms ist, wird der Kern allgemein das Begrenzen des verstoßenden Programms aufsuchen, und wird den Fehler ausgeben.

Windows 3.1 - Ich hatte ein Niveau des Speicherschutzes, aber Programme konnten das Bedürfnis leicht überlisten, es zu verwenden. Eine allgemeine Schutzschuld würde erzeugt, anzeigend, dass eine Segmentationsübertretung vorgekommen war; jedoch würde das System häufig irgendwie abstürzen.

Virtuelles Gedächtnis

Der Gebrauch des virtuellen Speicherwendens (wie Paginierung oder Segmentation) bedeutet, dass der Kern das wählen kann, welches Gedächtnis jedes Programm zu jeder vorgegebenen Zeit verwenden kann, dem Betriebssystem erlaubend, dieselben Speicherpositionen für vielfache Aufgaben zu verwenden.

Wenn ein Programm versucht, auf Gedächtnis zuzugreifen, das nicht in seiner aktuellen Reihe des zugänglichen Gedächtnisses ist, aber dennoch ihm zugeteilt worden ist, wird der Kern ebenso unterbrochen, wie es würde, wenn das Programm sein zugeteiltes Gedächtnis überschreiten sollte. (Sieh Abteilung auf dem Speichermanagement.) Unter UNIX wird diese Art der Unterbrechung eine Seitenschuld genannt.

Wenn der Kern eine Seitenschuld entdeckt, wird er allgemein die virtuelle Speicherreihe des Programms anpassen, das ihn ausgelöst hat, ihm Zugang zum gebetenen Gedächtnis gewährend. Das übergibt durch die Kernermessensmacht, wo ein Gedächtnis einer besonderen Anwendung, oder sogar versorgt wird, ob es wirklich noch zugeteilt worden ist.

In modernen Betriebssystemen kann Gedächtnis, auf das weniger oft zugegriffen wird, auf der Platte oder den anderen Medien provisorisch versorgt werden, um diesen Raum für den Gebrauch durch andere Programme bereitzustellen. Das wird genannt tauschend, weil ein Gebiet des Gedächtnisses durch vielfache Programme verwendet werden kann, und was dieser Speicherbereich enthält, kann getauscht oder auf Verlangen ausgetauscht werden.

"Virtuelles Gedächtnis" versorgt den Programmierer oder den Benutzer mit der Wahrnehmung, dass es einen viel größeren Betrag des RAM im Computer gibt, als wirklich dort ist.

Das Mehrbeschäftigen

Das Mehrbeschäftigen bezieht sich auf das Laufen von vielfachen unabhängigen Computerprogrammen auf demselben Computer; das Geben des Äußeren, dass es die Aufgaben zur gleichen Zeit durchführt. Da die meisten Computer an meisten eine oder zwei Sachen auf einmal machen können, wird das allgemein über das Time-Sharing getan, was bedeutet, dass jedes Programm einen Anteil der Zeit des Computers verwendet, um durchzuführen.

Ein Betriebssystemkern enthält ein Stück der Software genannt einen Planer, der bestimmt, wie viel Zeit jedes Programm Durchführung verbringen wird, und in dem Ordnungsausführungskontrolle zu Programmen passiert werden sollte. Kontrolle wird zu einem Prozess durch den Kern passiert, der den Programm-Zugang zur Zentraleinheit und dem Gedächtnis erlaubt. Später wird Kontrolle in den Kern durch einen Mechanismus zurückgegeben, so dass einem anderen Programm erlaubt werden kann, die Zentraleinheit zu verwenden. Dieser so genannte Übergang der Kontrolle zwischen dem Kern und den Anwendungen wird einen Zusammenhang-Schalter genannt.

Ein frühes Modell, das die Zuteilung der Zeit zu Programmen geregelt hat, wurde das kooperative Mehrbeschäftigen genannt. In diesem Modell, wenn Kontrolle zu einem Programm durch den Kern passiert wird, kann sie für durchführen, so lange sie vor dem ausführlichen Zurückgeben der Kontrolle zum Kern will. Das bedeutet, dass ein böswilliges oder schlecht funktionierendes Programm keine anderen Programme nur davon abhalten kann, die Zentraleinheit zu verwenden, aber es kann das komplette System hängen, wenn es in eine unendliche Schleife eingeht.

Moderne Betriebssysteme erweitern die Konzepte des Anwendungsvorkaufsrechts zu Gerät-Fahrern und Kerncode, so dass das Betriebssystem Vorkaufskontrolle über innere Durchlaufzeiten ebenso hat.

Die Philosophie, präemptive Multitasking regelnd, ist die des Sicherstellens, dass alle Programme regelmäßige Zeit auf der Zentraleinheit gegeben werden. Das deutet an, dass alle Programme darin beschränkt werden müssen, wie viel Zeit ihnen erlaubt wird, auf der Zentraleinheit zu verbringen, ohne, unterbrochen zu werden. Um das zu vollbringen, machen moderne Betriebssystemkerne von einer zeitlich festgelegten Unterbrechung Gebrauch. Ein geschützter Weise-Zeitmesser wird durch den Kern gesetzt, der eine Rückkehr zur Oberaufseher-Weise auslöst, nachdem die festgelegte Zeit vergangen hat. (Sieh über Abteilungen auf Unterbrechungen und Doppelweise-Operation.)

Auf vielem einzelnem Benutzer ist das Betriebssystemkonsumverein-Mehrbeschäftigen vollkommen entsprechend, weil Hauscomputer allgemein eine kleine Anzahl von gut geprüften Programmen führen. AmigaOS ist eine Ausnahme, präemptive Multitasking von seiner allerersten Version habend. Windows NT war die erste Version von Windows von Microsoft, das präemptive Multitasking geltend gemacht hat, aber es hat den Hausbenutzermarkt bis zu Windows XP nicht erreicht (seitdem Windows NT an Fachleuten ins Visier genommen wurde).

Plattenzugang und Dateisysteme

Der Zugang zu auf Platten versorgten Daten ist eine Haupteigenschaft aller Betriebssysteme. Computer versorgen Daten auf Platten mit Dateien, die auf spezifische Weisen strukturiert werden, um schnelleren Zugang, höhere Zuverlässigkeit zu berücksichtigen, und besseren Gebrauch aus dem verfügbaren Raum des Laufwerkes zu machen. Der spezifische Weg, auf den Dateien auf einer Platte versorgt werden, wird ein Dateisystem genannt, und ermöglicht Dateien, Namen und Attribute zu haben. Es erlaubt ihnen auch, in einer Hierarchie von Verzeichnissen oder in einem Verzeichnisbaum eingeordneten Mappen versorgt zu werden.

Früh haben Betriebssysteme allgemein einen einzelnen Typ des Laufwerks und nur eine Art des Dateisystems unterstützt. Frühe Dateisysteme wurden in ihrer Kapazität, Geschwindigkeit, und in den Arten von Dateinamen und Verzeichnisstrukturen beschränkt, die sie verwenden konnten. Diese Beschränkungen haben häufig Beschränkungen in den Betriebssystemen widerspiegelt, für die sie entworfen wurden, es sehr schwierig für ein Betriebssystem machend, mehr als ein Dateisystem zu unterstützen.

Während viele einfachere Betriebssysteme eine beschränkte Reihe von Optionen unterstützen, um auf Lagerungssysteme zuzugreifen, unterstützen Betriebssysteme wie UNIX und GNU/Linux eine Technologie, die als ein virtuelles Dateisystem oder VFS bekannt ist. Ein Betriebssystem wie UNIX unterstützt eine breite Reihe von Speichergeräten, unabhängig von ihrem Design oder Dateisystemen, ihnen erlaubend, durch eine allgemeine Anwendung, Schnittstelle programmierend (API) zugegriffen zu werden. Das macht es unnötig für Programme, irgendwelche Kenntnisse über das Gerät zu haben, auf das sie zugreifen. Ein VFS erlaubt dem Betriebssystem, Programme mit dem Zugang zu einer unbegrenzten Zahl von Geräten mit einer unendlichen Vielfalt von Dateisystemen zu versorgen, die auf ihnen, durch den Gebrauch von spezifischen Gerät-Fahrern und Dateisystemfahrern installiert sind.

Auf ein verbundenes Speichergerät, wie eine Festplatte, wird durch einen Gerät-Fahrer zugegriffen. Der Gerät-Fahrer versteht die spezifische Sprache des Laufwerkes und ist im Stande, diese Sprache in eine durch das Betriebssystem verwendete Standardsprache zu übersetzen, um auf alle Laufwerke zuzugreifen. Auf UNIX ist das die Sprache von Block-Geräten.

Wenn der Kern einen passenden Gerät-Fahrer im Platz hat, kann er dann auf den Inhalt des Laufwerks im rohen Format zugreifen, das ein oder mehr Dateisysteme enthalten kann. Ein Dateisystemtreiber wird verwendet, um die Befehle zu übersetzen, die verwendet sind, um auf jedes spezifische Dateisystem in einen Standardsatz von Befehlen zuzugreifen, die das Betriebssystem verwenden kann, um mit allen Dateisystemen zu sprechen. Programme können sich dann mit diesen Dateisystemen auf der Grundlage von Dateinamen und Verzeichnissen/Mappen befassen, die innerhalb einer hierarchischen Struktur enthalten sind. Sie können schaffen, löschen, öffnen, und Dateien schließen, sowie verschiedene Information über sie, einschließlich Zugriffserlaubnis, Größe, freien Raums und Entwicklungs- und Modifizierungsdaten sammeln.

Verschiedene Unterschiede zwischen Dateisystemen machen das Unterstützen aller Dateisysteme schwierig. Erlaubte Charaktere in Dateinamen, Fall-Empfindlichkeit und der Anwesenheit verschiedener Arten von Dateiattributen machen die Durchführung einer einzelnen Schnittstelle für jedes Dateisystem eine Einschüchtern-Aufgabe. Betriebssysteme neigen dazu zu empfehlen (und so Unterstützung heimisch) für sie spezifisch entworfene Dateisysteme zu verwenden; zum Beispiel, NTFS in Windows und ext3 und ReiserFS in GNU/Linux. Jedoch, in der Praxis, sind Drittlaufwerke gewöhnlich verfügbar, um für die am weitesten verwendeten Dateisysteme in den meisten Mehrzweckbetriebssystemen zu unterstützen (zum Beispiel, NTFS ist in GNU/Linux durch NTFS-3g verfügbar, und ext2/3 und ReiserFS sind in Windows durch den FS-Fahrer und rfstool verfügbar).

Die Unterstützung für Dateisysteme wird unter modernen Betriebssystemen hoch geändert, obwohl es mehrere allgemeine Dateisysteme gibt, für die fast alle Betriebssysteme Unterstützung und Fahrer einschließen. Betriebssysteme ändern sich auf der Dateisystembetreuung und auf den Plattenformaten, auf denen sie installiert werden können. Unter Windows wird jedes Dateisystem gewöhnlich in der Anwendung auf bestimmte Medien beschränkt; zum Beispiel müssen CDs ISO 9660 oder UDF, und bezüglich der Windows-Aussicht verwenden, NTFS ist das einzige Dateisystem, auf dem das Betriebssystem installiert werden kann. Es ist möglich, GNU/Linux auf viele Typen von Dateisystemen zu installieren. Verschieden von anderen Betriebssystemen erlauben GNU/Linux und UNIX jedem Dateisystem, unabhängig von den Medien verwendet zu werden, in denen es versorgt wird, ob es eine Festplatte, eine Scheibe (CD, DVD...), ein USB-Blitz-Laufwerk, oder sogar enthalten innerhalb einer auf einem anderen Dateisystem gelegenen Datei ist.

Gerät-Fahrer

Ein Gerät-Fahrer ist ein spezifischer Typ der Computersoftware, die entwickelt ist, um Wechselwirkung mit Hardware-Geräten zu erlauben. Normalerweise setzt das eine Schnittstelle ein, um mit dem Gerät, durch den spezifischen Computerbus oder das Kommunikationssubsystem zu kommunizieren, dass die Hardware verbunden wird mit, Befehle zur Verfügung stellend und/oder Daten vom Gerät, und auf dem anderen Ende, den notwendigen Schnittstellen zum Betriebssystem und den Softwareanwendungen erhaltend. Es ist ein von der Hardware abhängiges Spezialcomputerprogramm, das auch spezifisches System bedient, der ein anderes Programm, normalerweise ein Betriebssystem oder Anwendungssoftware-Paket oder Computerprogramm ermöglicht, das unter dem Betriebssystemkern läuft, um durchsichtig mit einem Hardware-Gerät aufeinander zu wirken, und gewöhnlich die notwendige für irgendwelche notwendigen asynchronen zeitabhängigen Hardware-Verbinden-Bedürfnisse notwendige Unterbrechungsbehandlung zur Verfügung stellt.

Die Schlüsseldesignabsicht von Gerät-Fahrern ist Abstraktion. Jedes Modell der Hardware (sogar innerhalb derselben Klasse des Geräts) ist verschieden. Neuere Modelle werden auch von Herstellern veröffentlicht, die zuverlässigere oder bessere Leistung zur Verfügung stellen und diese neueren Modelle häufig verschieden kontrolliert werden. Wie man erwarten kann, wissen Computer und ihre Betriebssysteme nicht, wie man jedes Gerät sowohl jetzt als auch in der Zukunft kontrolliert. Um dieses Problem zu beheben, diktieren Betriebssysteme im Wesentlichen, wie jeder Typ des Geräts kontrolliert werden sollte. Die Funktion des Gerät-Fahrers ist dann, diese zu übersetzen, Betriebssystem hat Funktionsanrufe ins Gerät spezifische Anrufe beauftragt. In der Theorie sollte ein neues Gerät, das auf eine neue Weise kontrolliert wird, richtig fungieren, wenn ein passender Fahrer verfügbar ist. Dieser neue Fahrer wird sicherstellen, dass das Gerät scheint, wie gewöhnlich aus dem Gesichtspunkt des Betriebssystems zu funktionieren.

Unter Versionen von Windows vor der Aussicht und den Versionen von Linux vorher 2.6 war die ganze Fahrer-Ausführung kooperativ, bedeutend, dass, wenn ein Fahrer in eine unendliche Schleife eingegangen ist, es das System einfrieren würde. Neuere Revisionen dieser Betriebssysteme vereinigen Kernvorkaufsrecht, wovon der Kern den Fahrer unterbricht, um ihm Aufgaben zu geben, und dann sich dem Prozess trennt, bis es eine Antwort vom Gerät-Fahrer erhält, oder ihm mehr Aufgaben gibt zu tun.

Netzwerkanschluss

Zurzeit am meisten Betriebssysteme unterstützen eine Vielfalt, Protokolle, Hardware und Anwendungen dafür zu vernetzen, sie zu verwenden. Das bedeutet, dass Computer, die unterschiedliche Betriebssysteme führen, an einem allgemeinen Netz teilnehmen können, um Mittel wie Computerwissenschaft, Dateien, Drucker und Scanner mit entweder angeschlossenen oder drahtlosen Verbindungen zu teilen. Netze können im Wesentlichen einem Betriebssystem eines Computers erlauben, auf die Mittel eines entfernten Computers zuzugreifen, dieselben Funktionen zu unterstützen, wie es gekonnt hat, wenn jene Mittel direkt mit dem lokalen Computer verbunden wurden. Das schließt alles von der einfachen Kommunikation, zum Verwenden vernetzter Dateisysteme oder sogar Teilen der gesunden oder Grafikhardware eines anderen Computers ein. Einige Netzdienste erlauben den Mitteln eines Computers, durchsichtig wie SSH zugegriffen zu werden, der vernetzten Benutzern direkten Zugang zu einer Befehl-Linienschnittstelle eines Computers erlaubt.

Kunde/Server, der vernetzt, erlaubt ein Programm auf einem Computer, genannt einen Kunden, um über ein Netz zu einem anderen Computer, genannt einen Server in Verbindung zu stehen. Server-Angebot (oder Gastgeber) verschiedene Dienstleistungen zu anderen Netzcomputern und Benutzern. Diese Dienstleistungen werden gewöhnlich durch Häfen oder numerierte Zugriffspunkte außer der Netzadresse des Servers zur Verfügung gestellt. Jede Hafen-Zahl wird gewöhnlich mit einem Maximum eines laufenden Programms vereinigt, das dafür verantwortlich ist, Bitten zu diesem Hafen zu behandeln. Ein Dämon, ein Benutzerprogramm seiend, kann der Reihe nach auf die lokalen Hardware-Mittel dieses Computers zugreifen, indem er Bitten zum Betriebssystemkern passiert.

Viele Betriebssysteme unterstützen ein oder mit dem Verkäufer spezifischere oder offene Netzwerkanschlussprotokolle ebenso, zum Beispiel, SNA auf Systemen von IBM, DECnet auf Systemen von Digital Equipment Corporation und mit dem Microsoft spezifische Protokolle (SMB) auf Windows. Spezifische Protokolle für spezifische Aufgaben können auch wie NFS für den Dateizugang unterstützt werden. Protokolle wie ESound oder esd können über das Netz leicht erweitert werden, um Ton aus lokalen Anwendungen auf einer gesunden Hardware eines entfernten Systems zur Verfügung zu stellen.

Sicherheit

Ein Computer, der sicher ist, hängt von mehreren Technologien ab, die richtig arbeiten. Ein modernes Betriebssystem stellt Zugang zu mehreren Mitteln zur Verfügung, die für die Software verfügbar sind, die auf dem System, und zu Außengeräten wie Netze über den Kern läuft.

Das Betriebssystem muss zum Unterscheiden zwischen Bitten fähig sein, denen erlaubt werden sollte, bearbeitet zu werden und anderen, die nicht bearbeitet werden sollten. Während einige Systeme einfach zwischen "privilegiertem" und "nichtprivilegiertem" unterscheiden können, haben Systeme allgemein eine Form der Antragsteller-Identität wie ein Benutzername. Um Identität zu gründen, kann es einen Prozess der Beglaubigung geben. Häufig muss ein Benutzername angesetzt werden, und jeder Benutzername kann ein Kennwort haben. Andere Methoden der Beglaubigung, wie magnetische Karten oder biometric Daten, könnten stattdessen verwendet werden. In einigen Fällen, besonders Verbindungen vom Netz, kann auf Mittel ohne Beglaubigung überhaupt (wie das Lesen von Dateien über einen Netzanteil) zugegriffen werden. Auch bedeckt durch das Konzept der Antragsteller-Identität ist Genehmigung; die besonderen Dienstleistungen und Mittel, die durch den in ein System einmal geloggten Antragsteller zugänglich sind, werden entweder an die Benutzerrechnung des Antragstellers oder an die verschiedenartig konfigurierten Gruppen von Benutzern gebunden, denen der Antragsteller gehört.

Zusätzlich zum erlauben/zurückweisen Modell der Sicherheit wird ein System mit einem hohen Niveau der Sicherheit auch Rechnungsprüfungsoptionen anbieten. Diese würden erlauben, Bitten um den Zugang zu Mitteln zu verfolgen (solcher als, "wer hat diese Datei gelesen?"). Innere Sicherheit oder Sicherheit aus einem bereits laufenden Programm ist nur möglich, wenn alle vielleicht schädliche Bitten Unterbrechungen zum Betriebssystemkern durchgeführt werden müssen. Wenn Programme auf Hardware und Mittel direkt zugreifen können, können sie nicht gesichert werden.

Außensicherheit schließt eine Bitte von der Außenseite des Computers, wie eine Anmeldung an einer verbundenen Konsole oder einer Art Netzverbindung ein. Außenbitten werden häufig durch Gerät-Fahrer zum Kern des Betriebssystems passiert, wo sie auf Anwendungen passiert, oder direkt ausgeführt werden können. Die Sicherheit von Betriebssystemen ist lange eine Sorge wegen hoch empfindlicher Daten gewesen hat Computer, beide einer kommerziellen und militärischen Natur festgehalten. Das USA-Ministerium der Verteidigung (DoD) hat Trusted Computer System Evaluation Criteria (TCSEC) geschaffen, die ein Standard sind, der grundlegende Voraussetzungen setzt, für die Wirksamkeit der Sicherheit zu bewerten. Das ist aus Lebenswichtigkeit Betriebssystemschöpfern geworden, weil der TCSEC verwendet wurde, um vertraute Betriebssysteme zu bewerten, zu klassifizieren und auszuwählen, die für die Verarbeitung, Lagerung und Wiederauffindung der empfindlichen oder Verschlusssache betrachten werden.

Netzdienste schließen Angebote wie das Dateiteilen, die Druckdienstleistungen, die E-Mail, die Websites und die Dateiübertragungsprotokolle (FTP) ein, von denen die meisten Sicherheit in Verlegenheit gebracht haben können. An der Frontlinie der Sicherheit sind Hardware-Geräte, die als Brandmauern oder Eindringen-Systeme der Entdeckung/Verhinderung bekannt sind. Am Betriebssystemniveau gibt es mehrere Softwarebrandmauern verfügbar, sowie Eindringen-Systeme der Entdeckung/Verhinderung. Die meisten modernen Betriebssysteme schließen eine Softwarebrandmauer ein, die standardmäßig ermöglicht wird. Eine Softwarebrandmauer kann konfiguriert werden, um Netzverkehr zu oder von einem Dienst oder Anwendung zu erlauben oder zu bestreiten, die auf dem Betriebssystem läuft. Deshalb kann man installieren und einen unsicheren Dienst, wie Telnet oder FTP führen, und nicht haben, um durch einen Sicherheitsbruch bedroht zu werden, weil die Brandmauer den ganzen Verkehr bestreiten würde, der versucht, zum Dienst auf diesem Hafen in Verbindung zu stehen.

Eine alternative Strategie und die einzige Sandkasten-Strategie, die in Systemen verfügbar ist, die den Virtualisierungsanforderungen von Popek und Goldberg nicht entsprechen, sind das Betriebssystem, das nicht Benutzerprogramme als heimischer Code, aber stattdessen führt, entweder eifern mit einem Verarbeiter wett oder stellen einem Gastgeber für das gestützte System eines P-Codes wie Java zur Verfügung.

Innere Sicherheit ist für Mehrbenutzersysteme besonders wichtig; es erlaubt jedem Benutzer des Systems, private Dateien zu haben, an denen die anderen Benutzer nicht herumbasteln oder lesen können. Innere Sicherheit ist auch lebenswichtig, wenn Rechnungsprüfung von einem Nutzen sein soll, da ein Programm das Betriebssystem potenziell umgehen kann, das einschließlich ist, Rechnungsprüfung zu umgehen.

Benutzerschnittstelle

Jeder Computer, der von einer Person bedient werden soll, verlangt eine Benutzerschnittstelle. Die Benutzerschnittstelle ist nicht wirklich ein Teil des Funktionierens von systemihm läuft allgemein in einem getrennten Programm gewöhnlich gekennzeichnet als eine Schale, aber ist notwendig, wenn menschliche Wechselwirkung unterstützt werden soll. Die Benutzerschnittstelle bittet um Dienstleistungen vom Betriebssystem, das Daten von Eingangshardware-Geräten, wie eine Tastatur, Maus oder Kreditkartenleser und Bitten erwerben wird, die Betriebssystemdienstleistungen zu zeigen, Zustandsmeldungen und solcher auf Produktionshardware-Geräten, wie ein Videomonitor oder Drucker veranlassen. Zwei sind die meisten Standardformen einer Benutzerschnittstelle die Schnittstelle der Befehl-Linie historisch gewesen, wo Computerbefehle Linie-für-Linie, und die grafische Benutzerschnittstelle getippt werden, wo eine Sehumgebung (meistens ein SCHLAPPSCHWANZ) da ist.

Grafische Benutzerschnittstellen

Die meisten modernen Computersysteme unterstützen grafische Benutzerschnittstellen (GUI), und schließen sie häufig ein. In einigen Computersystemen, wie die ursprüngliche Durchführung von Mac OS, wird der GUI in den Kern integriert.

Während technisch eine grafische Benutzerschnittstelle nicht ist, kann ein Betriebssystemdienst, Unterstützung für eine in den Betriebssystemkern vereinigend, dem GUI erlauben, durch das Vermindern der Anzahl von für den GUI erforderlichen Zusammenhang-Schaltern mehr antwortend zu sein, seine Produktionsfunktionen durchzuführen. Andere Betriebssysteme sind modular, das Grafiksubsystem vom Kern und dem Betriebssystem trennend. In den 1980er Jahren UNIX, VMS und viele andere hatten Betriebssysteme, die dieser Weg gebaut wurden. GNU/Linux und Mac OS X werden auch dieser Weg gebaut. Moderne Ausgaben von Windows von Microsoft wie Windows-Aussicht führen ein Grafiksubsystem durch, das größtenteils im Benutzerraum ist; jedoch bestehen die Grafikzeichnungsroutinen von Versionen zwischen Windows NT 4.0 und Windows Server 2003 größtenteils im Kernraum. Windows 9x hatte sehr wenig Unterscheidung zwischen der Schnittstelle und dem Kern.

Betriebssysteme vielen Computers erlauben dem Benutzer, jede Benutzerschnittstelle zu installieren oder zu schaffen, die sie wünschen. Das X Fenstersystem in Verbindung mit dem ZWERG oder KDE ist eine allgemein gefundene Einstellung auf dem grössten Teil von Unix und Unix-like (BSD, GNU/Linux, Solaris) Systeme. Mehrerer Windows-Schale-Ersatz ist für Windows von Microsoft veröffentlicht worden, das Alternativen zur eingeschlossenen Windows-Schale anbietet, aber die Schale selbst kann von Windows nicht getrennt werden.

Zahlreiche mit Sitz in Unix GUIs haben mit der Zeit, am meisten abgeleitet X11 bestanden. Die Konkurrenz unter den verschiedenen Verkäufern von Unix (HP, IBM, Sonne) hat zu viel Zersplitterung geführt, obwohl eine Anstrengung, in den 1990er Jahren zu COSE und CDE zu standardisieren, aus verschiedenen Gründen gescheitert hat, und schließlich durch die weit verbreitete Adoption des ZWERGS und KDE verfinstert wurde. Vor auf die kostenlose Software gegründeten Werkzeugen und Tischumgebungen war Motiv die überwiegende Kombination des Werkzeuges/Arbeitsfläche (und war die Basis, auf die CDE entwickelt wurde).

Grafische Benutzerschnittstellen entwickeln sich mit der Zeit. Zum Beispiel hat Windows seine Benutzerschnittstelle fast jedes Mal modifiziert, wenn eine neue Hauptversion von Windows, und der Mac OS GUI geändert drastisch mit der Einführung von Mac OS X 1999 veröffentlicht wird.

Echtzeitbetriebssysteme

Ein Echtzeitbetriebssystem (RTOS) ist ein stark mehrbeanspruchendes Betriebssystem, das für Anwendungen mit festen Terminen (Echtzeitcomputerwissenschaft) beabsichtigt ist. Solche Anwendungen schließen einige kleine eingebettete Systeme, Kraftfahrzeugmotorkontrolleure, Industrieroboter, Raumfahrzeug, Industriekontrolle und einige groß angelegte Rechensysteme ein.

Ein frühes Beispiel eines groß angelegten Echtzeitbetriebssystems war Transaktionsverarbeitungsmöglichkeit, die von amerikanischen Luftfahrtgesellschaften und IBM für das Säbel-Luftfahrtgesellschaft-Bedenken-System entwickelt ist.

Eingebettete Systeme, die Termine befestigt haben, verwenden ein Echtzeitbetriebssystem wie VxWorks, PikeOS, eCos, QNX, MontaVista Linux und RTLinux. Windows CE ist ein Echtzeitbetriebssystem, das ähnlichen APIs zu Tischwindows teilt, aber keinen der codebase von Tischwindows teilt. Symbian OS hat auch einen RTOS Kern (EKA2), der mit der Version 8.0b anfängt.

Betriebssysteme von Gebrauch einiger eingebetteter Systeme wie Palme OS, BSD und GNU/Linux, obwohl solche Betriebssysteme Echtzeitcomputerwissenschaft nicht unterstützen.

Betriebssystementwicklung als ein Hobby

Betriebssystementwicklung ist eine der am meisten komplizierten Tätigkeiten, mit denen sich ein Rechenhobbyist beschäftigen kann. Betriebssystem eines Hobbys kann als dasjenige klassifiziert werden, dessen Code aus keinem vorhandenen Betriebssystem direkt abgeleitet worden ist, und wenige Benutzer und energische Entwickler hat.

In einigen Fällen ist Hobby-Entwicklung zur Unterstutzung eines "selbst gebrauten Biers" Rechengerät, zum Beispiel, ein einfacher durch einen 6502 Mikroprozessor angetriebener Computer des einzelnen Ausschusses. Oder Entwicklung kann für eine Architektur bereits im weit verbreiteten Gebrauch sein. Betriebssystementwicklung kann aus völlig neuen Konzepten kommen, oder kann durch das Modellieren eines vorhandenen Betriebssystems anfangen. In jedem Fall ist der Hobbyist sein/ihr eigener Entwickler, oder kann mit einem kleinen und manchmal unstrukturierter Gruppe von Personen aufeinander wirken, die wie Interessen haben.

Beispiele eines Hobbys Betriebssystem schließen ReactOS und Silbe ein.

Ungleichheit von Betriebssystemen und Beweglichkeit

Anwendungssoftware wird allgemein für den Gebrauch auf einem spezifischen Betriebssystem, und manchmal sogar für die spezifische Hardware geschrieben. Wenn man die Anwendung trägt, um auf einem anderen OS zu laufen, kann die durch diese Anwendung erforderliche Funktionalität verschieden dadurch OS (die Namen von Funktionen, Bedeutung von Argumenten, usw.) das Verlangen die Anwendung durchgeführt werden, angepasst, geändert, oder sonst aufrechterhalten zu werden.

Diese Kosten im Unterstützen der Betriebssystemungleichheit können vermieden werden, indem sie stattdessen Anwendungen gegen Softwareplattformen wie Java oder Qt für WWW-Browser geschrieben wird. Diese Abstraktionen haben bereits die Kosten der Anpassung an spezifische Betriebssysteme und ihre Systembibliotheken getragen.

Eine andere Annäherung ist für Betriebssystemverkäufer, um Standards anzunehmen. Zum Beispiel stellen POSIX und OS Abstraktionsschichten Allgemeinheiten zur Verfügung, die nach Backbord haltende Kosten reduzieren.

Siehe auch

  • Vergleich von Betriebssystemen
  • Taschencomputer
  • Hyperschirm
  • Unterbrechbares Betriebssystem
  • Liste von wichtigen Veröffentlichungen in Betriebssystemen
  • Liste von Betriebssystemen
  • Mikrokontrolleur
  • Netz Betriebssystem
  • Objektorientiertes Betriebssystem
  • Das Funktionieren des Systems plant
  • PCjacking
  • Systemimage
  • Zeitachse von Betriebssystemen
  • Gebrauch-Anteil von Betriebssystemen

Weiterführende Literatur

Links


Organische Elektronik / Orson Welles
Impressum & Datenschutz