19、Unix 进程管理与调度全解析
2026/5/12 18:23:54 网站建设 项目流程

Unix 进程管理与调度全解析

1. 获取用户和组 ID

在 Unix 系统中,可以通过系统调用来获取用户和组的 ID。以下是获取真实用户和组 ID 的系统调用:

#include <unistd.h> #include <sys/types.h> uid_t getuid (void); gid_t getgid (void);

这两个系统调用不会失败。同样,获取有效用户和组 ID 的系统调用如下:

#include <unistd.h> #include <sys/types.h> uid_t geteuid (void); gid_t getegid (void);

这两个系统调用也不会失败。

2. 会话和进程组

每个进程都是进程组的成员。进程组是一个或多个进程的集合,通常用于作业控制。进程组的主要特性是可以向组内的所有进程发送信号,一个操作就能终止、停止或继续同一进程组内的所有进程。

每个进程组由进程组 ID(pgid)标识,并且有一个进程组领导者。进程组 ID 等于进程组领导者的 pid。只要进程组还有一个成员,它就会一直存在,即使进程组领导者终止,进程组仍然存在。

当新用户登录机器时,登录进程会创建一个新会话,该会话包含单个进程,即用户的登录 shell。登录 shell 作为会话领导者,其 pid 用作会话 ID。会话是一个或多个进程组的集合,它安排已登录用户

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询