4,441
社区成员
发帖
与我相关
我的任务
分享
// 为新进程取得不重复的进程号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;
}
]