From 56864e3d83b8b1d2c754da600646c4e732efd32f Mon Sep 17 00:00:00 2001 From: Gregor Kleen Date: Thu, 26 Nov 2015 09:28:58 +0000 Subject: oss - 06 --- ws2015/oss/blaetter/06/abgabe.md | 43 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 ws2015/oss/blaetter/06/abgabe.md (limited to 'ws2015') diff --git a/ws2015/oss/blaetter/06/abgabe.md b/ws2015/oss/blaetter/06/abgabe.md new file mode 100644 index 0000000..6b6ae18 --- /dev/null +++ b/ws2015/oss/blaetter/06/abgabe.md @@ -0,0 +1,43 @@ +# Kontext- und Moduswechsel + +a) Manche Betriebssysteme teilen ihren Betrieb in zwei Modi, den +Systemmodus (für dem Betriebssystem zugeordnete Funktionen) und den +Nutzermodus. *Moduswechsel* bezieht sich hierrauf. + +b) + i) Sicherung des Prozesskontexts + ii) Wechsel des Modus (z.B. Freigabe von privilegien) + iii) Sprung + +c) Der Wechsel von einem Prozess zu einem anderen (u.a. auch zu einer +Routine zur Unterbrechungsbehandlung) + +d) + i) Sicherung des alten Prozesskontexts + ii) Einfügen des Prozesskontexts in die Warteschlange des + Schedulers (*ready*) + iii) Auswählen des neuen Prozesskontexts + iv) Laden des neuen Prozesskontexts + +e) Der Anzahl der zu sichernden Register ­ der Hauptaufwand ist das +verschieben der Registerinhalte auf den Stack. + +f) + i) Aufruf einer E/A-Methode des Betriebssystems (z.B. *open*) + ii) Eintreffen einer E/A-Unterbrechung (z.B. der Bytestream von + der Festplatte in Antwort auf *read*) + iii) Eintreffen einer E/A-Unterbrechung für einen Prozess, der + sich nicht unmittelbar vor dem Eintreffen in Ausführung befand + +g) + Es ist nahezu sicher, dass zu einem späteren Zeitpunkt auch die + weiteren Register genutzt werden sollen und die Änderung bis zu + diesem Zeitpunkt vergessen wurde. + +# Prozesse + +a) Bit-Tabelle +b) Seitenrahmen +c) Kernel mode +d) Kontext-Switch +e) Swapping -- cgit v1.2.3