我正在实现一个在用户空间中调用的系统调用,比如说 foo。系统调用访问 foo 的 task_struct(通过全局指针 current),打印它的名称和 pid,然后继续到 foo 的父进程,foo 的父进程的父进程等。打印它们的所有名称和 pid,直到并包括 init 进程。
pid=1 为 init 保留,pid=0 为 swapper 保留。
根据swapper的task_struct,它的父进程就是它自己。
Swapper(或 sched)总是 pid=0 并且总是 init 的父进程?
所有的pid都是非负的吗?我可以做这个假设吗?