基于多系统隔离的USB设备虚拟共享系统
摘要文本
麒麟软件有限公司取得“一种透气窗帘布”专利技术,本发明实施例公开了一种基于多系统隔离的USB设备虚拟共享系统,通过在主Linux端提供一个通用的USB设备管理层,在rtos端提供通用的USB设备模拟层,使rtos模拟出USB设备并在不同系统之间切换。USB设备管理层利用虚拟共享设备链表对不同系统和不同的模拟USB设备进行管理,并利用链表节点的方式为每个虚拟USB进行管理,并利用配置信息对链表节点初始化,并申请相应的资源,并映射设备注册链表,USB设备模拟层根据映射的设备注册链表创建模拟设备链表,并进行初始化,根据共享内存地址与USB设备管理层进行数据交互,并根据设置的设备信息进行处理,得到对应的USB数据流。可以实现同时对多个USB虚拟设备进行管理,实现同时虚拟多个USB虚拟设备。
专利主权项内容
1.一种基于多系统隔离的USB设备虚拟共享系统,其特征在于,包括:主系统域,所述主系统域设置于主Linux系统中;从系统域,所述从系统域设置于从guest rtos系统中;所述主系统域包括:控制器,所述控制器用于在虚拟共享设备链表为每个设置的虚拟共享USB设备及对应的虚拟guest rtos系统创建链表节点,并根据配置信息对所述链表节点进行初始化,并根据链表节点申请传输、处理和内存资源,并在交互层映射生成设备注册链表,所述设备注册链表包括USB设备描述符、USB设备共享内存地址、USB设备状态;所述控制器包括:USB模块,用于在所述链表节点为活跃状态时,根据所述链表节点中的虚拟共享USB设备信息,获取USB驱动设备数据流到消息队列;同时接收来自guest rtos数据包处理后发送给USB驱动设备;数据流处理模块,用于依据USB虚拟共享设备链表对应节点信息调用对应的数据处理函数对数据流进行重组,生成数据包,并将数据包按链表节点申请的共享内存地址进行存储;所述从系统域,包括:管理模块,用于根据映射的设备注册链表,创建模拟设备链表,并根据映射的设备注册链表信息对所述模拟设备链表进行初始化,设置设备信息和共享内存地址;数据包处理模块,用于根据初始化的信息,从所述共享内存地址中取出数据包,并对所述数据包进行处理,得到对应的USB数据流。
专利申请信息
| 项目 | 内容 |
|---|---|
| 专利名称 | 基于多系统隔离的USB设备虚拟共享系统 |
| 专利类型 | 发明申请 |
| 申请号 | CN202311695250.7 |
| 申请日 | 2023/12/12 |
| 公告号 | CN117407123A |
| 公开日 | 2024/1/16 |
| IPC主分类号 | G06F9/455 |
| 权利人 | 麒麟软件有限公司 |
| 发明人 | 吴宁; 赵峰; 黄顺玉; 刘仁学 |
| 地址 | 天津市滨海新区高新区塘沽海洋科技园信安创业广场3号楼6-8层 |