[发明专利]一种面向k8s的用户态虚拟设备驱动框架在审
| 申请号: | 202011413906.8 | 申请日: | 2020-12-07 |
| 公开(公告)号: | CN112486632A | 公开(公告)日: | 2021-03-12 |
| 发明(设计)人: | 殷进勇;杨建;杨鸿斌;李轶;方新茂;路朗;徐振朋;曾玮妮;张鹏;徐国强 | 申请(专利权)人: | 中国船舶重工集团公司第七一六研究所 |
| 主分类号: | G06F9/455 | 分类号: | G06F9/455 |
| 代理公司: | 南京理工大学专利中心 32203 | 代理人: | 朱炳斐 |
| 地址: | 222001 *** | 国省代码: | 江苏;32 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 面向 k8s 用户 虚拟 设备 驱动 框架 | ||
本发明公开了一种面向k8s的用户态虚拟设备驱动框架,该框架采用SRIOV技术,将IO设备虚拟成多个共享硬件资源的虚拟设备,并将虚拟设备的IO地址、中断映射到pod的pause容器中,在pause容器运行虚拟设备的驱动程序。pod中的其他应用容器通过共享内存的方式访问pause容器中的驱动程序。该框架提供了虚拟设备管理、应用程序与驱动程序通信接口等内容,用户只需在框架下编写具体设备的驱动代码,降低了编写设备驱动程序的复杂性。该框架采用虚拟化和透传的方式,将设备驱动的大部分功能移植到pause容器内实现,可与应用程序一起交付,在保证设备效率的同时,提升了驱动程序的隔离性、可交付性和系统的可靠性。
技术领域
本发明属于用户态设备驱动框架领域,特别涉及一种面向k8s的用户态虚拟设备驱动框架。
背景技术
在Linux系统中,传统的驱动程序运行在内核态,与内核其他部分共享同一地址空间。由于驱动程序本身的复杂性以及开发人员并不完全熟悉内核结构,其开发的驱动程序难免出现错误。一旦驱动程序产生错误,将影响所有使用该驱动程序的应用和其他引用该驱动程序的内核代码,甚至会造成整个操作系统的崩溃,影响整个系统的可靠性。
为提升系统的可靠性,将驱动程序移到用户态是一个有效途径。驱动程序运行在用户态的主要优点包括:(1)驱动开发人员可以使用丰富的用户态应用程序开发工具、软件库,提高开发效率,降低开发难度;(2)用户态驱动程序错误不会影响整个系统,故障域减小,提高系统可靠性。
目前开发用户态驱动程序主要采用的框架包括UIO和VFIO,UIO将驱动的很少一部分运行在内核空间,而在用户空间实现驱动的绝大多数功能,但UIO不能实现DMA功能,因此只适用于数据传输了较少的设备。VFIO是UIO的升级版,其利用IOMMU等硬件的支持,实现了设备地址空间的隔离,能够将设备地址空间、中断安全地映射到用户空间。基于VFIO框架,白子秋、胡怀湘等人提出了一种NVMe的用户态驱动程序设计方案,该论文发表在《计算机应用与软件》期刊上。
作为容器编排软件的k8s已俨然成为云计算平台的标配,各地共有云平台均提供k8s服务;但目前的用户态设备驱动框架主要是针对传统应用模式提出的,不适用于容器化应用。
发明内容
本发明的目的在于针对上述现有技术存在的问题,提供一种面向k8s的虚拟设备驱动框架,方便在k8s平台下开发用户态设备驱动程序。
实现本发明目的的技术解决方案为:一种面向k8s的用户态虚拟设备驱动框架,所述驱动框架包括IO设备、Linux内核即内核空间,以及k8s pod即用户空间;
所述IO设备支持SRIOV,可以虚拟成多个虚拟设备VF,多个VF共享硬件资源;
所述Linux内核通过VFIO和eventfd将VF的IO地址、中断映射到k8s pod的pause容器中;VF设备驱动程序运行在pod的pause容器内,pod中的其他应用容器通过共享内存的方式访问pause容器中的VF设备驱动程序,此外,其中一个pod的应用容器中部署虚拟设备管理程序。
进一步地,所述虚拟设备管理程序的功能包括虚拟设备分配,虚拟设备IO地址和中断映射。
进一步地,当pod请求一个虚拟设备时,虚拟设备管理程序分配虚拟设备的步骤如下:
步骤1,查询是否存在支持虚拟化的设备,如果存在,则转到步骤2;否则,转到步骤6;
步骤2,设备是否已经虚拟化,如果已经虚拟化,转到步骤4;否则,转到步骤3;
步骤3,根据设备虚属性和虚拟化方法,虚拟化出给定数量的虚拟设备;所述虚属性包括支持的虚拟设备数量;
步骤4,是否存在未分配的虚拟设备,如果存在,转到步骤5;否则,转到步骤6;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国船舶重工集团公司第七一六研究所,未经中国船舶重工集团公司第七一六研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011413906.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种组装式便携防倾倒移动房
- 下一篇:一种板架的夹持装置





