Sommaire

Gestion des attributs d’un processus

Un processus est associé à différents attributs, dont il peut consulter la valeur et, pour certains, la modifier.

1. Identifiants de processus : getpid(), getppid()

Un processus peut connaître son identifiant de processus et celui de son processus parent par les appels système getpid() et getppid().

Syntaxe

#include <unistd.h> 
pid_t getpid(void); 
pid_t getppid(void);

Valeur retournée

Identifiant du processus ou du processus parent.

Ces appels n’échouent jamais.

Ces deux attributs ne sont pas modifiables.

2. Identifiants de groupe et de session : getpgid(), getsid()

Le processus peut déterminer l’identifiant de groupe de processus et l’identifiant de session d’un autre processus ou de lui-même, avec les appels système getpgid() et getsid().

Syntaxe

#include <unistd.h> 
pid_t getpgid(pid_t pid); 
pid_t getsid(pid_t pid);

Argument

pid

PID d’un processus ou zéro pour le processus courant

Valeur retournée

-1

Erreur, code erreur positionné dans la variable errno

!= -1

Identifiant du groupe de processus ou de la session

Ces identifiants sont modifiables dans certaines conditions (voir la partie sur les groupes de processus et les sessions).

3. Identifiants d’utilisateurs : getuid()

Un processus peut savoir quels sont les comptes utilisateurs auxquels il est associé, avec les différents appels système de la famille getuid().

Syntaxe

#include <unistd.h>  ...