Betriebssystem

Sammlung von Computerprogrammen, die die Systemressourcen eines Computers verwaltet und diese Anwendungsprogrammen zur Verfügung stellt
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 11. Juli 2003 um 15:14 Uhr durch WilliMuc (Diskussion | Beiträge) (Link eingefügt). Sie kann sich erheblich von der aktuellen Version unterscheiden.


Betriebssystem: Programme, die die anwendungsunabhängige Funktion des Computers aufrechterhalten, Ressourcen verwalten und die Komplexität der zugrundeliegenden Hardware des Computers verbergen.

Die Aufgaben eines (Multitasking -) Betriebssystems sind:

  • Prozessverwaltung (Scheduling): faire Verwaltung von mehreren Prozessen, die auf einem Computer ausgeführt werden.
  • Speicherverwaltung: Aufteilung des Hauptspeichers unter den Prozessen
  • Geräteverwaltung: Verwaltung von Hardware-Geräte; Vermeidung von Zugriffkollisionen
  • Dateiverwaltung, Dateisysteme
  • mit der Einführung von ACPI übernimmt das Betriebssystem auch die Stromverwaltung

Hauptaufgaben von Betriebssystemen

  • Speicher-Verwaltung
    • Zuweisung und Überwachung des Betriebsmittels Speicher (Haupt- und Hintergrundspeicher).
    • Führung von Tabellen der Speicherbelegung durch Benutzerjobs bzw. Prozesse (laufende Programme).
    • Bedienung von Anforderungen und Freigabe von Speicher.
  • Prozessor-Verwaltung
    • Zuteilung des Betriebsmittels Prozessor an die zum Ablauf bereiten Prozesse. Die meisten größeren Systeme arbeiten dabei im Multiprogramming-Betrieb. Darunter verstehen wir die Bearbeitung von mehreren in kleinen Zeitabschnitten verzahnten Aufgaben. Von großer praktischer Bedeutung ist dabei der Zuteilungsalgorithmus (siehe Scheduler).
  • Prozess-Verwaltung
    • Betreuung sämtlicher Prozesse (im Ablauf befindlicher Programme) im Rechnersystem.
    • Erzeugung von neuen Prozessen auf Anforderung des Betriebssystems bzw. anderer existierender Prozesse,
    • Entfernung von Prozessen aus dem System.
  • Interprozesskommunikation
    • Betriebssysteme müssen Möglichkeiten zur Kommunikation und Synchronisation von Prozessen untereinander zur Verfügung stellen.
    • mögliche Konzepte sind Semaphore, Monitore, Nachrichten und Ereigniszähler
  • Geräte- und Datei-Verwaltung
    • Effiziente Zuweisung von I/O-Geräten und Vermittlungseinheiten (Datenkanäle, Steuereinheiten), Vermeidung von Konflikten;
    • Initiierung, Überwachung der Ausführung, Terminierung von I/O-Vorgängen, Datenkonversion,
    • Logische Kontrolle des File-Systems. Dabei werden vor allem Dienstleistungen der Prozess-Verwaltung in Anspruch genommen
  • Dienstprogramme auch Utilities genannt.
    • Dies sind alle Programme, die dem Benutzer bzw. Systemverwalter allgemeine, systemnahe Aufgaben ermöglichen. Dazu gehören Editoren, Kopierprogramme, Benutzer-Verwaltung, Datensicherung, ...

Siehe auch: Anwendungsprogramme

Im PC-Bereich sind derzeit die meistgenutzten Betriebsysteme die verschiedenen Varianten von Microsoft Windows (kommerziell), und die Varianten von Linux (GNU-Lizenz, frei kopierbar). Lindows bzw. LindowsOS erlaubt die Verwendung von Linux und Windowsprogrammen.

Neben den in der Liste von Betriebssystemen erwähnten existieren noch eine ganze Reihe experimenteller Betriebssysteme, die vor allem im universitären Umfeld zu Forschungs- und Lehrzwecken eingesetzt werden.

Schichtenmodell eines Betriebssystems

Um das Betriebssystem eines Rechners leichter zu verstehen verwendet man gern ein Schichtenmodell. Jede der Schichten des Modells ist durch eine Menge von Operationen charakterisiert, die sie zur Verfügung stellt.

Nr. Schicht Objekte Typische Operationen
5 Benutzer-oberfläche Environment-Daten Kommandos, Menus, etc.
4 Geräte-Verwaltung Files, Geräte creat,unlink,open,close,
read, write, lseek
3 Speicher-Verwaltung Segmente, Pages Read, Write, Fetch
2 Basic-I/O Datenblöcke,
Cluster
Read, Write, Allocate, Free
1 Kern (Nucleus) Prozesse,
Semaphore
Create, Destroy,
       Suspend, 
Resume, Signal, Wait

Beispiel Schichtenmodell Win 3.11

Beispiel Schichtenmodell UNIX

  • Dateisystemtreiber
  • Gerätetreiber
  • Speicherverwaltung
  • evtl. Mikrokernel bei Mikrokernelsystemen