---
name: "getpid"
section: "2"
platform: "macos"
package: "xnu"
version: "12377.121.6"
release: "macOS 26.5"
platforms: ["linux", "freebsd", "macos"]
url: "https://new.carta.tech/getpid"
---

# getpid(2)

get parent or calling process identification

## NAME

**getpid**, **getppid** – get parent or calling process identification

## SYNOPSIS

**#include \<unistd.h\>**

*pid\_t*\

**getpid**(*void*);

*pid\_t*\

**getppid**(*void*);

## DESCRIPTION

**getpid**() returns the process ID of the calling process. The ID is guaranteed to be unique and is useful for constructing temporary file names.

**getppid**() returns the process ID of the parent of the calling process.

## ERRORS

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

## LEGACY SYNOPSIS

**#include \<sys/types.h\>** **#include \<unistd.h\>**

The include file ⟨sys/types.h⟩ is necessary.

## SEE ALSO

[gethostid(2)](/gethostid/2.md), [compat(5)](/compat/5.md)

## STANDARDS

**getpid**() and **getppid**() conform to  IEEE Std 1003.1-1988 (“POSIX.1”).
