Index général des pages de man   Index Section man 2   Table des Matières de ptrace   Imprime la page de man ptrace en mode Texte   Recherche dans les pages de man   Page de man en français      Fonctions du système (section 2)

ptrace

 
  

Nom

ptrace - Suivre un processus.

Synopsis

#include <sys/ptrace.h>

int ptrace(int requête, int pid, int addr, int data);

Description

Ptrace fournit au processus parent un moyen de contrôler l'exécution d'un autre processus et d'éditer son image mémoire. L'utilisation primordiale de cette fonction est l'implémentation de points d'arrêt pour le débugging.

Un processus suivi se déroule jusqu'à l'arrivée d'un signal. Ensuite il s'interrompt et son parent sera averti grâce à la fonction wait(2) .

Quand le processus se trouve arrêté (stop), sa mémoire peut être lue et écrite. Le parent peut également faire continuer l'exécution de son fils, avec une option pour ignorer le signal ayant déclenché l'arrêt.

La valeur de l'argument requête indique précisement l'action à entreprendre.

PTRACE_TRACEME
Le processus en cours va être suivi par son père. Le parent doit être en attente de suivi du fils.
PTRACE_PEEKTEXT, PTRACE_PEEKDATA
Lire un mot à l'adresse addr.
PTRACE_PEEKUSR
Lire un mot à l'adresse addr dans l'espace USER.
PTRACE_POKETEXT, PTRACE_POKEDATA
Ecrire un mot à l'adresse addr.
PTRACE_POKEUSR
Ecrire un mot à l'adresse addr dans l'espace USER.
PTRACE_SYSCALL, PTRACE_CONT
Redémarrer après un signal.
PTRACE_KILL
Envoyer au fils un signal SIGKILL pour le terminer.
PTRACE_SINGLESTEP
Positionner un drapeau d'exécution pas-à-pas.
PTRACE_ATTACH
Attacher le processus numéro pid.
PTRACE_DETACH
Détacher un processus précédemment attaché.

Notes

init, le processus numéro 1, ne peut pas utiliser cette fonction.

Valeur Renvoyée

ptrace renvoie 0 s'il réussit, ou -1 s'il échoue, auquel cas errno contient le code d'erreur.

Erreurs

EPERM
Le processus (par exemple init), ne peut pas être suivi ou est déjà suivi.
ESRCH
Le processus indiqué n'existe pas.
EIO
La requête n'est pas valide.

Conformité

SVr4, SVID EXT, AT&T, X/OPEN, BSD 4.3

Voir Aussi

gdb(1) , exec(3) , signal(2) , wait(2)

Traduction

Christophe Blaess, 1997.


Table des matières


Haut de page

© 1996-2000 Adaptation française "Christophe Blaess"