论文部分内容阅读
实时系统计算结果的准确性及输出结果的及时性使得其在工业、国防、一医疗和通信等诸多领域得到越来越广泛的应用。随着对实时系统性能要求的不断提高,传统任务调度算法的调度性能越来越难以满足应用的要求。论文围绕实时系统单处理器任务调度和多处理器任务调度两个方面展开研究,特别针对动态优先级任务调度算法中存在的若干问题,进行了深入研究。本文主要研究工作归纳如下:针对单处理器最小空闲时间优先调度算法作业切换常出现颠簸的现状,提出一种改进的动态模糊阈值最小空闲时间优先软实时调度算法。给出“模糊阈值系数”的概念,选取当前作业的剩余空闲时间和周期为模糊输入,运用模糊理论生成模糊阈值系数,用动态模糊阂值作为当前作业的虚拟剩余空闲时间参予优先级比较以尽量避免抢占。仿真结果表明,与最小空闲时间优先调度算法相比,该算法在不降低调度成功率的同时有效地减少了作业的切换次数。针对最早截止期优先调度算法作业切换多、超载时错失率高的现状,提出两种改进的最早截止期优先软实时动态调度算法。两种算法选取当前作业的剩余空闲时间和关键性系数为模糊输入以生成动态模糊阈值系数,分别通过缩短和延长当前作业的绝对截止期至动态模糊阈值的方法减少抢占、避免作业错失。阈值的大小由作业的多种参数共同决定,大大提高了重要作业被成功调度的几率。仿真结果表明,与最早截止期优先调度算法比较,两种算法有效地提高了重要作业的完成率,当截止期被延长时,错失率明显降低,当截止期被缩短时,作业间的切换次数大大减少。针对优先级个数受限系统中调度算法难以确保分组准确性问题,提出一种改进的组优先级最早截止期优先调度算法。给出作业分组可调度性能测试,将满足分组可调度测试公式的作业作为一个作业组,以作业组内最早绝对截止期为作业组优先级,作业组与其他作业按照最早截止期优先调度,在作业组得到系统资源后,作业组内按照最短作业优先的原则执行作业。仿真结果表明,与最早截止期优先调度算法、尽力服务调度算法及其他组优先级调度算法相比,新算法不仅能有效降低算法所需优先级个数,还能提高调度的成功率,缩短平均响应时间,减少作业切换次数。针对同构多处理器动态优先级局部调度中密度算法和DBF*算法的判据存在可能将可调度任务误判为不可调度的情况,提出一种新的高效需求界限函数局部调度算法。算法采用更为精准的可调度性判据,分别在最小数目处理器以及固定数目处理器两种情况下,通过多阶跟踪需求界限函数轨迹确保了对任务可调度性判断的准确性。仿真结果表明,新算法与密度算法和DBF*算法相比,可调度任务的数量大大提升。针对异构多处理器局部调度算法复杂度高且难以实现最优分配的问题,提出一种新的整数线性规划局部调度算法。在准确表达处理器之间的差异以及任务参数后,设定总处理器利用率为目标函数,通过建立约束条件求取目标函数的最小值,将异构多处理器调度问题描述为整数线性规划问题,利用Lingo快速求解整数线性规划问题,进而求得异构多处理器任务的优化分配。仿真结果表明了新算法的有效性。