您的位置:首页 > 运维架构 > Linux

linux 任务调度,进程创建(fork)(2.6内核)

2011-09-08 17:31 337 查看
linux 内核任务调度的三个任务队列(tast_list):

rt_sched_class

fair_sched_class

idle_sched_class

任务时间片(time slice):

DEF_TIMESLICE = (100 * HZ / 1000)

时间片启动(任务调中断)

{run_timer_softirq | tick_setup_sched_timer}-> update_process_times ->scheduler_tick->

curr->sched_class->task_tick{ task_tick_fair|task_tick_rt}

进程创建(fork)

do_fork->copy_process->sched_fork->__sched_fork(完成CPU 寄存器复制)

然后由 wake_up_new_task(p, clone_flags); 启动进程
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: