System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种跨平台操作系统的混合安全虚拟化方法技术方案_技高网

一种跨平台操作系统的混合安全虚拟化方法技术方案

技术编号:40991782 阅读:3 留言:0更新日期:2024-04-18 21:33
本发明专利技术属于计算机系统软件专业技术领域,具体涉及一种跨平台操作系统的混合安全虚拟化方法,基于半虚拟化系统架构实现;半虚拟化系统架构包括:前端驱动层、后端设备层以及传输层;虚拟队列由前端驱动层创建,用于数据传输的共享内存;其中后端设备层通过共享内存获取前端驱动层递交的I/O请求。本发明专利技术能够以一套通用的框架和标准接口协议来完成前后端设备之间的交互过程,从而既能避免因不同虚拟机的前端设备工作逻辑大同小异而需单独为每个设备定义一套接口,又能避免因不同后端的虚拟机监视器实现方式的大同小异而独立开发,减少跨平台所带来的兼容性问题。

【技术实现步骤摘要】

本专利技术属于计算机系统软件专业,具体涉及一种跨平台操作系统的混合安全虚拟化方法


技术介绍

1、在计算的物理资源中,外设资源是有限的,为了满足多个客户机操作系统的需求,虚拟机监视器必须通过i/o虚拟化的方式复用有限的外部资源。虚拟机监视器截获客户机操作系统对i/o设备的访问请求,然后通过软件模拟真实的硬件。i/o设备虚拟化方式采用半虚拟化,其通过底层硬件辅助的方式,将部分没必要虚拟化的指令通过硬件来完成,hypervisor只需负责完成部分指令的虚拟化。要做到这点,需要客户机的配合,客户机完成不同设备的前端驱动程序,hypervisor配合客户机完成相应的后端驱动成,这样两者之间通过某种交互机制就可以实现高效的虚拟化过程。而不同客户机前端设备工作逻辑大同小异,后端hypervisor的实现方式也大同小异,通常会为每个设备单独定义一套接口,或者使用不同框架。从而无法满足高效开发、强兼容性等要求。


技术实现思路

1、有鉴于此,为了解决跨平台操作系统之间上层应用与各个hypervisor虚拟化设备之间跨平台所导致的兼容性问题和开发效率问题,本专利技术提供一种跨平台操作系统的混合安全虚拟化方法,基于通用框架和标准接口(协议)来完成交互,解决了跨平台后各个hypervisor虚拟化设备之间不通用的问题,提高了客户机操作系统的开发效率和兼容性。

2、为了实现上述技术目的,本专利技术所采用的具体技术方案为:

3、一种跨平台操作系统的混合安全虚拟化方法,所述虚拟化方法基于半虚拟化系统架构实现;所述半虚拟化系统架构包括:

4、前端驱动层,为虚拟机内部的virtio模拟设备对应的驱动程序,用于发现virito设备并接收来自虚拟机内部的请求,根据virito协议与virtio模拟设备进行通信;

5、后端设备层,用于virito后端设备的模拟,具体为:依据virito协议处理来自虚拟机发出的请求;

6、传输层,位于所述前端驱动层和后端设备层之间;所述传输层用于支持虚拟机与hypervisor虚拟设备之间的数据通信;所述传输层基于虚拟队列实现前端驱动层与所述后端设备层之间的数据传输;

7、其中:所述虚拟队列由前端驱动层创建,用于数据传输的共享内存;所述后端设备层通过所述共享内存获取前端驱动层递交的i/o请求。

8、进一步的,所述半虚拟化系统架构使用前后端通信机制,在虚拟机中运行所述驱动程序,通过虚拟队列和后端的hypervisor虚拟设备进行数据交互。

9、进一步的,所述虚拟队列通过vring进行实现,vring为虚拟机和后端设备之间共享的一段环形缓冲区;vring包含三个部分:描述符表、可用环和已用环。

10、进一步的,所述描述符表是用于存储关联的描述符,每个描述符记录一个对buffer的描述;

11、进一步的,可用环用于保存前端驱动提供给后端设备的描述符表,且描述符表对后端设备层可以使用;

12、所述已用环用于保存后端设备层中后端处理程序已经处理过并且尚未反馈给前端驱动层的描述符表。

13、进一步的,所述前端驱动层与所述后端设备层数据通信的方法包括以下步骤:

14、s101:当虚拟机需要发送请求到后端设备层时,准备好数据后将数据描述符表放到可用环中,之后写配置通知后端设备层;

