Praktische Einführung mit Virtualisierung
Stefan Bosse
Universität Koblenz - FB Informatik
Stefan Bosse - Grundlagen der Betriebssysteme - Modul P Prozesse und Prozessverwaltung ::
Einführung des Prozessmodells
Datenstrukturen von Prozessen
Multiprozesssysteme und Scheduling (Prozessumschaltung)
Stefan Bosse - Grundlagen der Betriebssysteme - Modul P Prozesse und Prozessverwaltung :: Terminologie
Stefan Bosse - Grundlagen der Betriebssysteme - Modul P Prozesse und Prozessverwaltung :: Terminologie
bsdp
Unterscheidung Programm zu Prozess
Allgemein gilt: kommt ein Programm zur Ausführung, dann wird ein neuer Prozess gestartet. Der Prozess belegt Hauptspeicherplatz, Prozessorregister, belegt Rechenzeit und nutzt die Peripherie. Ein bestimmtes Programm kann bei Bedarf auch mehrfach parallel ablaufen. Es liegen dann mehrere Prozesse vor, aber immer noch nur ein Programm.
Stefan Bosse - Grundlagen der Betriebssysteme - Modul P Prozesse und Prozessverwaltung :: Terminologie
bsdp
Varianten der Software-Parallelität
Stefan Bosse - Grundlagen der Betriebssysteme - Modul P Prozesse und Prozessverwaltung :: Terminologie
Stefan Bosse - Grundlagen der Betriebssysteme - Modul P Prozesse und Prozessverwaltung :: Terminologie
Man unterscheidet harte und weiche Echtzeitsysteme. Das Überschreiten von Zeitgrenzen (von Prozessen) wird im Softbetrieb toleriert, im Hartbetrieb wird diese als Systemfehler gewertet mit Anhalten der Rechneranlage.
Stefan Bosse - Grundlagen der Betriebssysteme - Modul P Prozesse und Prozessverwaltung :: Prozess
Ein Prozess i hat einen Zustand Σi. Ein Prozess in Ausführung ändert seinen Zustand.
Der Prozess ist ein Grundbaustein der Parallelverarbeitung mit einem Betriebssystem.
Das Prozessmodell ist daher ein zentrales Konzept moderner Betriebssysteme. Ergänzt wird es durch das Thread-Modell, das für die Parallelisierung innerhalb von Applikationen die optimalere Lösung darstellt.
Stefan Bosse - Grundlagen der Betriebssysteme - Modul P Prozesse und Prozessverwaltung :: Prozess
Stefan Bosse - Grundlagen der Betriebssysteme - Modul P Prozesse und Prozessverwaltung :: Ereignisse
Man kann verschiedene Klassen von Ereignissen unterscheiden, die von Prozessen berarbeitet werden:
Warten auf Ereignisse bedingt das Anhalten des Kontrollflusses eine Prozesses (Prozessblockierung), wenn auch beim Pollingbetrieb nur eine wiedeholende Schleife den Programmfortschritt blockiert.
Stefan Bosse - Grundlagen der Betriebssysteme - Modul P Prozesse und Prozessverwaltung :: Prozesszustände
bsbrause (a) Allgemein Prozesszustände und Übergänge (b) Prozesszustände und Übergänge bei UNIX (c) Prozesszustände in Windows NT
Stefan Bosse - Grundlagen der Betriebssysteme - Modul P Prozesse und Prozessverwaltung :: Prozesszustände
Die Zustände „bereit“ und „blockiert“ enthalten eine oder mehrere Warteschlangen (Listen), in die die Prozesse mit diesem Zustand eingetragen werden.
Stefan Bosse - Grundlagen der Betriebssysteme - Modul P Prozesse und Prozessverwaltung :: Prozessmodell
Stefan Bosse - Grundlagen der Betriebssysteme - Modul P Prozesse und Prozessverwaltung :: Prozessverwaltung
Im Unterschied zu dem Maschinencode werden die Zustandsdaten der Hardware (CPU, FPU, MMU), mit denen der Prozess arbeitet, als Prozesskontext bezeichnet.
Stefan Bosse - Grundlagen der Betriebssysteme - Modul P Prozesse und Prozessverwaltung :: Prozessverwaltung
Die verschiedenen Betriebssysteme differieren in der Zahl der Ereignisse, auf die gewartet werden kann, und der Anzahl und Typen von Warteschlangen, in denen gewartet werden kann. Sie unterscheiden sich auch darin, welche Strategien sie für das Erzeugen und Terminieren von Prozessen sowie die Zuteilung und Einordnung in Wartelisten vorsehen.
Stefan Bosse - Grundlagen der Betriebssysteme - Modul P Prozesse und Prozessverwaltung :: Prozessumschaltung
Multiplexing: Die wechselseitige Nutzung einer geteilten Ressource, z.B. eines Funkkanals, Datenbusses, Prozessors, oder des Speichers. Beim Prozessor handelt es sich um Zeitmultiplexing.
Kanalmultiplexing (grün) im Vergleich zum Prozessmultiplexing (rot). Im Grunde werden Daten geschaltet.
Stefan Bosse - Grundlagen der Betriebssysteme - Modul P Prozesse und Prozessverwaltung :: Prozessumschaltung
Multiprozessorsysteme können als multiple Kommunikationskanäle verstanden werden.
Stefan Bosse - Grundlagen der Betriebssysteme - Modul P Prozesse und Prozessverwaltung :: Prozessgruppen
Prozesse können einzeln gestartet oder in Gruppen zugeordnet werden.
Prozessverdoppelung bei fork(). PID: Process Identifier Number (numerischer ganzzahliger Wert der einen Prozess im System eindeutig identifiziert)