- 6
- 0
- 约1.88千字
- 约 9页
- 2018-10-12 发布于江苏
- 举报
基于进程优先的实时调度
进程调度是计算机的灵魂。在实时系统里,要使重要紧急的进程一经唤醒就被优先调度运行,系统就必须有基于进程优先级的实时调度策略。 优先级继承算法 优先级反转 是指当一个高优先级任务访问共享资源时,该资源已被一个低优先级任务占有,而这个低优先级任务在访问共享资源时又可能被其它中优先级的任务抢占,造成高优先级任务被许多较低优先级任务阻塞,高优先级任务在低优先级任务之后运行,实时性得不到保证。 优先级继承算法 优先级反转——例 系统内低优先级的任务C占用着高优先级任务A要使用的资源时,任务A只好等待任务C执行完毕,并释放该资源后才能被调度执行。这时,如果有中优先级任务B进入就绪,剥夺了任务C的CPU使用权,使得系统只有先让B运行完毕,且任务C重新运行结束并释放资源后,任务A才能运行。这样,任务A和B的优先级发生了颠倒。在这种情况下,高优先级的任务的优先级实际上已经降到了低优先级的水平,从而发生优先级反转现象,中优先级的任务抢占低优先级的任务,时间可能不确定,因此称为无界优先级反转。 优先级继承算法——基本思想 当低优先级任务占用资源,而高优先级任务也要访问此资源的时,让低优先级任务把优先级提高到与高优先级同样的级别。 这样原来的低优先级任务就可能获得更多的资源( 如CPU 时间,内存等) ,以便尽快完成任务,释放所占用资源。 优先级继承算法——例 任务A是高优先级的,任务C是低优先级的。
原创力文档

文档评论(0)