15、s102:后端设备层通过可用环中读取请求信息,从共享内存中读出数据;

16、s103:后端设备完成请求后,将响应状态存放在已用环中;前端驱动层从已用环中得到请求完成信息,并获取请求的数据;

17、进一步的,后端设备层中,每个设备根据需求配置所需数量的虚拟队列;前端驱动层通过可用环指向的描述符表来发起向后端设备层的request请求;后端设备层通过可用环来解析前段驱动层的驱动request请求,然后后端设备层通过已用环来给前段驱动层的驱动提供request请求处理好的结果。

18、进一步的,所述设备在所述第一平台基于第一驱动配置,在第二平台基于第二驱动配置;设备自第一平台扩展至第二平台时,半虚拟化系统架构在所述第二平台中将所述第一驱动升级为第二驱动。

19、本专利技术的有益效果:本专利技术基于通用框架和标准接口(协议)来完成交互,解决了跨平台后各个hypervisor虚拟化设备之间不通用的问题,提高了客户机操作系统的开发效率和兼容性。

本文档来自技高网...

【技术保护点】

1.一种跨平台操作系统的混合安全虚拟化方法,其特征在于,所述虚拟化方法基于半虚拟化系统架构实现;所述半虚拟化系统架构包括:

2.根据权利要求1所述的跨平台操作系统的混合安全虚拟化方法,其特征在于,所述半虚拟化系统架构使用前后端通信机制,在虚拟机中运行所述驱动程序,通过虚拟队列和后端的Hypervisor虚拟设备进行数据交互。

3.根据权利要求2所述的跨平台操作系统的混合安全虚拟化方法,其特征在于,所述虚拟队列通过vring进行实现,vring为虚拟机和后端设备之间共享的一段环形缓冲区;Vring包含三个部分:描述符表、可用环和已用环。

4.根据权利要求3所述的跨平台操作系统的混合安全虚拟化方法,其特征在于,所述描述符表是用于存储关联的描述符,每个描述符记录一个对buffer的描述。

5.根据权利要求4所述的跨平台操作系统的混合安全虚拟化方法,其特征在于,可用环用于保存前端驱动提供给后端设备的描述符表,且描述符表对后端设备层可以使用;

6.根据权利要求5所述的跨平台操作系统的混合安全虚拟化方法,其特征在于,所述前端驱动层与所述后端设备层数据通信的方法包括以下步骤:

7.根据权利要求6所述的跨平台操作系统的混合安全虚拟化方法,其特征在于,后端设备层中,每个设备根据需求配置所需数量的虚拟队列;前端驱动层通过可用环指向的描述符表来发起向后端设备层的request请求;后端设备层通过可用环来解析前段驱动层的驱动request请求,然后后端设备层通过已用环来给前段驱动层的驱动提供request请求处理好的结果。

8.根据权利要求7所述的跨平台操作系统的混合安全虚拟化方法,其特征在于,所述设备在第一平台基于第一驱动配置,在第二平台基于第二驱动配置;设备自第一平台扩展至第二平台时,半虚拟化系统架构在所述第二平台中将所述第一驱动升级为第二驱动。

...

【技术特征摘要】

1.一种跨平台操作系统的混合安全虚拟化方法,其特征在于,所述虚拟化方法基于半虚拟化系统架构实现;所述半虚拟化系统架构包括:

2.根据权利要求1所述的跨平台操作系统的混合安全虚拟化方法,其特征在于,所述半虚拟化系统架构使用前后端通信机制,在虚拟机中运行所述驱动程序,通过虚拟队列和后端的hypervisor虚拟设备进行数据交互。

3.根据权利要求2所述的跨平台操作系统的混合安全虚拟化方法,其特征在于,所述虚拟队列通过vring进行实现,vring为虚拟机和后端设备之间共享的一段环形缓冲区;vring包含三个部分:描述符表、可用环和已用环。

4.根据权利要求3所述的跨平台操作系统的混合安全虚拟化方法,其特征在于,所述描述符表是用于存储关联的描述符,每个描述符记录一个对buffer的描述。

5.根据权利要求4所述的跨平台操作系统的混合安全虚拟化方法,其特征在于,可用环...

【专利技术属性】
技术研发人员:刘欢虞保忠李运喜邓傲
申请(专利权)人:中国航空工业集团公司西安航空计算技术研究所
类型:发明
国别省市:

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

1