Was ist ein Prozess?
abstraktes Konzept, das eine laufende Anwendung repräsentiert.
Das Betriebssystem verwaltet die Prozesse und die Resourcen, die sie verwenden.
Process Control Block
Betriebssystem verwaltet eine Prozesstabelle aller laufenden Prozesse.
Jeder Prozess wird durch einen Process Control Block (PCB) repräsentiert, der Informationen zum Prozess enthält (z.B. Prozess ID, Prozesszustand, Scheduling, Memory)
Prozesszustände
Multitasking
Betriebssysteme können mehrere Prozesse gleichzeitig verwalten. Ob diese Prozesse auch gleichzeitig ausgeführt werden können, davon ab ob mehrere CPU Kerne vorhanden sind.
Nebenläufigkeit vs Parallelität
Nebenläufigkeit bedeutet, dass mehrere Tasks über einen längeren Zeitraum hinweg Fortschritte machen. Auch mit nur einem CPU Core ist Nebenläufigkeit möglich, indem Tasks abwechselnd ausgeführt werden.
Parallelität hingegen bedeutet, dass mehrere Tasks tatsächlich gleichzeitig ausgeführt werden. Das ist nur möglich, wenn mehrere CPU Cores zur Verfügung stehen.
Context Switch
Wie können neue Prozesse erzeugt werden?
getpid(2) & getppid(2)
Wann werden Prozesse terminiert?
exit(3)
beendet den laufenden Prozess und gibt einen Rückgabewert an den Elternprozess zurück. Der Elternprozess kann den Rückgabewert mit wait(2) abfragen.
Threads
Jeder Prozess besteht aus mindestens einem Thread. Ein Thread ist das grundlegende Konstrukt, das Teile einer
Anwendung zur Ausführung bringt.
Vorteile von Threads
Erkläre den Begriff “Swapping”
Mechanismus, bei dem ein Prozess vorübergehend aus dem Hauptspeicher in den Sekundärspeicher (Festplatte) ausgelagert (oder verschoben) wird und damit anderen Prozessen der Hauptspeicher zur Verfügung gestellt werden kann. Zu einem späteren Zeitpunkt lagert das System den Prozess vom sekundären Speicher in den Hauptspeicher zurück.
Vor & Nachteile von Swapping
Vorteile:
Nachteile:
Unterschied zwischen Typ 1 und Typ 2 Hypervisor?
Typ-1-Hypervisoren greifen direkt auf die zugrunde liegenden Hardware-Ressourcen zu. Sie können ihre eigenen benutzerdefinierten Ressourcenzuweisungsstrategien implementieren, um ihre virtuellen Maschinen zu bedienen.
Typ-2-Hypervisoren verhandeln die Ressourcenzuweisung mit dem Betriebssystem, was den Prozess langsamer und weniger effizient macht.
Was ist ein Programm?
Ausführbare Datei die eine Reihe an Anweisungen enthält
Was ist ein Hypervisor?
Ein Hypervisor ist eine Software, die virtuelle Maschinen (VMs) erstellt und ausführt.