Rechercher une page de manuel
ptrace
Langue: de
Version: 6. Oktober 1996 (openSuse - 09/10/07)
Section: 2 (Appels système)
NAME
ptrace - ProzessverfolgungÜBERSICHT
#include <sys/ptrace.h>int ptrace(int request, int pid, int addr, int data);
BESCHREIBUNG
Ptrace stellt einen Weg zur Verfügung, durch den ein Vaterprozess die Ausführung eines Tochterprozesses kontrollieren und sein core überwachen und ändern kann. Der Hauptnutzen besteht in der Implementation von Fehlersuche mit Unterbrechungspunkten (breakpoint debugging). Ein getraceter Prozess läuft bis ein Signal auftritt. Dann stoppt er und der Vater wird benachrichtigt durch wait(2). Wenn des Prozess sich in gestopptem Zustand befindet, kann sein Speicher gelesen und beschrieben werden. Der Vater kann auch die Tochter bewegen, die Ausführung fortzusetzen; optional kann das Signal, dass das Stoppen bewirkte, ignoriert werden.Der Wert des Arguments request legt die genaue Aktion des Systemaufrufs fest:
- PTRACE_TRACEME
- Dieser Prozess wird durch seinen Vater verfolgt. Der Vater sollte erwarten die Tochter zu verfolgen.
- PTRACE_PEEKTEXT, PTRACE_PEEKDATA
- Lese Wort bei Adresse addr.
- PTRACE_PEEKUSR
- Lese Wort bei Adresse addr im USER-Bereich.
- PTRACE_POKETEXT, PTRACE_POKEDATA
- Schreibe Wort an Adresse addr.
- PTRACE_POKEUSR
- Schreibe Wort an Adresse addr im USER-Bereich.
- PTRACE_SYSCALL, PTRACE_CONT
- Fahre fort nach Signal.
- PTRACE_KILL
- Sendet dem Tochterprozess ein SIGKILL um ihn zu beenden.
- PTRACE_SINGLESTEP
- Setze das trap Flag für Einzelschrittmodus.
- PTRACE_ATTACH
- Hänge an den Prozess an, der durch pid spezifiziert ist.
- PTRACE_DETACH
- Gib einen Prozess frei, der vorher verbunden war.
BEMERKUNGEN
init, der Prozess mit der Prozessnummer 1, darf diese Funktion nicht benutzen.RÜCKGABEWERT
Bei Erfolg wird Null zurückgegeben. Im Fehlerfall wird -1 zurückgegeben und errno entsprechend gesetzt.FEHLER
- EPERM
- Der angegebene Prozess (d.h. init), kann nicht verfolgt werden oder wird bereits verfolgt.
- ESRCH
- Der angegebene Prozess existiert nicht.
- EIO
- Request ist nicht gültig.
KONFORM ZU
SVID EXT, AT&T, X/OPEN, BSD 4.3SIEHE AUCH
gdb(1), exec(2), signal(2), wait(2).Contenus ©2006-2024 Benjamin Poulain
Design ©2006-2024 Maxime Vantorre