某嵌入式实时操作系统采用了某种调度算法,当某任务执行接近自己的截止期时,调度算法将把该任务的优先级调整到系统最高优先级,让该任务获取CPU资源运行。请问此类调度算法是(__)。
实时操作系统调度算法中,最小松弛时间调度算法又称最晚截止期调度算法是典型的动态优先级调度策略,它以任务的松弛时间为核心依据调度,松弛时间为任务截止时间减去当前时间再减去剩余执行时间,当任务接近截止期、剩余执行时间紧张时,松弛时间会大幅缩减,系统会动态将该任务优先级调至最高,保障其在截止期前完成,这类算法适配硬实时场景,能灵活响应任务执行中的时间紧迫性变化。与之区分的是,固定优先级调度算法与抢占式优先级调度算法的优先级多为静态分配,不会随任务截止期临近动态调整;最早截止期调度算法则是选取绝对截止时间最早的任务执行,不考量任务当前的时间缓冲余量,无法依据任务接近截止期的程度动态调整优先级。
本题考察的是嵌入式实时操作系统的调度算法。
题干描述了在任务接近截止期时,将该任务优先级调整到最高的策略,这对应于“最晚截止期”或“最小松弛时间”调度算法。
A选项 优先级调度算法:系统为每个任务分配一个相对固定的优先级,调度时始终选择优先级高的任务运行。优先级固定,不会因接近截止期而临时提升优先级,因此不符合题干描述。
B选项 抢占式优先级调度算法:允许高优先级任务抢占低优先级任务的运行权,但前提是优先级已确定,并不根据任务接近截止期动态调整优先级,所以不符合题意。
C选项 最晚截止期调度算法:也称“最小松弛时间调度算法”,松弛时间 = 截止时间 - 当前时间 - 任务执行时间。当任务接近截止期且剩余执行时间不足时,其松弛度最小,系统会优先执行该任务,这与题干描述完全一致,因此正确。
D选项 最早截止期调度算法:选择绝对截止时间最早的任务执行,不考虑松弛时间大小,也不会根据接近截止期动态提升优先级,因此不符合题意。
所以本题正确答案是 C。
