虚拟化的分层多核调度技术解析
1. 基于管理程序的虚拟化
基于管理程序的虚拟化聚焦于 1 型管理程序,它是位于硬件与操作系统或应用软件之间的额外软件层。1 型管理程序裸机运行,需自行提供设备驱动(整体式)或借助特殊的客户系统(控制台客户机)。管理程序创建的虚拟机(VM)是真实硬件的副本,能让不同系统在单个硬件平台上实现空间和时间上的分离运行。
虚拟化分为全虚拟化和半虚拟化。全虚拟化中的客户系统意识不到管理程序的存在,而半虚拟化系统则是为在虚拟机中运行而适配的。因此,半虚拟化允许客户系统与管理程序进行信息交换,全虚拟化则不能。
2. 问题陈述
对于嵌入式实时系统,基于管理程序的虚拟化的时间隔离是一项重要特性。当前的实时管理程序通过管理程序级别的循环调度来确保不同虚拟机的时间隔离,为每个虚拟机在预定义的时间段内分配一定的处理时间,但虚拟机之间的依赖关系仍是一个待解决的问题。
同一虚拟机内任务间的依赖关系由本地调度器解决,而虚拟机之间的依赖关系则需管理程序调度器处理。半虚拟化中,本地调度器可在任务完成时通知管理程序,这有助于基于服务器的解决方案来调度有优先级约束的虚拟机。但全虚拟化下,本地和管理程序调度器无法主动交换信息,因此需要先验的本地调度和虚拟机依赖知识来实现合适的全局调度。
3. 研究贡献
主要聚焦于相关虚拟机的分层实时调度,以实现单核系统在多核硬件上的全虚拟化。其中,依赖关系由优先级约束定义。挑战在于将 p(p > 1)个核心的执行时间分配给 m(m > p)个虚拟机,同时满足任务的截止日期和优先级约束。每个虚拟机封装一个由独立本地单核调度驱动的周期性实时系统,时间共享通过固定
超级会员免费看
订阅专栏 解锁全文
986

被折叠的 条评论
为什么被折叠?



