PatchworkOS  966e257
A non-POSIX operating system.
Loading...
Searching...
No Matches
Process reaper

Process reaper for delayed process freeing. More...

Collaboration diagram for Process reaper:

Detailed Description

Process reaper for delayed process freeing.

The process reaper ensures that a process is not freed immediately after it is killed. This is important because other processes may still wish to access information about the process, such as its exit status.

The reaper runs periodically and frees any "zombie" processes when they have no remaining threads by deinitializing its /proc directory, when none of the proc files or directories of the process are open its resources are finally freed.

Functions

void reaper_init (void)
 Initializes the process reaper.
 
void reaper_push (process_t *process)
 Pushes a process to be reaped later.
 

Function Documentation

◆ reaper_init()

void reaper_init ( void  )

Initializes the process reaper.

Definition at line 58 of file reaper.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ reaper_push()

void reaper_push ( process_t process)

Pushes a process to be reaped later.

Parameters
processThe process to be reaped.

Definition at line 66 of file reaper.c.

Here is the call graph for this function:
Here is the caller graph for this function: