- // 为新进程取得不重复的进程号last_pid,并返回在任务数组中的任务号(数组index)。
- int
- find_empty_process (void)
- {
- int i;
- repeat:
- if ((++last_pid) < 0)
- last_pid = 1;
- for (i = 0; i < NR_TASKS; i++)
- if (task[i] && task[i]->pid == last_pid)
- goto repeat;
- for (i = 1; i < NR_TASKS; i++) // 任务0 排除在外。
- if (!task[i])
- return i;
- return -EAGAIN;
- }
fork()函数的主要实现(2)
最新推荐文章于 2021-05-06 18:50:11 发布