Einzelnen Beitrag anzeigen
Alt 18.06.2004, 09:25   #2
_m3
Inventar
 
Registriert seit: 24.09.2001
Beiträge: 7.335


Standard

Zitat:
Wenn ein Programm unter UNIX Dinge tut, die es nicht darf, dann wird ihm vom System einfach die Betriebserlaubnis entzogen. Zu diesen unerlaubten Beschäftigungen gehört beispielsweise der Griff in den Speicher anderer Prozesse. UNIX teilt den Prozessen klar abgegrenzte Speicherbereiche zu und merkt, wenn ein Prozess in die Systembereiche eindringen möchte. In einem solchen Fall sendet UNIX dem Prozess ein Signal, im letzten Fall SIGSEGV, eine segment violation. Man könnte das frei mit »Grenzverletzung« übersetzen.

Wenn UNIX ein Programm auf diese Weise beendet, schreibt es den Speicherbereich des Prozesses in eine Datei namens core, die im aktuellen Arbeitsverzeichnis angelegt wird. Da zum Speicher auch der Stack gehört, kann ein Debugger (siehe S. debug) feststellen, in welcher Funktion der Zusammenbruch erfolgte. Diese Information kann für den Programmierer eine große Hilfe sein.
http://www.galileocomputing.de/openb...u/node179.html
____________________________________
Weiterhin zu finden auf http://martin.leyrer.priv.at , http://twitter.com/leyrer , http://www.debattierclub.net/ , http://www.tratschen.at/ und via Instant Messaging auf Jabber: m3 <ät> cargal.org .
_m3 ist offline   Mit Zitat antworten