欢迎您的访问
专注于Java技术系列文章的Java技术分享网站

操作系统-schedule函数

1. Linux 0.11的调度函数schedule()

1、 也就是找到了counter最大的进程,然后就跳出去执行switch_to,对应上面的优先级算法,而counter本身也是时间片,也作了轮转调度
2、 现在就绪态的所有进程的时间片都用完了counter=0,右移+本身就是把counter设置成初值,而如果是其他进程,阻塞的那些进程就把counter除2再加上初值,这样的话,当阻塞态进程变成就绪态的话,也就是那些IO进程成就绪态的话,它对应的counter一定大,优先级就高,那么就先执行,而且执行的时间也稍微长点

78_1.png

2. counter的作用:时间片

这是在时钟中断,每次时钟中断都让counter=0,然后就开始切换

78_2.png

3. counter的作用:优先级

78_3.png

4. counter的作用

IO时间越长,counter越大?对应前面的第二点

78_4.png

文章永久链接:https://tech.souyunku.com/?p=37211

赞(63) 打赏



版权归原创作者所有,任何形式转载请联系作者;搜云库 » 操作系统-schedule函数

评论 抢沙发

一个专注于Java技术系列文章的技术分享网站

觉得文章有用就打赏一下文章作者

微信扫一扫打赏

微信扫一扫打赏