基于Linux系统的异构多系统引导方法、装置及存储介质与流程

文档序号:39298164发布日期:2024-09-06 01:12阅读:33来源:国知局

本发明涉及异构多系统,尤其涉及一种基于linux系统的异构多系统引导方法、装置及存储介质。


背景技术:

1、多核化趋势正在改变it计算的面貌。与传统的单核中央处理器(centralprocessing unit,cpu)相比,多核cpu具有更多的优势,例如带来了更强的并行处理能力、更高的计算密度和更高的时钟频率,并大大减少了散热和功耗等。为了便于用户快速的实现业务的迁移,利用一个硬件平台同时运行多个异构操作系统成为最合理的解决方案。

2、现有技术中,通常采用虚拟机、以及多系统启动、docker容器的技术方案实现一个硬件平台同时运行多个系统的方案,虚拟机方案需要专用的虚拟化软件,如qemu等,而且一般host操作系统需要支持虚拟化功能,如kvm功能,使用虚拟机方案对系统存在一定的损耗。而使用docker的技术则存在安全风险,由于docker技术使用的所有的资源都是宿主机的,而且和宿主机共用一个内核。而采用多系统启动通常采用主核启动后,利用主核的操作系统内核启动从系统,也会产生内核互相影响的问题,存在安全风险。


技术实现思路

1、本发明实施例提供了一种基于linux系统的异构多系统引导方法、装置及存储介质,以解决现有技术中多核cpu运行多个异构操作系统存在安全风险的技术问题。

2、第一方面,本发明实施例提供了一种基于linux系统的异构多系统引导方法,包括:

3、在主linux系统正常启动后,解析多系统启动配置文件,根据解析结果生成系统加载任务队列;

4、从所述系统加载任务队列中读取需要加载的系统信息,判断当前环境是否满足所述系统的资源需求;

5、在满足时,从所述系统加载任务队列中取出所述加载的系统的信息,设置被加载系统对应的cpu资源,并为所述cpu资源设定跳转地址,所述跳转地址对应所述cpu资源的寄存器;

6、利用唤醒指令,唤醒cpu读取所述寄存器中的跳转地址,执行所述系统的启动程序;

7、返回从所述系统加载任务队列中读取需要加载的系统信息,直至所述系统加载任务队列为空或者当前环境无法满足需要加载的系统的资源需求。

8、第二方面,本发明实施例还提供了一种基于linux系统的异构多系统引导装置,包括:

9、解析模块,用于在主linux系统正常启动后,解析多系统启动配置文件,根据解析结果生成系统加载任务队列;

10、读取模块,用于从所述系统加载任务队列中读取需要加载的系统信息,判断当前环境是否满足所述系统的资源需求;

11、设置模块,用于在满足时,从所述系统加载任务队列中取出所述加载的系统的信息,设置被加载系统对应的cpu资源,并为所述cpu资源设定跳转地址,所述跳转地址对应所述cpu资源的寄存器;

12、唤醒模块,用于利用唤醒指令,唤醒cpu读取所述寄存器中的跳转地址,执行所述系统的启动程序;

13、返回模块,用于返回从所述系统加载任务队列中读取需要加载的系统信息,直至所述系统加载任务队列为空或者当前环境无法满足需要加载的系统的资源需求。

14、第三方面,本发明实施例还提供了一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如上述实施例提供的基于linux系统的异构多系统引导方法。

15、本发明实施例提供的基于linux系统的异构多系统引导方法、装置及存储介质,通过在主linux系统正常启动后,解析多系统启动配置文件,根据解析结果生成系统加载任务队列;从所述系统加载任务队列中读取需要加载的系统信息,判断当前环境是否满足所述系统的资源需求;在满足时,从所述系统加载任务队列中取出所述加载的系统的信息,设置被加载系统对应的cpu资源,并为所述cpu资源设定跳转地址,所述跳转地址对应所述cpu资源的寄存器;利用唤醒指令,唤醒cpu读取所述寄存器中的跳转地址,执行所述系统的启动程序;返回从所述系统加载任务队列中读取需要加载的系统信息,直至所述系统加载任务队列为空或者当前环境无法满足需要加载的系统的资源需求。根据用户设定的异构多系统,可确定加载的系统,并确定对应的cpu资源,并唤醒对应的cpu资源,利用读取寄存器的跳转地址,执行相应系统的启动,无需linux系统的内核参与,即可实现异构多系统启动。避免了内核互相影响导致的安全问题。



技术特征:

1.一种基于linux系统的异构多系统引导方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,所述解析多系统启动配置文件,根据解析结果生成系统加载任务队列,包括:

3.根据权利要求1所述的方法,其特征在于,在利用唤醒指令之前,所述方法还包括:

4.根据权利要求1所述的方法,其特征在于,在解析多系统启动配置文件之前,所述方法还包括:

5.根据权利要求1所述的方法,其特征在于,所述方法还包括:

6.根据权利要求1所述的方法,其特征在于,所述设置被加载系统对应的cpu资源,还包括:

7.根据权利要求1所述的方法,其特征在于,所述解析多系统启动配置文件,包括:

8.根据权利要求7所述的方法,其特征在于,所述根据解析结果生成系统加载任务队列,包括:

9.一种基于linux系统的异构多系统引导装置,其特征在于,包括:

10.一种包含计算机可执行指令的存储介质,其特征在于,所述计算机可执行指令在由计算机处理器执行时用于执行如权利要求1-8任一所述的基于linux系统的异构多系统引导方法。


技术总结
本发明公开了一种基于Linux系统的异构多系统引导方法、装置及存储介质,所述方法包括:在主Linux系统正常启动后,解析多系统启动配置文件,根据解析结果生成系统加载任务队列;从系统加载任务队列中读取需要系统信息,判断当前环境是否满足系统的资源需求;在满足时,从系统加载任务队列中取出加载的系统的信息,设置被加载系统对应的CPU资源,并为CPU资源设定跳转地址,所述跳转地址对应所述CPU资源的寄存器;利用唤醒指令,唤醒CPU读取寄存器中的跳转地址,执行系统的启动程序;返回从所述系统加载任务队列中读取需要加载的系统信息,直至系统加载任务队列为空或者当前环境无法满足需要加载的系统的资源需求。

技术研发人员:黄顺玉,付强,赵峰,吴春光,陈小文
受保护的技术使用者:麒麟软件有限公司
技术研发日:
技术公布日:2024/9/5
网友询问留言 留言:0条
  • 还没有人留言评论。精彩留言会获得点赞!