论文部分内容阅读
汽车电子等硬实时控制系统是直接面向消费者的批量生产产品,而且其市场竞争异常激烈,使得这些系统对于硬件成本十分敏感,因此在设计时能够使用的系统资源相当受限。通常硬件资源包括处理器和内存资源等,而嵌入式系统普遍采用商用现成品COTS(Commercial Off The Shelf),内存资源使用即使降低很少一部分,就可以采用更为廉价的处理器平台。 本研究主要内容包括:⑴内存系统中的随机存储器(RAM Memory)以缓存和主存为主,在实时嵌入式系统设计中,为降低缓存对实时系统的可预测性的影响,相关优化技术如缓存分区技术等以牺牲缓存使用率来简化实时系统的可调度性分析,本文提出多种算法来提高单核系统上缓存分区等优化技术的缓存使用率,并可以轻易的扩展到多核系统中;单核处理器上主存优化已经得到了广泛的研究,而多核处理器由于并行性带来了新的研究问题,如分区调度中的任务分配问题、全局调度中的可调度性分析问题等,针对这些问题给出了多种解决方案来优化多核平台下的主存使用。⑵抢在带有共享缓存的单核系统中,抢占式调度使得不同的任务可能会在共享缓存中对彼此产生干扰,导致缓存相关抢占开销。缓存分区技术可以用来消除缓存相关抢占开销,但是它同时也使得每个任务能够使用的缓存空间变小,从而会对可调度性产生负面影响。提出将缓存分区和抢占阈值调度相结合,并应用到固定优先级调度算法和最早截止期优先调度算法中,来提高系统的可调度性。通过对每个任务设置合适的抢占阈值,使得分配到同一个缓存分区的任务子集组成一个不可抢占组。这样不仅能够消除每个缓存分区对应任务子集内部任务之间的缓存相关抢占开销,同时也可以消除不同缓存分区中的任务之间的缓存相关抢占开销,使得每个任务能够使用更大的缓存分区,从而优化缓存的使用。⑶采用固定优先级调度算法或者最早截止期优先调度算法的多核分区调度,整合抢占阈值调度,并且以在保证可调度性的前提下最小化系统栈内存为最终优化目标,着重解决了任务到处理器的映射、每个任务的优先级和抢占阈值设置等一系列设计优化问题。文中提出了基于混合整型线性规划的能够得到最优解的算法和能够取得高质量结果并在解决速度上更为高效的启发式算法,同时在合成任务集和工业级应用案例上做了大量的性能测试。⑷将抢占阈值整合到全局固定优先级调度中,提出了全局固定优先级抢占阈值调度算法,并解决了在保证可调度性的前提下最小化系统栈内存这一优化问题。文中首次给出了该调度算法的可调度性分析,并提出了任务的优先级和抢占阈值设置算法,以及求解系统栈内存的线性规划算法。并且实验结果也表明相对于抢占式调度,抢占阈值调度能够极大的减少系统栈内存。