Skip to content
BSD syscall#39

svc · unix #39

getppid

Returns the PID of the parent process.

Prototype

int getppid(void);

Returns: int

Version history

XNU tagmacOS#
xnu-1456.1.26macOS 10.6 Snow Leopard39
xnu-1699.24.8macOS 10.7 Lion39
xnu-2050.18.24macOS 10.8 Mountain Lion39
xnu-2422.115.4macOS 10.9 Mavericks39
xnu-2782.40.9macOS 10.10 Yosemite39
xnu-3247.1.106macOS 10.11 El Capitan39
xnu-3789.1.32macOS 10.12 Sierra39
xnu-4570.1.46macOS 10.13 High Sierra39
xnu-4903.221.2macOS 10.14 Mojave39
xnu-6153.11.26macOS 10.15 Catalina39
xnu-7195.50.7.100.1macOS 11.0 Big Sur39
xnu-8019.41.5macOS 12.0 Monterey39
xnu-8792.41.9macOS 13.0 Ventura39
xnu-10002.1.13macOS 14.0 Sonoma39
xnu-11215.1.10macOS 15.0 Sequoia39
xnu-11417.101.15macOS 15.4 Sequoia39
xnu-12377.1.9macOS 26.0 Tahoe39
xnu-10002.41.939
xnu-10002.61.339
xnu-10002.81.539
xnu-10063.101.1539
xnu-10063.121.339
xnu-10063.141.139
xnu-11215.41.339
xnu-11215.61.539
xnu-11215.81.439
xnu-11417.121.639
xnu-11417.140.6939
xnu-12377.101.1539
xnu-12377.41.639
xnu-12377.61.1239
xnu-12377.81.439
xnu-1486.2.1139
xnu-1504.15.339
xnu-1504.3.1239
xnu-1504.7.439
xnu-1504.9.1739
xnu-1504.9.2639
xnu-1504.9.3739
xnu-1699.22.7339
xnu-1699.22.8139
xnu-1699.24.2339
xnu-1699.26.839
xnu-1699.32.739
xnu-2050.22.1339
xnu-2050.24.1539
xnu-2050.48.1139
xnu-2050.7.939
xnu-2050.9.239
xnu-2422.1.7239
xnu-2422.100.1339
xnu-2422.110.1739
xnu-2422.90.2039
xnu-2782.1.9739
xnu-2782.10.7239
xnu-2782.20.4839
xnu-2782.30.539
xnu-3247.10.1139
xnu-3248.20.5539
xnu-3248.30.439
xnu-3248.40.18439
xnu-3248.50.2139
xnu-3248.60.1039
xnu-3789.21.439
xnu-3789.31.239
xnu-3789.41.339
xnu-3789.51.239
xnu-3789.60.2439
xnu-3789.70.1639
xnu-4570.20.6239
xnu-4570.31.339
xnu-4570.41.239
xnu-4570.51.139
xnu-4570.61.139
xnu-4570.71.239
xnu-4903.231.439
xnu-4903.241.139
xnu-4903.270.4739
xnu-6153.101.639
xnu-6153.121.139
xnu-6153.141.139
xnu-6153.41.339
xnu-6153.61.139
xnu-6153.81.539
xnu-7195.101.139
xnu-7195.121.339
xnu-7195.141.239
xnu-7195.60.7539
xnu-7195.81.339
xnu-8019.61.539
xnu-8019.80.2439
xnu-8020.101.439
xnu-8020.121.339
xnu-8020.140.4139
xnu-8792.61.239
xnu-8792.81.239
xnu-8796.101.539
xnu-8796.121.239
xnu-8796.141.339

Notes

If the original parent exits before the child, the child is reparented to launchd (PID 1) on macOS, at which point getppid() returns 1. The value can therefore change asynchronously; detect orphaning by polling for a value of 1. Useful in supervisor patterns to detect supervisor death.

Related APIs

getpidgetsidgetpgidforkexit