2.3.4.2 Speicherschutzverletzung

[gesichtete Version][gesichtete Version]
(LOOP2 Upgrade)
Zeile 1: Zeile 1:
=Speicherschutzverletzung=
=Speicherschutzverletzung=
<p>
<p>
Stellt das Steuerwerk während der Abarbeitung eines Prozesses fest, dass der aktive Prozess auf einen Speicherbereich im Hauptspeicher zugreifen möchte, der ihm selbst nicht zugeordnet ist, so handelt es sich um eine <loop_index>Speicherschutzverletzung</loop_index>Speicherschutzverletzung, die durch einen <loop_index>Interrupt</loop_index>Interrupt angezeigt wird.
Stellt das Steuerwerk während der Abarbeitung eines Prozesses fest, dass der aktive Prozess auf einen Speicherbereich im Hauptspeicher zugreifen möchte, der ihm selbst nicht zugeordnet ist, so handelt es sich um eine <loop_index id="5fa9787d60f96">Speicherschutzverletzung</loop_index>Speicherschutzverletzung, die durch einen <loop_index id="5fa9787d60f9d">Interrupt</loop_index>Interrupt angezeigt wird.
</p>
</p>


Zeile 14: Zeile 14:
<p>
<p>
<loop_area type="task">
<loop_area type="task">
<loop_task title="Weiter laufen lassen?">
<loop_task title="Weiter laufen lassen?" id="5fa9787d60fa1">
<p>
<p>
Wäre es möglich, den verursachenden Prozess trotz Speicherschutzverletzung weiter laufen zu lassen? Welche Konsequenzen hätte dies? Erläutere Vor- und Nachteile!
Wäre es möglich, den verursachenden Prozess trotz Speicherschutzverletzung weiter laufen zu lassen? Welche Konsequenzen hätte dies? Erläutere Vor- und Nachteile!
Zeile 25: Zeile 25:
== Aufgabe 2 ==
== Aufgabe 2 ==
<p>
<p>
<loop_index>Ausnahme|Exception|Trap</loop_index>
<loop_index id="5fa9787d60fa5">Ausnahme|Exception|Trap</loop_index>
<loop_area type="task">
<loop_area type="task">
<loop_task title="Ausnahme und Interrupt">
<loop_task title="Ausnahme und Interrupt" id="5fa9787d60fa8">
<p>
<p>
<cite>Wüst+2011</cite> spricht in Kapitel 8.2 beim Auftreten eines "unerlaubten Speicherzugriffs" von einer '''Ausnahme''' ('''Exception''' oder '''Trap''') und damit nicht von einem ''Interrupt''.
<cite id="5fa9787d60fac">Wüst+2011</cite> spricht in Kapitel 8.2 beim Auftreten eines "unerlaubten Speicherzugriffs" von einer '''Ausnahme''' ('''Exception''' oder '''Trap''') und damit nicht von einem ''Interrupt''.
# Woran unterscheidet <cite>Wüst+2011</cite> zwischen ''Ausnahme'' und ''Interrupt''?
# Woran unterscheidet <cite id="5fa9787d60faf">Wüst+2011</cite> zwischen ''Ausnahme'' und ''Interrupt''?
# Welche Situationen führen nach <cite>Wüst+2011</cite> zu einem Interrupt?
# Welche Situationen führen nach <cite id="5fa9787d60fb2">Wüst+2011</cite> zu einem Interrupt?
# Und welche Situationen führen nach <cite>Wüst+2011</cite> zu einer Ausnahme?
# Und welche Situationen führen nach <cite id="5fa9787d60fb5">Wüst+2011</cite> zu einer Ausnahme?
</p>
</p>
<p>
<p>

Version vom 9. November 2020, 19:12 Uhr

Speicherschutzverletzung

Stellt das Steuerwerk während der Abarbeitung eines Prozesses fest, dass der aktive Prozess auf einen Speicherbereich im Hauptspeicher zugreifen möchte, der ihm selbst nicht zugeordnet ist, so handelt es sich um eine Speicherschutzverletzung, die durch einen Interrupt angezeigt wird.


Reaktion auf Speicherschutzverletzung

Die einfachste Reaktion auf eine Speicherschutzverletzung ist, dass der die Speicherschutzverletzung verursachende Prozess beendet wird, seine zu diesem Zeitpunkt nicht dauerhaft gespeicherten Daten gehen unwiederbringlich verloren.


Aufgabe 1

Aufgabe

Wäre es möglich, den verursachenden Prozess trotz Speicherschutzverletzung weiter laufen zu lassen? Welche Konsequenzen hätte dies? Erläutere Vor- und Nachteile!


Aufgabe 2

Aufgabe

spricht in Kapitel 8.2 beim Auftreten eines "unerlaubten Speicherzugriffs" von einer Ausnahme (Exception oder Trap) und damit nicht von einem Interrupt.

  1. Woran unterscheidet zwischen Ausnahme und Interrupt?
  2. Welche Situationen führen nach zu einem Interrupt?
  3. Und welche Situationen führen nach zu einer Ausnahme?

Studierende sind oftmals berechtigt, eine PDF-Version des genannten Buches ohne entstehende Kosten über ihre Hochschulen von Springerlink zu beziehen.