Titel: Betriebssysteme

Betriebssysteme

Wie ist ein Betriebssystem definiert

Ein Betriebssystem ist die Gesamtheit der Programme eines digitalen Rechensystems, die zusammen mit den Eigenschaften der Rechenanlage die Grundlage der möglichen Betriebsarten bildet und insbesondere die Ausführung von Programmen sowie die Vergabe von Betriebsmitteln steuert und überwacht. Betriebssysteme sind auf die Hardware abgestimmt und stellen dem Benutzer eine Schnittstelle in Form einer mehr oder weniger aufwendigen Programmier - bzw. Kommando – Sprache zur Verfügung, derer sich der Anwender zu bedienen hat, um Dienst des Betriebssystems anzufordern. Man unterscheidet zwei wesentliche Arten von Schnittstellen:

- Die Kommando – Orientierte Shell (Bsp.: MS-DOS): Anweisungen oder Anweisungsfolgen werden zeilenorientiert dem System durch den Benutzer übergeben.

- Die graphisch – orientierte, visuelle Shell: Vom System angezeigte und durch den Benutzer auszuwählende Anweisung ermöglicht die Inanspruchnahme von Diensten des Betriebssystems.

Es gibt zwei grundsätzliche Arten von Betriebssystemen:

- Einzelbenutzerbetriebssystem: Vertreter: MS-DOS

- Mehrbenutzerbetriebsystem: Vertreter: UNIX

Beim Einzelnutzungsbetrieb wird der Dialog zwischen einem Benutzer und dem Computer ausgeführt. Beim Mehrbenutzersystem wird eine Anzahl von Benutzern quasi gleichzeitig im interaktiven Betrieb durch den Computer bedient, wobei jeder Benutzer über ein Terminal (Ein/Ausgabestation) mit dem System verbunden ist.



Was ist ein Multi – Tasking Betriebssystem:

In einem Multitasking - System können mehrere Prozesse (Task, Programm in Ausführung) zur selben Zeit laufen. Für jedes Programm sieht es so aus, als ob es alleine auf dem Rechner liefe. Tatsächlich werden die Programme hintereinander für jeweils eine kurze Zeit bearbeitet. Das Multi – Tasking - Betriebssystem kümmert sich um die Reihenfolge und um die Rechenzeitzuteilung an die einzelnen Prozesse. Neben der Rechenzeitvergabe kümmert sich das Betriebssystem um die Vergabe der Ressourcen Hauptspeicher und Peripheriegeräte. Kein Benutzerprogramm darf darauf direkt zugreifen. Statt dessen beauftragt es das Betriebssystem über einen Systemaufruf (System call), die gewünschte Aktion ausführen zu lassen. Gegebenenfalls verweigert das Betriebssystem die Ausführung und meldet einen Fehler.



Betriebssystemaufrufe:

Systemaufrufe sind Aufrufe von Betriebssystemfunktionen aus einem Anwendungsprogramm; Das Sytem muß dafür eine Schnittstelle anbieten. Für dieses System hat sich die Bezeichnung API eingebürgert. Das API definiert einen Satz von Funktionen mit ihren Schnittstellen (Parameter). Die API – Definition ist häufig auf eine Programmiersprache bezogen, z.B. C.



Das Dateisystem:

Das Dateisystem ist eine Sammlung von Daten, die auf einem Permanentspeicher gehalten wird. Das Dateisystem stellt einen Abstraktionsmechanismus dar, um Daten auf einem Speichermedium in geeigneter Form zugänglich zu machen, ohne daß der Benutzer mit den Details der Datenablage befaßt ist. Gleichzeitig bietet es einen Schutzmechanismus, der sicherstellt, daß Daten nur von Anwendern gelesen oder geändert werden dürfen.



Wozu genau wird ein Betriebssystem benötigt:

Das Betriebssystem ist die Schnittstelle, die die Verbindung zwischen Anwender und Computer herstellt. Es hat die Aufgabe dafür zu sorgen, daß die einzusetzende Software die Hardware des Rechners benutzen kann. Um dies zu ermöglichen, ist das Betriebssystem in zwei Komponenten aufgeteilt:

Ø Hardware - abhängige Komponente

Diese Komponente ist zuständig für die angeschlossene Peripherie und enthält hardware - abhängige Befehle, die die Ein- und Ausgabe ermöglichen.

Ø Hardware - unabhängige Komponente

Hierbei handelt es sich um Befehle, die zuerst in die hardware - unabhängige eingegeben und interpretiert werden und dann von der hardware - abhängigen Komponente des Betriebssystems ausgeführt werden.

Des weiteren verfügt das Betriebssystem noch über eine Vielzahl von anderen Aufgaben:

