Beendigungsmodell bei Trap

Disclaimer: Dieser Thread wurde aus dem alten Forum importiert. Daher werden eventuell nicht alle Formatierungen richtig angezeigt. Der ursprüngliche Thread beginnt im zweiten Post dieses Threads.

Beendigungsmodell bei Trap
Hey,
warum genau dürfen denn Traps nach dem Beendigungsmodell behandelt werden?
Vielen Dank!


Wie wir nebenan schon geklärt haben, werden Traps immer unmittelbar aufgrund der Aktivität eines Prozesses ausgelöst. :slight_smile:

Wenn das Betriebssystem im Rahmen der Trap-Behandlung feststellt, dass der Prozess groben Mist gebaut hat, hat es das Recht ihn abzuschießen (→ Beendigungsmodell).
Andernfalls kann es die Bedingung, die zum Trap geführt hat, beheben - z. B. die fehlende Speicherseite wieder einlagern - und den Prozess anschließend weiterlaufen lassen (→ Fortsetzungsmodell).

Bei Interrupts existiert kein Kausalzusammenhang zwischen dem unterbrochenen Prozess und dem Interrupt - der Prozess kann überhaupt nichts dafür, dass er gerade durch ein Ereignis von außen unterbrochen wird. Deswegen wäre es grober Unfug, wenn das Betriebssystem ihn als Reaktion abschießen würde (→ Fortsetzungsmodell).