当前位置: 首页 > 专利查询>王云飞专利>正文

一种基于微控制器平台的整合型虚拟化系统的方法技术方案

技术编号:21913733 阅读:29 留言:0更新日期:2019-08-21 12:21
本发明专利技术公开了一种基于微控制器平台的整合型虚拟化系统的方法,本发明专利技术所述方法允许在单核微控制器上通过中断直接发送到虚拟机的方式实现真正了实时虚拟化,允许在使用虚拟机的同时,使用直接基于底层系统内核的原生应用,以满足高实时应用程序的需求,将高级接口的语义翻译为系统内核的低级接口的语义,允许虚拟机和原生应用程序在运行时动态增减内存,或者使用POSIX标准的接口,降低了应用开发的难度,能够满足高实时性要求的应用场合。

A Method of Integrated Virtualization System Based on MCU Platform

【技术实现步骤摘要】
一种基于微控制器平台的整合型虚拟化系统的方法
本专利技术属于计算机
,尤其涉及一种基于微控制器平台的整合型虚拟化系统的方法。
技术介绍
目前,嵌入式系统的功能越来越多样化,使用到的软件模组的数量与日俱增,使系统构建的难度和复杂性快速上升。公开号为CN109660832A的专利公开了一种桌面虚拟化系统,包括:图像获取模块,用于获取视频图像;分析模块,记录获取的视频图像中变动的图像的数据区域,并进行合并,得到变动区域;图像处理模块,记录变动区域的变动速度和变动时间,并与预设的变动速度和预设的变动时间进行比对,区分视频区域和非视频区域;图像调节模块,用于根据负载大小,调节图像并将调整后的图像传输给客户端。公开号为CN109634825A的专利公开了一种虚拟化平台稳定性测试方法,包括:1)制定稳定性测试项目和虚拟化系统健康检查指标;2)从测试环境中获取主机配置、数量以及存储容量;3)制作加压虚拟机模板;4)启动稳定性测试;5)进行系统检查,每日检查项目包括管理节点、计算节点运行情况、故障告警信息、资源消耗情况以及虚拟机运行情况;6)稳定性测试结束,通过步骤五获得的运行性能指标、业务失败率指标,完成虚拟化平台的稳定性评估。当前的以微控制器微核心的嵌入式系统的代码量已经能够轻易达到100万行甚至更多,因此也引入大量的编码错误。现有的基于微控制器的嵌入式系统存在如下一些缺陷:1、各个软件包之间缺乏隔离,其中一个软件包发生的故障会快速扩展到整个系统,造成系统功能失灵。2、一旦其中一个软件包被黑客攻破,整个系统的信息安全都不复存在。3、现有的某些车载ECU使用的基于微控制器的虚拟化系统完全静态映射虚拟机的虚拟CPU到物理CPU,或者在编译时给每个虚拟机固定静态分配内存,实质上对整个系统进行了静态分区,完全破坏了虚拟化环境的动态配置能力,不符合今天快速增长的物联网市场对灵活性的要求。4、现有的某些虚拟化系统的中断传递方式落后低效,不能在虚拟CPU和物理CPU的关系不确定时高效确定地直接传递中断给虚拟机,而必须经过虚拟机监视器。5、现有的车载ECU使用的基于微控制器的虚拟化系统出于底层虚拟机监视器的设计而无法运行原生应用,降低了某些应用的实时性并缩窄了微控制器虚拟化技术的应用范围,并且一旦虚拟机监视器崩溃,安全相关软件的动作将全部失效。
技术实现思路
本专利技术的目的在于提供一种能够克服上述技术问题的基于微控制器平台的整合型虚拟化系统的方法,本专利技术所述方法包括以下步骤:步骤1、建立一种基于微控制器的整合型虚拟化系统:步骤1.1、建立用于提供底层系统级服务的系统内核sys_kernel;步骤1.2、建立用于对虚拟机提供虚拟化服务的虚拟机监视器vm_mon;步骤1.3、建立用于对平台原生应用程序提供高级系统调用服务的原生应用服务user_lib;步骤1.4、建立用于支持虚拟化应用程序的一个或多个虚拟机模块vm_module;步骤1.5、建立用于支持平台原生的应用程序的一个或多个原生应用模块app_module,原生应用模块app_module支持平台原生接口的应用程序并实现高效执行,并能直接接受中断信号。步骤2、微内核操作系统sys_kernel使用微控制器上硬件内存保护单元做到虚拟机之间的隔离和应用程序之间的隔离,管理系统权限并确保虚拟机之间和应用程序之间的信息安全。步骤3、微内核操作系统sys_kernel直接跨过虚拟机监视器直接传递中断信号到虚拟机内部。步骤4、虚拟机监视器vm_mon管理各个虚拟机,并且在单核状况下实现调度的实时性并实现虚拟机内存的动态分配和回收。步骤5、原生应用服务user_lib对平台原生应用程序提供类似POSIX标准的高级服务接口并实现应用程序内存的动态分配和回收。步骤6、虚拟机模块vm_module虚拟化运行任何在本平台上运行的实时操作系统。步骤7、系统内核sys_kernel的具体实现:步骤7.1、系统内核sys_kernel提供分区功能,对于每个分区都提供两个线性表,分别是地址空间表addr_space和权能表cap_table,并对每个分区提供一定的内核服务和资源;步骤7.2、地址空间表限制分区能够访问的地址空间;步骤7.3、权能表限制分区能够访问的内核服务和资源;任何一个分区都只能访问地址空间表中指定的地址和权能表中指定的权能;步骤7.4、虚拟机监视器vm_mon作为一个系统自带的用户态分区运行在系统上;步骤7.5、原生应用服务user_lib作为一个系统自带的用户态分区运行在系统上;步骤7.6、任何一个虚拟机模块vm_module作为一个独立的用户态分区运行在系统上;步骤7.7、任何一个原生应用模块app_module作为一个独立的用户态分区运行在系统上;步骤7.8、系统能够通过中断端点的方式发送中断到任何分区;步骤7.9、分区以及内核服务和资源动态创建和消除。步骤8、虚拟机监视器vm_mon的具体实现:步骤8.1、虚拟机监视器vm_mon的权能表内部具备创建虚拟机、削除虚拟机、分配内存给虚拟机和从虚拟机剥夺内存的必要权能;步骤8.2、虚拟机监视器vm_mon调度各个虚拟机模块vm_module;步骤8.3、虚拟机监视器vm_mon能够被各个虚拟机模块vm_module调用的接口add_mem和rem_mem添加或移除内存,并且将接口的语义转换为更基本的系统内核sys_kernel并能够理解的语义;步骤8.4、虚拟机监视器vm_mon接受中断透传,也即系统内核sys_kernel直接将中断先通知虚拟机模块vm_module而后通知虚拟机监视器vm_mon;步骤8.5、虚拟机监视器vm_mon提供接口使虚拟机模块vm_module能够发送信号到原生应用模块app_module。步骤9、原生应用服务user_lib的具体实现:步骤9.1、原生应用服务user_lib的权能表内部具备创建原生应用分区、削除原生应用分区、分配内存给原生应用分区和从原生应用分区剥夺内存的必要权能;步骤9.2、原生应用服务user_lib调度各个原生应用模块app_module;步骤9.3、原生应用服务user_lib具备能够被各个原生应用模块app_module调用的POSIX的接口,并且将接口的语义转换为更基本的系统内核sys_kernel能够理解的语义;步骤9.4、原生应用服务user_lib能够接受中断透传,也即系统内核sys_kernel直接将中断先通知原生应用模块app_module而不会通知任何中间层次;步骤9.5、原生应用服务user_lib提供接口使原生应用模块app_module能够发送信号到虚拟机模块vm_module。本专利技术所述方法相对现在的基于微控制器的虚拟化系统的优越效果是在于:1、本专利技术所述方法允许在单核微控制器上通过中断直接发送到虚拟机的方式实现真正了实时虚拟化,消除了传统方法中需要先发送中断到虚拟机监视器再由虚拟机监视器发送给客户机的方法,能够满足高实时性要求的应用场合。2、本专利技术所述方法允许在使用虚拟机的同时使用直接基于底层系统内核的原生应用以满足高实时应用程序的需求。3、本专利技术所述方法将高级接口的语义翻译为系统内核的低级接口的语义,允许虚拟机和原生应用程序在运行时动态增本文档来自技高网
...

【技术保护点】
1.一种基于微控制器平台的整合型虚拟化系统的方法,其特征在于,包括以下步骤:步骤1、建立一种基于微控制器的整合型虚拟化系统;步骤2、微内核操作系统sys_kernel使用微控制器上硬件内存保护单元做到虚拟机之间的隔离和应用程序之间的隔离,管理系统权限并确保虚拟机之间和应用程序之间的信息安全;步骤3、微内核操作系统sys_kernel直接跨过虚拟机监视器直接传递中断信号到虚拟机内部;步骤4、虚拟机监视器vm_mon管理各个虚拟机,并且在单核状况下实现调度的实时性并实现虚拟机内存的动态分配和回收;步骤5、原生应用服务user_lib对平台原生应用程序提供类似POSIX标准的高级服务接口并实现应用程序内存的动态分配和回收;步骤6、虚拟机模块vm_module虚拟化运行任何在本平台上运行的实时操作系统;步骤7、系统内核sys_kernel的具体实现;步骤8、虚拟机监视器vm_mon的具体实现;步骤9、原生应用服务user_lib的具体实现。

【技术特征摘要】
1.一种基于微控制器平台的整合型虚拟化系统的方法,其特征在于,包括以下步骤:步骤1、建立一种基于微控制器的整合型虚拟化系统;步骤2、微内核操作系统sys_kernel使用微控制器上硬件内存保护单元做到虚拟机之间的隔离和应用程序之间的隔离,管理系统权限并确保虚拟机之间和应用程序之间的信息安全;步骤3、微内核操作系统sys_kernel直接跨过虚拟机监视器直接传递中断信号到虚拟机内部;步骤4、虚拟机监视器vm_mon管理各个虚拟机,并且在单核状况下实现调度的实时性并实现虚拟机内存的动态分配和回收;步骤5、原生应用服务user_lib对平台原生应用程序提供类似POSIX标准的高级服务接口并实现应用程序内存的动态分配和回收;步骤6、虚拟机模块vm_module虚拟化运行任何在本平台上运行的实时操作系统;步骤7、系统内核sys_kernel的具体实现;步骤8、虚拟机监视器vm_mon的具体实现;步骤9、原生应用服务user_lib的具体实现。2.根据权利要求1所述的一种基于微控制器平台的整合型虚拟化系统的方法,其特征在于,所述步骤1包括以下步骤:步骤1.1、建立用于提供底层系统级服务的系统内核sys_kernel;步骤1.2、建立用于对虚拟机提供虚拟化服务的虚拟机监视器vm_mon;步骤1.3、建立用于对平台原生应用程序提供高级系统调用服务的原生应用服务user_lib;步骤1.4、建立用于支持虚拟化应用程序的一个或多个虚拟机模块vm_module;步骤1.5、建立用于支持平台原生的应用程序的一个或多个原生应用模块app_module,原生应用模块app_module支持平台原生接口的应用程序并实现高效执行并能直接接受中断信号。3.根据权利要求1所述的一种基于微控制器平台的整合型虚拟化系统的方法,其特征在于,所述步骤7包括以下步骤:步骤7.1、系统内核sys_kernel提供分区功能,对于每个分区都提供两个线性表,分别是地址空间表addr_space和权能表cap_table,并对每个分区提供一定的内核服务和资源;步骤7.2、地址空间表限制分区能够访问的地址空间;步骤7.3、权能表限制分区能够访问的内核服务和资源;任何一个分区都只能访问地址空间表中指定的地址和权能表中指定的权能;步骤7.4、虚拟机监视器vm_mon作为一个系统自带的用户态分区运行在...

【专利技术属性】
技术研发人员:王云飞
申请(专利权)人:王云飞
类型:发明
国别省市:河南,41

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1