Starten des Mikrocomputers: Das Betriebssystem überprüft, welche Peripheriegeräte angeschlossen sind und zeigt Fehler an, die sich durch falsch oder nicht angeschlossene Ein - und Ausgabegeräte ergeben.

Verwaltung von Geräten: Diese Aufgabe beinhaltet z.B.: das Speichern von Daten auf Diskette und die Meldung von Fehlfunktionen der Ausgabegeräte.

Ausführung der Kommandodateien: Bei einer Kommandodatei oder auch Befehlsdatei genannt, handelt es sich um eine Datei die aus einer Reihe von Befehlen besteht. Anstatt diese Reihe von Befehlen bei Bedarf mehrfach einzugeben, braucht man nur noch die Kommandodatei aufzurufen und das Betriebssystem arbeitet dann Befehl für Befehl aus dieser Datei ab.

Tools: Tools des Betriebssystems sind Formattierprogramme für Disketten, Kopierprogramme für Diskette, Virenprogramme, ...



Welche Betriebssysteme gibt es:

Zu Beginn muß gesagt werden, daß es sehr viele unterschiedliche Betriebssysteme gibt. Einige davon sind allerdings so unbekannt, daß sogar im Internet nur ein ganz kleiner Verweis von deren Existenz zeugt. Die wichtigen wie z.B.: OS/2 (http://www.os2bbs.com), Windows95 (http://www.microsoft.com) oder Linux (http://www.linux.org) besitzen eigene Webseiten.

Ich möchte die wichtigsten hier vorstellen:

Windows95:

Windows95 ist eine Weiterentwicklung zu Windows 3.11, wobei allerdings gesagt werden muß, daß es viele Verbesserungen wie beispielsweise die 32bit Architektur mit sich bringt. Außerdem ist nun nicht mehr MS - DOS das Betriebssystem, sondern Windows selbst. Eine wichtige Neuerung ist auch die Datei “Msdos.sys”, die sich im Root des Startlaufwerks befindet. Seit Windows95 ist diese Datei lesbar und dadurch veränderbar. Hierdurch können Anpassungen vorgenommen werden (Bsp.: Nicht – Starten der graphischen Oberfläche als Standard einstellen). Allerdings wird bei Windows95 noch ein 16bit Dateisystem verwendet. Bald wird Windows98 erscheinen welches ein 32bit Dateisystem und damit noch mehr Performance mit sich bringen wird. Außerdem verschmilzt der Internet Explorer mit der Oberfläche. Damit sind dann auch interaktive Inhalte auf dem Desktop möglich. Windows98 befindet sich derzeit noch in der Beta Phase und liegt zur Zeit in der Version 1711 vor.

UNIX:

UNIX ist ein Mehrbenutzer- und damit auch Multitasking - fähiges Betriebssystem, das heute eines der am weitesten verbreiteten Betriebssysteme ist.

Aufbau: Nach außen hin stellt sich der Betriebssystemkern von UNIX als monolithischer Block dar. Dennoch beinhaltet dieser Kern eine Reihe von Komponenten, die zum Teil den genannten Anforderungen an ein Betriebssystem zuzuordnen sind. In Richtung der Anwendungs- und auch der Dienstprogramme existieren nur die Systemaufrufe. Diese Systemaufrufe leiten die Anforderungen (z.B. mehr Speicherplatz, usw.) der Programme entweder an das Datei - Subsystem oder an das Prozeß - Subsystem weiter. Das Datei - Subsystem achtet dabei auf eine ordnungsgemäße Verwaltung der Datei und eine Kontrolle der Zugriffsrechte. Das Prozeßsubsystem weist den einzelnen Programme separate Speicherbereiche zu und kontrolliert auch die Anfragen nach mehr Speicherplatz, die Programme zur Laufzeit stellen können. Darüber hinaus es den Zugriff auf die CPU an die einzelnen Programme. Diese Funktion erfüllt der sog. Scheduler. Außerdem erlaubt das Prozeßsubsystem auch die Kommunikation und den Datenaustausch zwischen den einzelnen Programmen. Das Datei - Subsystem muß dann die Dateizugriffe den Gerätetreibern weitergeben. Sowohl Prozeß- als auch das Datei - Subsystem nutzen die Schnittstellen zur Hardware, um die Anforderungen von Programmen zu befriedigen. Zusammenfassend kann man also sagen, daß man unter dem Begriff UNIX nicht nur den Betriebssystemkern, sondern auch eine ganze Reihe von mitgelieferten Dienstprogrammen versteht.

Geschichte: Die Geschichte des Betriebssystems UNIX geht bis in das Jahr 1969 zurück. Zu diesem Zeitpunkt arbeitete Ken Thompsen bei den Bell Labarotories, einer Forschungseinrichtung, die von der Fa. AT&T und der Fa. Western Electric unterhalten wurde. Ken Thompsen beteiligte sich an einem großen Programmierprojekt zur Entwicklung des Betriebssystems MULTICS, mit dem sich die Bell Laboratories in Zusammenarbeit mit der Fa. General Electric und dem Massachusetts Institute for Technology (MIT) beschäftigten. Im März 1969 zogen sich die Bell Laboratories von diesem Programmierprojekt zurück. Thompsen plante die Entwicklung eines eigenen Betriebssystems, das sich stark von den bisherigen Betriebssytemen unterscheiden sollte. Die dann erste, kommerziell verfügbare Version von UNIX, war UNIX Version 7. Der Betriebssystemkern enthielt ca. 10000 Zeilen Code, von denen aber noch ca. 1000 Zeilen in Assembler und damit maschinenabhängig geschrieben waren. Die Umsetzung des Betriebssystemkerns auf die Programmiersprache C brachte dann aber eine deutliche Vereinfachung in Fragen der Portierbarkeit. Diese flexible und portable Konzeption war das Erfolgsrezept von UNIX.

LINUX:

Linux ist ein relativ junges Betriebssystem. Es entstand aus einer Idee von Linus Torvalds (Helsinki/Finnland), der Unix als perfektes Betriebssystem ansah, aber erkannte, daß Unix praktisch unerschwinglich für den Normalverbraucher ist. Er kam auf die Idee, daß man ein Derivat entwickeln müßte, welches für Jedermann frei verfügbar ist. Die allerersten Kernel - Teile wurden von Linus Torvalds alleine entwickelt und im September 1991 über das Internet verbreitet. In sehr kurzer Zeit fanden weltweit Programmierer Interesse an dieser Idee und entwickelten die ersten Erweiterungen. So entstanden ein verbessertes System zur Dateiverwaltung, Treiber für diverse Hardware, zahlreiche Zusatzprogramme und vieles mehr. Diese Komponenten wurden ebenfalls kostenlos zur Verfügung gestellt. Das Gesamtsystem wächst seitdem in rasanter Geschwindigkeit, wobei das Internet dies natürlich erst möglich macht. Ein wichtiger Faktor ist die Tatsache, daß Linux frei von Rechten ist und zu diesem Zeitpunkt bereits frei verfügbare Software vorhanden war.

GNU - Programme sind wie Linux frei kopierbar und werden zudem mit allen Quellcodes weitergegeben. Das ermöglicht es allen Anwendern, die Programme bei Problemen oder Fehlern selbst zu erweitern oder zu korrigieren. Daraus resultieren immer bessere und ausgereiftere Versionen. Der GNU – C - Compiler ist Standard in der Unix-Welt und sogar für DOS / Windows erhältlich. Linux selbst wird mit dem GNU – C - Compiler weiterentwickelt. Durch viele weitere Komponenten wird zusammen aus dem Linux - Kernel, zahlreichen GNU - Komponenten, der Netzwerk – Software von BSD und dem ebenfalls freien X Window System (grafische Oberfläche) des MIT ein komplettes System.

IRIX:

Das Betriebssystem von Silicon Graphics ist IRIX™, das auf UNIX System V Release 4 basiert. Damit ist eine weitgehende Kompatibilität zu anderen Derivaten mit diesem leistungsstarken Grundstock gegeben. Bei aller Leistungsfähigkeit sind die UNIX – Befehle allerdings nicht intuitiv und verlangen vom Benutzer eine lange Einarbeitung. Um trotzdem eine intuitive Bedienung zu ermöglichen, ist in IRIX mit Indigo Magic eine Benutzerumgebung vorhanden, die die einfache Bedienung von PCs mit der Stabilität und Leistungsfähigkeit von UNIX Plattformen verbinden soll, was zum Teil auch gelingt. Icons repräsentieren nicht allein Dateien und Applikationen, sondern auch Peripheriegeräte wie Drucker und CD Player, andere Computer innerhalb des Netzwerkes oder sogar Mitarbeiter. Icons sind intelligent, sie wechseln ihr Aussehen, um eine Statusänderung anzuzeigen, etwa daß sich im Drucker kein Papier mehr befindet oder in CD Player eine Music CD liegt. Indigo Magic unterstützt auch "drag & drop". So kann eine Applikation gestartet werden, indem man das entsprechende Icon oder indem man ein Icon einer Datei auf die Applikation zieht. Weiterhin können Icons, die oft benötigt werden, direkt auf dem Desktop abgelegt. Der Dateimanager bietet eine einfache, graphische Art, durch das Dateisystem zu navigieren. Verschiedene Ansichtsarten sind gegeben, unter anderem auch eine Darstellung von Bilddateien durch kleine Kontrollbilder statt einem Icon, was gerade bei großen Verzeichnissen voller Bilder sehr nützlich ist. Bei allem Lob muß man allerdings sagen, dass diese Vorteile nur im Vergleich zu anderen UNIX - Oberflächen bestehen. Wenn man hingegen einen Vergleich mit dem Explorer von Windows oder selbst dem Finder von Apples Macintosh anstellt, muß man klar feststellen, dass IRIX hier weit zurückliegt.

Begriffe:

Multi – User: Mehrere Personen können unabhängig voneinander (auch gleichzeitig) am gleichen Rechner arbeiten.

Multithreading: Paralleles ausführen verschiedener Funktionen innerhalb eines Programmes.

Multiprocessing: Automatisches gleichmäßiges Verteilen der Arbeit auf verschiedene CPUs.

Netzwerkfunktionen: Network Filesystem (NFS - gemeinsames Verwenden der Festplatten in einer(!) Verzeichnisstruktur), Network Information Service (NIS - Verteilen von Informationen von einem Server), X - Windows (Fensteroberfläche, die es u.a. ermöglicht, Anzeige und Programm auf unterschiedlichen Rechnern laufen zu lassen), Internet (weltweites Datennetz).

OS/2:

Die Entwicklung des Operating Systems/2 begann bereits 1984. Der Grund der Entwicklung war die Einführung einer neuen Rechnergeneration durch IBM. Diese neue Generation sollte mit dem Mikrokanal, einem neuen Bus - System, ausgestattet werden. 1987 kam diese Technik unter dem Namen PS/2 auf den Markt. Nach erfolglosem Anlauf von OS/2, der bedingt war durch die große Fehlerbehaftung, stieg Microsoft, nach der Einführung von Windows, aus der Gemeinschaftsproduktion mit IBM aus. Der Erfolg von OS/2 blieb auch weiterhin aus. Dies änderte sich mit der Einführung von Version 2.0, das mit preemptiven Multitasking und 32-Bit aufwarten konnte. Ein großes Problem dieser Version war aber noch die enorme Hardwarevoraussetzung, weshalb es auch nicht zum großen Durchbruch von OS/2 kam. IBM arbeitete trotzdem weiterhin an OS/2 und präsentierte im Oktober 1994 die gründlich modifizierte Version OS/2 Warp 3, die eine Reihe von Verbesserungen aufwies.

Hardwarevoraussetzungen:

4 MB RAM (besser: 8MB), 386SX (32bit Prozessor), 35MB Speicherplatz, VGA – fähig

Arbeitsoberfläche: Die Arbeitsoberfläche (Workplace Shell) erscheint nach dem Starten von OS/2. Auf ihr befinden sich verschiedene Objekte und Folder, die als Icons dargestellt werden. Die Arbeitsoberfläche wird auch als Objekt bezeichnet, wobei sie stets geöffnet und als Vollbild dargestellt wird, sie kann nicht verdeckt oder zum Sinnbild verkleinert werden. Die Anzahl, Art und Anordnung der einzelnen Objektsymbole hängt von der Installation und den anschließend ausgeführten Tätigkeiten ab.


Hinweis: In der Regel läßt sich jeder UNIX - Befehl mit der Tastenkombination -d abbrechen.

Hinweis: Bei UNIX gibt es keinen Backslash (\) – Verzeichnisse werden durch einen normalen Schrägstriche getrennt (test1/test2/xtc.txt)

UNIX - Ausdrücke:

Abmelden: Will der Benutzer eine Arbeitssitzung beenden, sollte er sich über die im Programm vorgesehenen Wege abmelden. Das garantiert, daß alle Daten ordnungsgemäß gespeichert werden (auch bei Win95 vorhanden).

Account: Bezeichnung für die Regelung der Zugangsberechtigung zu einem Netzwerk. Ein Account erhält in der Regel den Benutzernamen und das Paßwort. Beide müssen vom Benutzer des Systems eingegeben werden.

AIX: Ein Derivat des Betriebssystems UNIX, das von IBM für Großrechner entwickelt wurde.

Client-Server: Bezeichnung für eine verbreitete Computer - Netzwerk Anordnung. An diesem Netzwerk können sowohl PCs als auch Workstations oder Großrechner beteiligt sein. Der Server übernimmt dabei im Netz bestimmte Aufgaben, wie beispielsweise die Verwaltung eines Datenbanksystems, während die als Client bezeichneten Rechner alle normalen Aufgaben durchführen.

Cobol: Eine höhere Programmiersprache, die im kaufmännischen Bereich eingesetzt wird.

Host: Bezeichnung für einen Großrechner, der den mit ihm verbundenen PCs seine Rechnerkapazität zur Verfügung stellt und sie mit Daten versorgt.

Mainframe: Zentralrechner, Großrechner.

Workstation: Sehr schneller Kleincomputer.

X - Windows: Grafische Benutzeroberfläche unter dem Betriebssystem UNIX.

Quelle: