获取进程标识符的函数

getpid, getppid, getuid, geteuid, getgid, getegid

头文件

#include < unistd.h >

函数原型

pid_t getpid(void) 返回当前进程的进程ID
pid_t getppid(void) 返回进程的父进程id
uid_t getuid(void) 返回进程实际用户id
uid_t geteuid(void) 返回进程的有效用户id
gid_t getgid(void) 返回进程的实际组id
gid_t getegid(void) 返回进程的有效组id

函数说明

geteuid : geteuid()用来取得执行目前进程有效的用户识别码。有效的用户识别码用来决定进程执行的权限,借由此改变此值,进程可以获得额外的权限。倘若执行文件的setID位已被设置,该文件执行时,其进程的euid值便会设成该文件所有者的uid。例如,执行文件/usr/bin/passwd的权限为-r-s–x–x,其s 位即为setID(SUID)位,而当任何用户在执行passwd 时其有效的用户识别码会被设成passwd 所有者的uid 值,即root的uid 值(0)。

getegid()用来取得执行目前进程有效组识别码。有效的组识别码用来决定进程执行时组的权限。返回值返回有效的组识别码。

文档更新时间: 2021-03-08 15:36   作者:周国强