System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术属于计算机技术,特别是涉及在信创平台上驱动usb设备的方法、装置及信创终端。
技术介绍
0、技术背景
1、在信创工程推进过程中,原技术体系架构下业务应用在信创环境上难以短期内实现全面适配兼容以及在设备替换的同时保证业务工作的连续性,因此需要解决信创体系与传统x86体系融合兼容的问题。通常采用应用虚拟化技术来解决兼容应用问题。
2、目前国际上常用的虚拟化技术包括虚拟机技术以及容器技术。
3、虚拟机(virtual machine)指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。在实体计算机中能够完成的工作在虚拟机中都能够实现。每个虚拟机都有独立的cmos、硬盘和操作系统,可以像使用实体机一样对虚拟机进行操作。
4、虚拟系统通过生成现有操作系统的全新虚拟镜像,它具有真实windows系统完全一样的功能,进入虚拟系统后,所有操作都是在这个全新的独立的虚拟系统里面进行,可以独立安装运行软件,保存数据,拥有自己的独立桌面,不会对真正的系统产生任何影响,而且具有能够在现有系统与虚拟镜像之间灵活切换的一类操作系统。
5、容器技术能够有效的将单个操作系统的资源划分到孤立的组中,以便更好的在孤立的组之间平衡有冲突的资源使用需求。容器技术能够在同一台服务器上创建相比于之前两倍的虚拟机实例数量,因此无疑将会降低系统总投入。
6、对于目前的信创平台,由于上述的虚拟化技术会导致其存在多个操作系统,此种情况下,当需要对信创终端外接usb设备时
技术实现思路
1、本专利技术要解决的技术问题是提供一种在信创平台上驱动usb设备的方法、装置及信创终端,以改善上述问题。
2、本专利技术实施例提供了一种在信创平台上驱动usb设备的方法,其包括:
3、获取用户在信创平台上需要使用的usb设备的驱动,并安装所述驱动;
4、当检测到在信创平台上插入usb设备时,通过usb通用映射驱动程序客户端将所述usb设备的产商id和产品id发送给usb通用映射程序服务器端;
5、根据产商id和产品id,由虚拟总线在所述usb通用映射程序服务器端上枚举出所述usb设备的驱动;
6、通过加载所述驱动实现usb设备,以实现物理主机与usb设备之间的数据传输,且使得usb设备在信创平台的信创操作系统中都使用同一个驱动。
7、优选地,数据传输在物理主机的应用软件和usb设备的各个端点之间直接进行,它们之间的连接称为管道;
8、管道表示物理主机的数据缓冲区和usb设备的端点之间存在着逻辑数据传输;管道和usb设备中的端点一一对应。
9、优选地,根据usb数据传输类型的不同,所述管道分为流管道和消息管道;其中,所述流管道是单向的,在流管道中传输的数据不具有usb定义的结构,用于块传输、同步传输和中断传输;
10、所述消息管道是双向的,在消息管道中传输的数据具有usb定义的结构,用于控制传输;所述usb设备的0号端点所实现的缺省控制管道为消息管道。
11、优选地,在usb通用映射驱动程序客户端处:
12、在驱动探测函数中探测usb设备的所有端点,并为每个端点建立缓冲区;
13、建立第一线程发送获取ip的udp请求;
14、建立第二线程接收获取ip的udp应答,并阻塞读取;当接收到ip的udp应答时,取消第一线程;第二线程以当前收到的ip地址配置ip,然后继续返回阻塞读取;
15、在ip确定以后,启动多个子线程,每个子线程对应一个usb设备的端点;
16、将所述usb控制的端点0做缺省控制,并建立两个句柄,即一个in和一个out;
17、若当前的数据传输状态为in,则阻塞读取套接字的数据;其中,当有数据到来,则分析其协议,如果是定义的读请求、需读的字节数,发送读请求给usb设备,读取usb设备该端点的数据,然后返回,写给套接字;
18、若当前的数据传输状态为out,则仍然阻塞读取套接字的数据;其中,当有数据到来,则分析其协议,若是定义的写请求、需写的字节数,读取套接字后面紧跟着的数据,返回后发送给usb设备。
19、优选地,在usb通用映射程序服务器端处,将信创平台的操作系统的usb端口映射过来,同时与虚拟总线进行通信,起到中间桥梁和协议转换的作用。
20、优选地,所述协议转换用于进行数据的打包和解包,解释网络数据和虚拟总线驱动的数据包,实现网络与虚拟总线的通信。
21、优选地,usb设备含有的端点数量与物理主机通信时使用的管道相同,且在各个管道之间进行数据传输是相互独立的。
22、本专利技术实施例还提供了一种在信创平台上驱动usb设备的装置,其包括:
23、驱动安装单元,用于获取用户在信创平台上需要使用的usb设备的驱动,并安装所述驱动;
24、id发送单元,用于当检测到在信创平台上插入usb设备时,通过usb通用映射驱动程序客户端将所述usb设备的产商id和产品id发送给usb通用映射程序服务器端;
25、枚举单元,用于根据产商id和产品id,由虚拟总线在所述usb通用映射程序服务器端上枚举出所述usb设备的驱动;
26、加载单元,用于通过加载所述驱动实现usb设备,以实现物理主机与usb设备之间的数据传输,且使得usb设备在信创平台上的信创操作系统中都使用同一个驱动。
27、本专利技术实施例还提供了一种信创终端,其包括处理器以及存储器,所述存储器内存储有计算机程序,所述计算机程序能够被所述处理器执行,以实现如上述的在信创平台上驱动usb设备的方法。
28、综上所述,本实施例中,通过集中器驱动枚举usb设备时让集中器直接加载自己初始化的驱动链表中的驱动,实现通用的usb驱动,使得任何usb设备插入信创平台都可以被该驱动初始化。
本文档来自技高网...【技术保护点】
1.一种在信创平台上驱动USB设备的方法,其特征在于,包括:
2.根据权利要求1所述的在信创平台上驱动USB设备的方法,其特征在于,数据传输在物理主机的应用软件和USB设备的各个端点之间直接进行,它们之间的连接称为管道;
3.根据权利要求2所述的在信创平台上驱动USB设备的方法,其特征在于,
4.根据权利要求3所述的在信创平台上驱动USB设备的方法,其特征在于,在USB通用映射驱动程序客户端处:
5.根据权利要求4所述的在信创平台上驱动USB设备的方法,其特征在于,在USB通用映射程序服务器端处,将信创平台的操作系统的USB端口进行映射,同时与虚拟总线进行通信,以起到中间桥梁和协议转换的作用。
6.根据权利要求2所述的在信创平台上驱动USB设备的方法,其特征在于,所述协议转换用于进行数据的打包和解包,解释网络数据和虚拟总线驱动的数据包,实现网络与虚拟总线的通信。
7.根据权利要求2所述的在信创平台上驱动USB设备的方法,其特征在于,USB设备含有的端点数量与物理主机通信时使用的管道相同,且在各个管道之间进行数
8.一种在信创平台上驱动USB设备的装置,其特征在于,包括:
9.一种信创终端,其特征在于,包括处理器以及存储器,所述存储器内存储有计算机程序,所述计算机程序能够被所述处理器执行,以实现如权利要求1至7任意一项所述的在信创平台上驱动USB设备的方法。
...【技术特征摘要】
1.一种在信创平台上驱动usb设备的方法,其特征在于,包括:
2.根据权利要求1所述的在信创平台上驱动usb设备的方法,其特征在于,数据传输在物理主机的应用软件和usb设备的各个端点之间直接进行,它们之间的连接称为管道;
3.根据权利要求2所述的在信创平台上驱动usb设备的方法,其特征在于,
4.根据权利要求3所述的在信创平台上驱动usb设备的方法,其特征在于,在usb通用映射驱动程序客户端处:
5.根据权利要求4所述的在信创平台上驱动usb设备的方法,其特征在于,在usb通用映射程序服务器端处,将信创平台的操作系统的usb端口进行映射,同时与虚拟总线进行通信,以起到中间桥梁和协议转换的作用...
【专利技术属性】
技术研发人员:李志坚,
申请(专利权)人:厦门威特科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。