【操作系统】实时调度
HRT任务(硬实时操作系统):必须在确定的时间内完成,必须确保截止时间的要求
SRT任务(软实时操作系统):让绝大多数任务在确定时间内完成,基本能保证对截
实时系统中两种不同性质的实时任务: HRT任务(硬实时操作系统):必须在确定的时间内完成,必须确保截止时间的要求 SRT任务(软实时操作系统):让绝大多数任务在确定时间内完成,基本能保证对截止时间的要求。 实现实时调度的基本条件: (1)系统需提供必要信息: 就绪时间、开始截止时间、完成截止时间、处理时间、资源要求、优先级 (2)系统处理能力强: Ci:作业处理时间 Pi:作业周期时间(周期:作业从提交到释放的时间) 单处理机:可调度的条件 多处理机可调度的条件: (3)采用抢占式机制:可以满足硬实时任务对截止时间的要求 (4)具有快速切换机制:对中断快速响应能力,对快速任务分派能力。 影响实时系统的性能延迟: 中断延迟:CPU收到中断到中断服务程序开始的时间。 调度延迟:从停止一个进程到启动一个进程所需的时间 在硬实时系统中,中断和调度延迟时间是有界的。 实时调度算法的分类: 非抢占式: (1)非抢占式轮转调度算法 由一台计算机控制若干个相同的对象,为每一个被控对象建立一个实时任务,并将它们排成一个轮转队列。 (2)非抢占式优先调度算法: 为少数具有一定要求的实时任务赋予较高的优先权。 抢占式: (1)基于时钟中断的抢占式优先级调度算法: 优先级更高的实时任务到达后,并不立即抢占当前任务的处理机,而是等到中断发生时,调度程序才剥夺当前任务的执行。 (2)立即抢占优先级调度算法: 一旦出现外部中断,只要当前任务未处于临界区,便能立即剥夺当前任务的执行,把处理机分配给更紧迫的任务。 最早截止时间优先EDF算法: 任务截止时间越早,优先级越高,具有最早截止时间的任务排在队列的队首。 最早截止时间既可用于可抢占式调度方式中,也可用在非抢占式调度方式中。 最低松弛度优先LLF算法: 任务紧急程度越高,赋予该任务的优先级就越高。 在实现该算法时要求系统有一个按松弛度排序的实时任务就绪队列云计算调度系统,松弛度最低的任务排在最前面。 优先级倒置现象: 高优先级进程被低优先级进程延迟或阻塞的现象。 例:三个独立的进程P1,P2,P3。P1的优先级最高,P2次之,P3最低。P1和P3通过共享一个临界资源进行交互
P1先执行,之后P2就绪,抢占CPU,之后P1就绪,抢占CPU,但是临界资源被P3占用,P1被阻塞直至P3释放临界资源。 优先级高的P1被P3阻塞,出现优先级倒置的情况。 优先级倒置解决方法: (1)如果P3进入临界区后,就不允许被P2抢占。 (2)动态优先级继承:当高优先级进程P1要进入临界区,去使用临界资源R,如果已有一个低优先级进程P3正在使用该资源,此时一方面P1被阻塞。另一方面P3继承P1的优先级,并一直保持P3退出临界区,这样防止P2插进来导致延缓P3退出临界区。 (编辑:海南站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |