在书上看到一段这样的话:
在kernel 2.6中时间片的计算是分散的,具体的计算时间可以用task_timeslice(),也可以用其他方法。
a.进程创建时,将父进程的时间片分一半给子进程,同时父进程的时间片减半。
b.进程用完时间片以后,需要重新计算时间片,并将进程插入到相应的运行队列。
c.进程退出时,根据first_timeslice的值来决定是否将子进程的时间片返还给父进程。
疑问:对于a,子进程的时间片是从父进程那里分得的,也就是说其实父进程也是有时间去完成子进程的任务,那干脆就不用创建子进程咯。子进程分父进程的时间片,那又何来创建进程可以增加机器的并行性呢?
对于b,这个“重新计算时间片”是不是摆脱了子进程从父进程那里分得时间片的限制,父子进程的时间片是否还有着某种关系呢?
对于多核的机器,子进程和父进程的时间片划分又是怎么样的呢?多核间如何协调时间片的长短?
希望大牛们能给点提示。。。