man pages section 2: System Calls

Exit Print View

Updated: July 2014
 
 

getpgrp(2)

Name

getpid, getpgrp, getppid, getpgid - get process, process group, and parent process IDs

Synopsis

#include <unistd.h>

pid_t getpid(void);
pid_t getpgrp(void);
pid_t getppid(void);
pid_t getpgid(pid_t pid);

Description

The getpid() function returns the process ID of the calling process.

The getpgrp() function returns the process group ID of the calling process.

The getppid() function returns the parent process ID of the calling process.

The getpgid() function returns the process group ID of the process whose process ID is equal to pid, or the process group ID of the calling process, if pid is equal to 0.

Return Values

The getpid(), getpgrp(), and getppid() functions are always successful and no return value is reserved to indicate an error.

Upon successful completion, getpgid() returns the process group ID. Otherwise, getpgid() returns (pid_t)−1 and sets errno to indicate the error.

Errors

The getpgid() function will fail if:

EPERM

The process whose process ID is equal to pid is not in the same session as the calling process, and the implementation does not allow access to the process group ID of that process from the calling process.

ESRCH

There is no process with a process ID equal to pid.

The getpgid() function may fail if:

EINVAL

The value of the pid argument is invalid.

Attributes

See attributes(5) for descriptions of the following attributes:

ATTRIBUTE TYPE
ATTRIBUTE VALUE
Interface Stability
Committed
MT-Level
Async-Signal-Safe
Standard

See also

Intro(2), exec(2), fork(2), getsid(2), setpgid(2), setpgrp(2), setsid(2), signal(3C), attributes(5), standards(5)