Grundlagen der Betriebssysteme und Virtualisierung

Eingeordnet in Informatik

Geschrieben am in Deutsch mit einer Größe von 3 KB

Virtuelle Maschinen

Eine virtuelle Maschine (VM) ist eine Software, die einen Computer simuliert und Programme wie ein physischer Rechner ausführen kann. Diese Software wurde ursprünglich als „ein effizientes, isoliertes Duplikat einer physischen Maschine“ definiert. Der Begriff umfasst heute auch virtuelle Maschinen, deren Hardware keine direkte Entsprechung zu einer tatsächlichen Maschine hat.

Die Shell

Eine Shell ist eine Software, die dem Nutzer eine Schnittstelle zur Verfügung stellt. Normalerweise bezieht sich der Begriff auf die Betriebssystem-Shell, die den Zugriff auf die Dienste des Kernels ermöglicht. Betriebssystem-Shells fallen im Allgemeinen nach ihren Schnittstellen in zwei Kategorien:

  • Kommandozeile (CLI)
  • Grafische Benutzeroberfläche (GUI)

Multiprogramming vs. Monoprogrammierung

Multiprogramming ermöglicht es, dass zwei oder mehr Prozesse gleichzeitig im Hauptspeicher geladen sind und parallel laufen. Im Gegensatz dazu führt die Monoprogrammierung nur ein Programm zur Zeit aus; weitere Programme werden erst nach dem Ende des vorangegangenen gestartet.

Batch-Systeme

Batch-Betriebssysteme verarbeiten eine große Menge an Aufgaben mit wenig oder gar keiner Interaktion zwischen Benutzern und Programmen. Sie führen ähnliche Aufgaben gesammelt aus, um die Wartezeiten zwischen einzelnen Jobs zu vermeiden, wie sie bei der seriellen Verarbeitung auftreten würden. Diese Systeme sind eher traditionell und wurden bereits 1956 eingeführt, um die Verarbeitungskapazität für Programme zu erhöhen.

Time-Sharing

Time-Sharing bezeichnet die gemeinsame Nutzung einer Rechenressource durch viele Benutzer mittels Multitasking. Indem eine große Anzahl von Benutzern gleichzeitig an einem einzigen Computer interagieren kann, wurden die Kosten für EDV-Dienstleistungen drastisch gesenkt und das Computer-Erlebnis gleichzeitig interaktiver gestaltet.

Echtzeitsysteme

Echtzeit bezieht sich auf zeitliche Beschränkungen in Bezug auf Hardware und Software. Echtzeit-Software muss zwingend eine kritische Reaktionszeit garantieren. Wichtige Merkmale sind: Determinismus, Reaktionsfähigkeit, Benutzerkontrolle, Zuverlässigkeit und Fehlertoleranz.

Systemaufrufe (System Calls)

Wenn ein Systemaufruf (System Call) erfolgt, wird die Ausführung des Programms unterbrochen und die Daten werden gespeichert (in der Regel im Prozesskontrollblock), um später fortzufahren. Der Prozessor führt dann Code-Anweisungen auf einer hohen Privilegienstufe aus, um die geforderte Aufgabe zu erfüllen. Nach Abschluss kehrt das System zum ursprünglichen Prozess zurück, der die Ausführung fortsetzt. Die Rückkehr zum anfordernden Prozess erfolgt nicht unbedingt sofort, sondern hängt vom Laufzeitsystem und dem Scheduling-Algorithmus ab.

Verwandte Einträge: