[发明专利]一种面向k8s的用户态虚拟设备驱动框架在审
| 申请号: | 202011413906.8 | 申请日: | 2020-12-07 |
| 公开(公告)号: | CN112486632A | 公开(公告)日: | 2021-03-12 |
| 发明(设计)人: | 殷进勇;杨建;杨鸿斌;李轶;方新茂;路朗;徐振朋;曾玮妮;张鹏;徐国强 | 申请(专利权)人: | 中国船舶重工集团公司第七一六研究所 |
| 主分类号: | G06F9/455 | 分类号: | G06F9/455 |
| 代理公司: | 南京理工大学专利中心 32203 | 代理人: | 朱炳斐 |
| 地址: | 222001 *** | 国省代码: | 江苏;32 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 面向 k8s 用户 虚拟 设备 驱动 框架 | ||
1.一种面向k8s的用户态虚拟设备驱动框架,其特征在于,所述驱动框架包括IO设备、Linux内核即内核空间,以及k8s pod即用户空间;
所述IO设备支持SRIOV,可以虚拟成多个虚拟设备VF,多个VF共享硬件资源;
所述Linux内核通过VFIO和eventfd将VF的IO地址、中断映射到k8s pod的pause容器中;VF设备驱动程序运行在pod的pause容器内,pod中的其他应用容器通过共享内存的方式访问pause容器中的VF设备驱动程序,此外,其中一个pod的应用容器中部署虚拟设备管理程序。
2.根据权利要求1所述的面向k8s的用户态虚拟设备驱动框架,其特征在于,所述虚拟设备管理程序的功能包括虚拟设备分配,虚拟设备IO地址和中断映射。
3.根据权利要求2所述的面向k8s的用户态虚拟设备驱动框架,其特征在于,当pod请求一个虚拟设备时,虚拟设备管理程序分配虚拟设备的步骤如下:
步骤1,查询是否存在支持虚拟化的设备,如果存在,则转到步骤2;否则,转到步骤6;
步骤2,设备是否已经虚拟化,如果已经虚拟化,转到步骤4;否则,转到步骤3;
步骤3,根据设备虚属性和虚拟化方法,虚拟化出给定数量的虚拟设备;所述虚属性包括支持的虚拟设备数量;
步骤4,是否存在未分配的虚拟设备,如果存在,转到步骤5;否则,转到步骤6;
步骤5,通过VFIO和eventfd将虚拟设备的IO地址和中断映射到pod的pause容器中;
步骤6,设备分配失败,退出。
4.根据权利要求3所述的面向k8s的用户态虚拟设备驱动框架,其特征在于,所述应用程序与VF设备驱动程序通过两个队列进行通信,实现应用程序读、写设备,具体实现方式包括:
提供了驱动接口和应用接口,其中驱动接口部署在pod的pause容器里,衔接VF设备驱动程序;应用接口部署在应用容器里,衔接应用程序;
同时,利用一个数组desc描述两个队列的状态。
5.根据权利要求4所述的面向k8s的用户态虚拟设备驱动框架,其特征在于,所述应用程序写设备,具体过程包括:
步骤1,应用程序将存有数据的buffer添加到写队列中;
步骤2,更改数组desc的状态,表示存在有效数据;
步骤3,通知VF设备驱动程序数据已更新;
步骤4,VF设备驱动程序查看数组desc的状态,读出有效数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国船舶重工集团公司第七一六研究所,未经中国船舶重工集团公司第七一六研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011413906.8/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种组装式便携防倾倒移动房
- 下一篇:一种板架的夹持装置





