Skip to main content

Module process

Module process 

Source
Expand description

Types fondamentaux de la famille process.

Cf. docs/specs/layer-0/family-process.md et air-sys-types.md.

Pid et Tid sont deux newtypes distincts sur NonZeroI32 afin d’empêcher par typage la confusion entre un identifiant de processus et un identifiant de thread (application directe du Principe 7 et de la convention 1 de l’ADR-021). Le reste du module héberge les types liés à clone3 (création de processus / thread) et waitid (attente d’événement sur un enfant).

Structs§

CapabilityMask
Bitmask des capabilities.
CapabilitySet
Triple des ensembles de capabilities pour un thread.
CloneArgs
Arguments pour clone3.
CloneFlags
Drapeaux de clone3 (cf. linux/sched.h).
Dup3Flags
Drapeaux de dup3.
ExecveatFlags
Drapeaux de execveat.
Gid
Identifiant de groupe (gid_t). 0 = groupe root (valeur valide).
Pid
Identifiant kernel d’un processus (pid_t).
PidFd
File descriptor RAII qui référence un processus par pidfd.
PidFdOpenFlags
Drapeaux de pidfd_open.
ResGid
Triplet d’identité GID réel / effectif / sauvegardé (getresgid).
ResUid
Triplet d’identité UID réel / effectif / sauvegardé (getresuid).
Rlimit
Paire (soft, hard) de limites de ressource.
Rusage
struct rusage du kernel : statistiques de ressources (getrusage(2)).
StackSpecification
Spécification d’une pile pour la création d’un thread (CLONE_VM).
Tid
Identifiant kernel d’un thread (TID, tid_t).
TidReceiver
Emplacement mémoire où le kernel écrit (CLONE_PARENT_SETTID / CLONE_CHILD_SETTID) ou efface (CLONE_CHILD_CLEARTID) le TID d’un enfant créé par clone3.
Timeval
struct timeval du kernel (time_t tv_sec, suseconds_t tv_usec), tel que rempli par getrusage(2). Layout #[repr(C)] fidèle, cibles 64-bit.
Uid
Identifiant d’utilisateur (uid_t). 0 = root (valeur valide).
WaitOptions
Options de waitid (W* flags).
WaitStatus
État rapporté par waitid pour un événement enfant.

Enums§

Capability
Capability Linux — permission fine remplaçant le modèle binaire root/non-root.
CapabilityTarget
Cible d’un appel capget/capset.
CloneResult
Résultat de clone3.
DumpableMode
Mode dumpable du processus (prctl(PR_GET_DUMPABLE | PR_SET_DUMPABLE)).
Resource
Type de ressource pour getrlimit/setrlimit/prlimit.
RlimitValue
Valeur d’une limite de ressource. Infinity correspond à RLIM_INFINITY (u64::MAX sur LP64).
RusageWho
Cible d’une mesure Rusage pour getrusage(2). Re-présente RUSAGE_* en enum typé (pas de constante magique exposée — ADR-021).
WaitEvent
Type d’événement remonté par waitid.
WaitTarget
Cible d’un appel waitid.