linux之schedule流程图
2015-11-15 20:28:23 6 举报
Linux中的schedule流程图描述了进程调度器的工作原理。当一个进程被创建并添加到就绪队列中时,它会被赋予一个优先级。然后,调度器会根据进程的优先级和时间片等因素来决定下一个要运行的进程。如果当前运行的进程的时间片用完或者被阻塞,调度器会从就绪队列中选择一个最高优先级的进程来运行。这个过程会不断重复,直到所有的进程都完成执行或者被终止。总之,Linux中的schedule流程图展示了一个简单而高效的进程调度机制。
作者其他创作
大纲/内容
准备工作之后,切换进程
还没有
设置进程状态为TASK_RUNING
调用schedule()
有
是
没有
检查prev进程状态是否可以运行
1.禁止抢占2.把current给prev3.取得当前运行队列
next指向idle
否
当前进程是否是idle?
平衡当前处理器上的负载,并再次检查有无
交换活动队列和耗尽队列
查看是否为实时进程,再处理
当前运行队列有可以运行的吗?
检查是否在中断上下文中或者当前进程的状态是否为退出
是否可中断并且有未处理的信号?
为不可中断,把prev当前运行队列中去掉
有活动的吗
打印错误调试信息
计算prev进程的运行时间
根据位图从运行队列中选出要切换的进程next
0 条评论
下一页