CN113805952B - 外设虚拟化管理方法、服务器和系统 - Google Patents

外设虚拟化管理方法、服务器和系统 Download PDF

Info

Publication number
CN113805952B
CN113805952B CN202111092957.XA CN202111092957A CN113805952B CN 113805952 B CN113805952 B CN 113805952B CN 202111092957 A CN202111092957 A CN 202111092957A CN 113805952 B CN113805952 B CN 113805952B
Authority
CN
China
Prior art keywords
peripheral
thin client
service program
target
equipment
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202111092957.XA
Other languages
English (en)
Other versions
CN113805952A (zh
Inventor
黄珂
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China United Network Communications Group Co Ltd
Original Assignee
China United Network Communications Group Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by China United Network Communications Group Co Ltd filed Critical China United Network Communications Group Co Ltd
Priority to CN202111092957.XA priority Critical patent/CN113805952B/zh
Publication of CN113805952A publication Critical patent/CN113805952A/zh
Application granted granted Critical
Publication of CN113805952B publication Critical patent/CN113805952B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • G06F9/452Remote windowing, e.g. X-Window System, desktop virtualisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Human Computer Interaction (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明公开了一种外设虚拟化管理方法、服务器和系统,涉及通信技术领域。该方法包括:基于预先获取的目标外设的设备信息生成相应的虚拟外设,其中,该目标外设是与瘦客户端连接的外部设备,加载预先安装的与该目标外设对应的外设服务程序,响应于外设服务程序生成的第一请求,向瘦客户端发送目标设备初始化请求,以使瘦客户端对目标外设进行初始化操作,并在瘦客户端返回的初始化结果为初始化成功的情况下,确定目标外设虚拟化成功,能够解决外设连接到瘦客户端后无法通过虚拟桌面进行使用的问题,有效实现瘦客户端连接的外设的通用虚拟化,提高外设使用的便捷性。

Description

外设虚拟化管理方法、服务器和系统
技术领域
本发明涉及通信技术领域,具体涉及一种外设虚拟化管理方法、服务器和系统。
背景技术
随着云计算技术的发展,桌面云技术被越来越广泛的使用。桌面云技术是一种远程桌面虚拟技术,在桌面虚拟化环境下,瘦客户端通过网络连接使用服务器的桌面,用户对瘦客户端的各种操作传输到服务器进行运算,并将结果返回到瘦客户端。
现有技术中,WINDOWS服务器端通过RDP映射等方法实现了部分常见外部设备(外设)映射到服务器的云桌面中,如U盘、打印机等。然而瘦客户端在连接摄像头、手写屏、高拍仪、扫描仪等外设后,由于缺乏通用的外设虚拟化方法而使这些外设连接到瘦客户端后无法通过服务器的云桌面进行使用。因此,如何有效实现瘦客户端连接外设的通用虚拟化成为亟需解决的问题。
发明内容
为此,本发明提供一种外设虚拟化管理方法、服务器和系统,以解决现有技术中由于缺乏通用的外设虚拟化方法而导致的外设连接到瘦客户端后无法通过云桌面进行使用的问题。
为了实现上述目的,本发明第一方面提供一种外设虚拟化管理方法,该方法包括:
基于预先获取的目标外设的设备信息生成相应的虚拟外设,其中,所述目标外设是所述瘦客户端连接的外设;
加载预先安装的与所述目标外设对应的外设服务程序;
响应于所述外设服务程序生成的第一请求,向所述瘦客户端发送目标设备初始化请求,以使所述瘦客户端对所述目标外设进行初始化操作;
在所述瘦客户端返回的初始化结果为初始化成功的情况下,确定所述目标外设虚拟化成功。
可选地,在所述瘦客户端返回的初始化结果为初始化成功的情况下,确定所述目标外设虚拟化成功之后,还包括:
在虚拟桌面系统运行与所述虚拟外设对应的应用程序。
可选地,所述在虚拟桌面系统显示与所述虚拟外设对应的应用程序之后,还包括:
响应于所述瘦客户端通过所述应用程序发送的外设使用请求,向所述瘦客户端发送目标外设操作信息,以使所述瘦客户端基于所述目标外设操作信息驱动所述目标外设进行相应操作处理;
获取所述瘦客户端返回的处理结果,并将所述处理结果返回所述应用程序。
可选地,所述在所述瘦客户端返回的初始化结果为初始化成功的情况下,确定所述目标外设虚拟化成功之后,还包括:
基于瘦客户端发送的设备移除信息,确定与所述设备移除信息对应的目标外设;
移除与所述目标外设对应的虚拟外设,并卸载与所述目标外设对应的外设服务程序。
可选地,在响应于瘦客户端发送的设备移除信息,确定与所述设备移除信息对应的目标外设之前,还包括:
响应于所述瘦客户端发送的外设移除请求,向所述瘦客户端发送移除信息获取请求;
接收所述瘦客户端响应所述移除信息获取请求返回的所述设备移除信息,所述设备移除信息包括设备标识。
可选地,在所述基于预先获取的目标外设的设备信息生成相应的虚拟外设之前,还包括:
响应于所述瘦客户端发送的设备连接请求,向所述瘦客户端发送设备信息获取请求;
接收所述瘦客户端响应于所述设备信息获取请求返回的所述设备信息;所述设备信息包括外设编号、设备类型、设备厂商标识、设备标识中的一种或多种。
本发明第二方面提供一种服务器,该服务器包括:
生成模块,用于基于预先获取的目标外设的设备信息生成相应的虚拟外设,其中,所述目标外设是所述瘦客户端连接的外设;
处理模块,用于加载预先安装的与所述目标外设对应的外设服务程序;
发送模块,用于响应于所述外设服务程序生成的第一请求,向所述瘦客户端发送目标设备初始化请求,以使所述瘦客户端对所述目标外设进行初始化操作;
控制模块,用于在所述瘦客户端返回的初始化结果为初始化成功的情况下,确定所述目标外设虚拟化成功。
可选地,所述控制模块,还用于在所述瘦客户端返回的初始化结果为初始化成功的情况下,确定所述目标外设虚拟化成功之后,在虚拟桌面系统运行与所述虚拟外设对应的应用程序。
可选地,所述服务器还包括获取模块;
所述发送模块,还用于响应于所述瘦客户端通过所述应用程序发送的外设使用请求,向所述瘦客户端发送目标外设操作信息,以使所述瘦客户端基于所述目标外设操作信息驱动所述目标外设进行相应操作处理;
所述获取模块,用于获取所述瘦客户端返回的处理结果;
所述处理模块,用于将所述处理结果返回所述应用程序。
可选地,所述服务器还包括:
确定模块,用于基于瘦客户端发送的设备移除信息,确定与所述设备移除信息对应的目标外设;
移除模块,用于移除与所述目标外设对应的虚拟外设,并卸载与所述目标外设对应的外设服务程序。
本发明第三方面提供一种外设虚拟化管理系统,该系统包括:瘦客户端、目标外设和本发明第二方面提供的服务器。
本发明具有如下优点:
本发明提供一种外设虚拟化管理方法、服务器和系统。该方法包括:基于预先获取的目标外设的设备信息生成相应的虚拟外设,其中,该目标外设是与瘦客户端连接的外部设备,加载预先安装的与该目标外设对应的外设服务程序,响应于外设服务程序生成的第一请求,向瘦客户端发送目标设备初始化请求,以使瘦客户端对目标外设进行初始化操作,并在瘦客户端返回的初始化结果为初始化成功的情况下,确定目标外设虚拟化成功,能够有效实现瘦客户端连接的外设的通用虚拟化,提高外设使用的便捷性。
附图说明
附图是用来提供对本发明的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明,但并不构成对本发明的限制。
图1为本发明实施例提供的一种外设虚拟化管理方法的流程图;
图2为本发明实施例提供的另一种外设虚拟化管理方法的流程图;
图3为本发明实施例提供的又一种外设虚拟化管理方法的流程图;
图4为本发明实施例提供的一种服务器的结构示意图;
图5为本发明实施例提供的一种外设虚拟化管理装置的结构示意图;
图6为本发明实施例提供的再一种外设虚拟化管理方法的流程图。
具体实施方式
以下结合附图对本发明的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明,并不用于限制本发明。
随着云计算技术的发展,桌面云技术被越来越广泛的使用。桌面云技术是一种远程桌面虚拟技术,在桌面虚拟化环境下,瘦客户端通过网络连接使用服务器的桌面,用户对瘦客户端的各种操作传输到服务器进行运算,并将结果返回到瘦客户端。因此,在使用连接到瘦客户端的外部设备(外设)时,需要使外设的数据能够传输到服务器端,才能正常使用。然而,在瘦客户端上运行的操作系统大多数为嵌入式操作系统,如l inux、WinCE等,这些嵌入式操作系统对外设的支持都不太友好,从而造成大量的外设因为缺乏运行在这些操作系统下的驱动程序和应用程序而不能使用。
现有技术中,WINDOWS服务器端通过远程显示协议(Remote Display Protocal,RDP)映射等方法实现了部分常见外部设备(外设)映射到服务器的云桌面中,如U盘、打印机等。然而瘦客户端在连接摄像头、手写屏、高拍仪、扫描仪等外设后,由于缺乏通用的外设虚拟化方法而使这些外设无法呈现在服务器的云桌面中,导致这些外设连接到瘦客户端后无法使用。因此,如何有效实现瘦客户端连接外设的通用虚拟化成为亟需解决的问题。
为了解决上述难题,本发明实施例提供一种外设虚拟化管理方法,该方法应用于服务器。
图1为本发明实施例提供一种外设虚拟化管理方法的流程图。
如图1所示,该方法包括以下步骤:
步骤S 101、基于预先获取的目标外设的设备信息生成相应的虚拟外设。
其中,目标外设是与瘦客户端连接的外部设备。例如,该目标外设可以是摄像头、手写屏、高拍仪、扫描仪等。目标外设的设备信息包括:外设编号、设备类型、设备厂商标识、设备标识中的一种或多种。
步骤S102、加载预先安装的与目标外设对应的外设服务程序。
其中,与目标外设对应的外设服务程序是预先安装在服务器上的该目标外设对应的通用驱动程序。
在一个实施方式中,预先在服务器上安装各目标外设对应的外设服务程序,其中,各目标外设对应的外设服务程序由目标外设的设备厂商提供。
步骤S 103、响应于外设服务程序生成的第一请求,向瘦客户端发送目标设备初始化请求,以使瘦客户端对目标外设进行初始化操作。
在一个实施方式中,服务器加载预先安装的与目标外设对应的外设服务程序之后,该外设服务程序启动运行,生成第一请求,其中,该第一请求用于对目标外设进行初始化。
在一个实施方式中,响应于外设服务程序生成的第一请求,向瘦客户端发送目标设备初始化请求的步骤,包括:
服务器监测到该外设服务程序生成的第一请求,对该第一请求进行解包分析,确认该第一请求用于对目标外设进行初始化的情况下,将该第一请求进行封装,生成目标设备初始化请求,并向该瘦客户端发送该目标设备初始化请求。该目标设备初始化请求可以是TCP/IP(Transmission Control Protocol/Internet Protocol,传输控制/网际协议)数据包。
在一个实施方式中,瘦客户端响应于目标设备初始化请求对目标外设进行初始化操作的步骤,包括:瘦客户端将该目标设备初始化请求转换为瘦客户端的操作系统底层可处理的初始化指令,并将转换后的初始化指令通过底层驱动接口发送至目标外设,以使该目标外设响应于该初始化指令进行初始化。
在一个实施方式中,瘦客户端从目标外设处获取初始化结果,并将该初始化结果发送至服务器,以供服务器确定目标外设是否初始化成功。其中,该初始化结果为初始化成功结果或者初始化失败结果。
步骤S 104、在瘦客户端返回的初始化结果为初始化成功的情况下,确定目标外设虚拟化成功。
其中,在瘦客户端返回的初始化结果为初始化成功的情况下,说明服务器与目标外设之间可以进行数据传输,该服务器上的虚拟外设与目标外设(物理外设)之间的用于数据传输的数据逻辑链路已经建立,该目标外设成功映射到了服务器上,即该目标外设虚拟化成功。
在一个实施方式中,在瘦客户端返回的初始化结果为初始化失败的情况下,服务器将该初始化结果发送至外设服务程序,外设服务程序重新生成第一请求,服务器响应于外设服务程序重新生成的第一请求,重新向瘦客户端发送目标设备初始化请求,直到瘦客户端返回的初始化结果为初始化成功。
本发明实施例提供一种外设虚拟化管理方法,该方法包括:首先,基于预先获取的目标外设的设备信息生成相应的虚拟外设,其中,该目标外设是与瘦客户端连接的外部设备,然后,加载预先安装的与该目标外设对应的外设服务程序,最后,响应于外设服务程序生成的第一请求,向瘦客户端发送目标设备初始化请求,以使瘦客户端对目标外设进行初始化操作,并在瘦客户端返回的初始化结果为初始化成功的情况下,确定目标外设虚拟化成功,能够有效实现瘦客户端连接的外设的通用虚拟化,提高外设使用的便捷性。
另外,本发明实施例提供的外设虚拟化管理方法,在使用外设时只需预先安装各个外设厂商提供的外设服务程序,即各个外设厂家无需针对每一种桌面云系统都开发相应的虚拟化程序和驱动程序,还能够节约外设厂商的研发资源消耗,降低成本。
在一个实施方式中,在基于预先获取的目标外设的设备信息生成相应的虚拟外设之前,还包括:
步骤一、响应于瘦客户端发送的设备连接请求,向瘦客户端发送设备信息获取请求。
其中,设备连接请求是瘦客户端监测到目标外设连接之后向服务器发送的、用于表示当前有外设进行连接的信息。设备信息获取请求是用于获取目标外设的设备信息的请求。
在一个实施方式中,瘦客户端响应于该设备信息获取请求,将目标外设对应的设备信息封装后发送至服务器。其中,设备信息包括外设编号、设备类型、设备厂商标识、设备标识中的一种或多种。
步骤二、接收瘦客户端响应于设备信息获取请求返回的设备信息。
在一个实施方式中,在瘦客户端返回的初始化结果为初始化成功的情况下,确定目标外设虚拟化成功之后,还包括:在虚拟桌面系统运行与虚拟外设对应的应用程序。
其中,虚拟桌面系统是运行在服务器上的桌面云系统。
在该实施方式中,在虚拟桌面系统运行与虚拟外设对应的应用程序之后,用户通过瘦客户端登录到服务器上的虚拟桌面系统,可以看到虚拟桌面系统中显示的与虚拟外设对应的应用程序,并可以通过该与虚拟外设对应的应用程序使用目标外设。
图2为本发明实施例提供的另一种外设虚拟化管理方法。在一个实施方式中,如图2所示,在虚拟桌面系统显示与虚拟外设对应的应用程序之后,还包括:
步骤S201、响应于瘦客户端通过应用程序发送的外设使用请求,向瘦客户端发送目标外设操作信息,以使瘦客户端基于目标外设操作信息驱动目标外设进行相应操作处理。
其中,外设使用请求是用于请求对目标外设进行操作的请求。目标外设操作信息包含目标外设的外设编号、设备标识以及操作标识等信息,该操作标识用于标识目标外设需要执行的操作,例如,扫描、拍照等。
在一个实施方式中,瘦客户端基于目标外设操作信息驱动目标外设进行相应操作处理的步骤,包括:瘦客户端将该目标外设操作信息转换为瘦客户端的瘦客户端的操作系统底层可处理的操作指令,并将转换后的操作指令通过底层驱动接口发送至目标外设,以使该目标外设响应于该操作指令进行相应操作处理。
在一个实施方式中,瘦客户端从目标外设处获取处理结果,并将该处理结果发送至服务器。其中,该处理结果包括目标外设进行上述相应操作处理后获得的信息,例如,相应操作处理为拍照,则该处理结果包括拍照后获得的照片信息;相应操作处理为扫描,则该处理结果包括扫描后获得的文件信息。
步骤S202、获取瘦客户端返回的处理结果,并将处理结果返回应用程序。
在一个实施方式中,用户可以通过瘦客户端登录到服务器上的虚拟桌面系统,并通过该虚拟桌面系统中的应用程序查看该处理结果。
需要说明的是,通过本实施例提供的另一种外设虚拟化管理方法,可以有效实现通过虚拟桌面系统对瘦客户端连接的目标外设的使用,提高外设使用的便捷性。
图3为本发明实施例提供的又一种外设虚拟化管理方法。在一个实施方式中,如图3所示,在瘦客户端返回的初始化结果为初始化成功的情况下,确定目标外设虚拟化成功之后,还包括:
步骤S301、基于瘦客户端发送的设备移除信息,确定与设备移除信息对应的目标外设。
其中,设备移除信息包括设备标识。
在一个实施方式中,在响应于瘦客户端发送的设备移除信息,确定与设备移除信息对应的目标外设之前,还包括:响应于瘦客户端发送的外设移除请求,向瘦客户端发送移除信息获取请求;接收瘦客户端响应于移除信息获取请求返回的设备移除信息,该设备移除信息包括设备标识。其中,外设移除请求是瘦客户端响应于自身的外设拔出提醒信息生成的用于请求服务器移除虚拟外设的信息。
步骤S302、移除与目标外设对应的虚拟外设,并卸载目标外设对应的外设服务程序。
其中,移除与目标外设对应的虚拟外设之后,虚拟桌面系统中将不再运行与该虚拟外设对应的应用程序。卸载目标外设对应的外设服务程序之后,服务器中仍旧安装有该目标外设对应的外设服务程序,但是服务器的内存中将不再运行该外设服务程序,服务器中运行该外设服务程序的相应内存资源被释放。
本发明实施例提供又一种外设虚拟化管理方法,可以实现目标外设的拔出时服务器中与该目标外设对应的虚拟外设以及外设服务程序的同步移除,提高了外设使用的便捷性。
图4为本发明实施例提供的一种服务器。如图4所示,该服务器包括:生成模块41、处理模块42、发送模块43和控制模块44。
其中,生成模块41,用于基于预先获取的目标外设的设备信息生成相应的虚拟外设。
其中,目标外设是与瘦客户端连接的外部设备。例如,该目标外设可以是摄像头、手写屏、高拍仪、扫描仪等。目标外设的设备信息包括:外设编号、设备类型、设备厂商标识、设备标识中的一种或多种。
处理模块42,用于加载预先安装的与目标外设对应的外设服务程序。
发送模块43,用于响应于外设服务程序生成的第一请求,向瘦客户端发送目标设备初始化请求,以使瘦客户端对目标外设进行初始化操作。
控制模块44,用于在瘦客户端返回的初始化结果为初始化成功的情况下,确定目标外设虚拟化成功。
在一个实施方式中,上述控制模块44,还用于在瘦客户端返回的初始化结果为初始化成功的情况下,确定目标外设虚拟化成功之后,在虚拟桌面系统运行与虚拟外设对应的应用程序。
本实施例提供的服务器中各模块的工作方式与应用于服务器的外设虚拟化管理方法中各步骤对应,因此,服务器中各模块的详细工作方式可参见本实施例提供的应用于服务器的外设虚拟化管理方法。
本发明实施例提供一种服务器,生成模块用于基于预先获取的目标外设的设备信息生成相应的虚拟外设,其中,该目标外设是与瘦客户端连接的外部设备,处理模块用于加载预先安装的与该目标外设对应的外设服务程序,发送模块用于响应于外设服务程序生成的第一请求,向瘦客户端发送目标设备初始化请求,以使瘦客户端对目标外设进行初始化操作,控制模块用于在瘦客户端返回的初始化结果为初始化成功的情况下,确定目标外设虚拟化成功,能够有效实现瘦客户端连接的外设的通用虚拟化,提高外设使用的便捷性。
在一个实施方式中,服务器还包括接收模块。在上述生成模块41基于预先获取的目标外设的设备信息生成相应的虚拟外设之前,上述发送模块43还用于响应于瘦客户端发送的设备连接请求,向瘦客户端发送设备信息获取请求;接收模块,用于接收瘦客户端响应于设备信息获取请求返回的设备信息,其中,设备信息包括外设编号、设备类型、设备厂商标识、设备标识中的一种或多种。
在一个实施方式中,服务器还包括获取模块。上述发送模块43,还用于响应于瘦客户端通过应用程序发送的外设使用请求,向瘦客户端发送目标外设操作信息,以使瘦客户端基于目标外设操作信息驱动目标外设进行相应操作处理。该获取模块,用于获取瘦客户端返回的处理结果。上述处理模块42,还用于将处理结果返回应用程序。
本实施例提供的服务器,可以使用户通过瘦客户端登录虚拟桌面系统,进而实现通过虚拟桌面系统对瘦客户端连接的目标外设的使用,提高了外设使用的便捷性。
在一个实施方式中,服务器还包括:确定模块和移除模块。
其中,确定模块,用于基于瘦客户端发送的设备移除信息,确定与设备移除信息对应的目标外设。
在一个实施方式中,在确定模块响应于瘦客户端发送的设备移除信息,确定与设备移除信息对应的目标外设之前,还包括:响应于瘦客户端发送的外设移除请求,向瘦客户端发送移除信息获取请求;接收瘦客户端响应移除信息获取请求返回的设备移除信息,其中,设备移除信息包括设备标识。
移除模块,用于移除与目标外设对应的虚拟外设,并卸载与目标外设对应的外设服务程序。
本发明实施例提供的服务器,可以实现目标外设的拔出时服务器中与该目标外设对应的虚拟外设以及外设服务程序的同步移除,提高了外设使用的便捷性。
图5为本发明实施提供的一种外设虚拟化管理系统,其中,该系统包括:瘦客户端51、目标外设52和服务器53。
其中,目标外设52连接在瘦客户端51上。目标外设52和服务器53通过已经建立的网络连接进行通信和交互。
上述瘦客户端51、目标外设52和服务器53的具体工作方式详见上述实施例,此处不再赘述。
图6为本发明实施例提供的再一种外设虚拟化管理方法,应用于上述外设虚拟化管理系统。该系统包括:瘦客户端、目标外设和服务器。其中,瘦客户端上运行有第一映射服务程序和登录服务程序。服务器上运行有第二映射服务程序、虚拟设备服务程序和各目标外设对应的设备服务程序。运行在服务器的第二映射服务程序和运行在瘦客户端的第一映射服务程序通过服务器和瘦客户端已经建立的网络连接进行通信和交互。该瘦客户端和服务器上的各服务程序中集成了多个模块的功能,例如接收功能、发送功能、生成功能、处理功能、获取功能等多种功能。如图6所示,该方法包括:
步骤S601、瘦客户端上运行的第一映射服务程序监测到目标外设连接,发送设备连接请求至服务器上运行的第二映射服务程序。
步骤S602、服务器上运行的第二映射服务程序接收并响应于该设备连接请求,向瘦客户端上运行的第一映射服务程序发送设备信息获取请求。
步骤S603、第一映射服务程序响应于该设备信息获取请求,将目标外设对应的设备信息封装后发送至第二映射服务程序。
其中,设备信息包括外设编号、设备类型、设备厂商标识、设备标识中的一种或多种。
步骤S604、服务器上的第二映射服务程序向服务器上的虚拟设备服务程序发送该设备信息。
步骤S605、虚拟设备服务程序基于该设备信息生成相应的虚拟外设,并加载预先安装的与目标外设对应的外设服务程序。
步骤S606、外设服务程序启动运行,生成第一请求。
步骤S607、虚拟设备服务程序监测外设服务程序生成的第一请求,向第二映射服务程序发送目标设备初始化请求。
步骤S608、服务器上的第二映射服务程序将该目标设备初始化请求发送至瘦客户端上的第一映射服务程序。
步骤S609、瘦客户端上的第一映射服务程序将该目标设备初始化请求转换为瘦客户端的操作系统底层可处理的初始化指令,并将转换后的初始化指令通过底层驱动接口发送至目标外设,以使该目标外设响应于该初始化指令进行初始化。
步骤S610、瘦客户端上的第一映射服务程序从目标外设处获取初始化结果。
步骤S611、瘦客户端上的第一映射服务程序将该初始化结果发送至服务器上的第二映射服务程序。
步骤S612、第二映射服务程序将该初始化结果发送至虚拟设备服务程序。虚拟设备服务程序将该初始化结果发送至外设服务程序。
在初始化结果为初始化成功的情况下,外设服务程序确定目标外设虚拟化成功。在初始化结果为初始化失败的情况下,重新执行上述步骤S606-步骤S612。
步骤S613、瘦客户端通过登录服务程序登录到服务器的虚拟桌面系统,并通过虚拟桌面系统上与目标外设对应的应用程序发送外设使用请求。
步骤S614、虚拟设备服务程序接收到应用程序发送的外设使用请求。
步骤S615、虚拟设备服务程序响应于外设使用请求,向第二映射服务程序发送该发送目标外设操作信息。服务器上的第二映射服务程序向瘦客户端上的第一映射服务程序发送该目标外设操作信息。
步骤S616、瘦客户端上的第一映射服务程序将该目标外设操作信息转换为瘦客户端的瘦客户端的操作系统底层可处理的操作指令,并将转换后的操作指令通过底层驱动接口发送至目标外设,以使该目标外设响应于该操作指令进行相应操作处理。
步骤S617、瘦客户端上的第一映射服务程序目标从外设处获取处理结果。
步骤S618、瘦客户端上的第一映射服务程序将该处理结果发送至服务器上的第二映射服务程序。
步骤S619、服务器上的第二映射服务程序将该处理结果发送至虚拟设备服务程序。虚拟设备服务程序将该处理结果返回外设服务程序,该外设服务程序将该处理结果返回至应用程序。
步骤S620、瘦客户端上的第一映射服务程序监测到外设拔出,向服务器上的第二映射服务程序发送外设移除请求。
步骤S621、第二映射服务程响应于该外设移除请求,向第一映射服务程序发送移除信息获取请求。
步骤S622、第一映射服务程序向第二映射服务程序返回设备移除信息,其中,设备移除信息包括设备标识。
步骤S623、服务器上的第二映射服务程序向虚拟设备服务程序发送该设备移除信息。
步骤S624、虚拟设备服务程序基于该设备移除信息,移除与目标外设对应的虚拟外设,并卸载目标外设对应的外设服务程序。
本发明实施例提供的外设虚拟化管理方法,能够有效实现瘦客户端连接的外设的通用虚拟化,提高外设使用的便捷性。
本领域普通技术人员可以理解,上文中所发明方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其它数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其它存储器技术、CD-ROM、数字多功能盘(DVD)或其它光盘存储、磁盒、磁带、磁盘存储或其它磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其它的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其它传输机制之类的调制数据信号中的其它数据,并且可包括任何信息递送介质。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本实施例的范围之内并且形成不同的实施例。
可以理解的是,以上实施方式仅仅是为了说明本发明的原理而采用的示例性实施方式,然而本发明并不局限于此。对于本领域内的普通技术人员而言,在不脱离本发明的精神和实质的情况下,可以做出各种变型和改进,这些变型和改进也视为本发明的保护范围。

Claims (11)

1.一种外设虚拟化管理方法,其特征在于,应用于服务器,所述服务器上运行有第二映射服务程序、虚拟设备服务程序和各目标外设对应的设备服务程序,所述方法包括:
所述虚拟设备服务程序基于预先获取的目标外设的设备信息生成相应的虚拟外设,其中,所述目标外设是与瘦客户端连接的外设;所述瘦客户端上运行有第一映射服务程序;所述第二映射服务程序与所述第一映射程序,通过所述服务器和所述瘦客户端已经建立的网络连接进行通信和交互;
所述设备信息通过如下方法获得:所述第一映射服务程序监测到目标外设连接,发送设备连接请求至第二映射服务程序;所述第二映射服务程序响应于所述设备连接请求,向所述第一映射服务程序发送设备信息获取请求;所述第一映射服务程序响应于所述设备信息获取请求,将所述预先获取的目标外设对应的设备信息封装后发送至第二映射服务程序;所述第二映射服务程序向所述虚拟设备服务程序发送所述设备信息;
所述虚拟设备服务程序加载预先安装的与所述目标外设对应的外设服务程序;
所述虚拟设备服务程序响应于所述外设服务程序生成的第一请求,向所述瘦客户端发送目标设备初始化请求,以使所述瘦客户端对所述目标外设进行初始化操作;
所述外设服务程序在所述瘦客户端返回的初始化结果为初始化成功的情况下,确定所述目标外设虚拟化成功。
2.根据权利要求1所述的方法,其特征在于,在所述瘦客户端返回的初始化结果为初始化成功的情况下,确定所述目标外设虚拟化成功之后,还包括:
在虚拟桌面系统运行与所述虚拟外设对应的应用程序。
3.根据权利要求2所述的方法,其特征在于,所述在虚拟桌面系统显示与所述虚拟外设对应的应用程序之后,还包括:
响应于所述瘦客户端通过所述应用程序发送的外设使用请求,向所述瘦客户端发送目标外设操作信息,以使所述瘦客户端基于所述目标外设操作信息驱动所述目标外设进行相应操作处理;
获取所述瘦客户端返回的处理结果,并将所述处理结果返回所述应用程序。
4.根据权利要求1所述的方法,其特征在于,所述在所述瘦客户端返回的初始化结果为初始化成功的情况下,确定所述目标外设虚拟化成功之后,还包括:
基于瘦客户端发送的设备移除信息,确定与所述设备移除信息对应的目标外设;
移除与所述目标外设对应的虚拟外设,并卸载与所述目标外设对应的外设服务程序。
5.根据权利要求4所述的方法,其特征在于,在响应于瘦客户端发送的设备移除信息,确定与所述设备移除信息对应的目标外设之前,还包括:
响应于所述瘦客户端发送的外设移除请求,向所述瘦客户端发送移除信息获取请求;
接收所述瘦客户端响应所述移除信息获取请求返回的所述设备移除信息,所述设备移除信息包括设备标识。
6.根据权利要求1所述的方法,其特征在于,在所述基于预先获取的目标外设的设备信息生成相应的虚拟外设之前,还包括:
响应于所述瘦客户端发送的设备连接请求,向所述瘦客户端发送设备信息获取请求;
接收所述瘦客户端响应于所述设备信息获取请求返回的所述设备信息;所述设备信息包括外设编号、设备类型、设备厂商标识、设备标识中的一种或多种。
7.一种服务器,其特征在于,所述服务器上运行有第二映射服务程序、虚拟设备服务程序和各目标外设对应的设备服务程序,所述服务器包括:
生成模块,用于所述虚拟设备服务程序基于预先获取的目标外设的设备信息生成相应的虚拟外设,其中,所述目标外设是与瘦客户端连接的外设;所述瘦客户端上运行有第一映射服务程序;所述第二映射服务程序与所述第一映射程序,通过所述服务器和所述瘦客户端已经建立的网络连接进行通信和交互;所述设备信息通过如下方法获得:所述第一映射服务程序监测到目标外设连接,发送设备连接请求至第二映射服务程序;所述第二映射服务程序响应于所述设备连接请求,向所述第一映射服务程序发送设备信息获取请求;所述第一映射服务程序响应于所述设备信息获取请求,将所述预先获取的目标外设对应的设备信息封装后发送至第二映射服务程序;所述第二映射服务程序向所述虚拟设备服务程序发送所述设备信息;
处理模块,用于所述虚拟设备服务程序加载预先安装的与所述目标外设对应的外设服务程序;
发送模块,用于所述虚拟设备服务程序响应于所述外设服务程序生成的第一请求,向所述瘦客户端发送目标设备初始化请求,以使所述瘦客户端对所述目标外设进行初始化操作;
控制模块,用于所述外设服务程序在所述瘦客户端返回的初始化结果为初始化成功的情况下,确定所述目标外设虚拟化成功。
8.根据权利要求7所述的服务器,其特征在于,所述控制模块,还用于在所述瘦客户端返回的初始化结果为初始化成功的情况下,确定所述目标外设虚拟化成功之后,在虚拟桌面系统运行与所述虚拟外设对应的应用程序。
9.根据权利要求8所述的服务器,其特征在于,所述服务器还包括获取模块;
所述发送模块,还用于响应于所述瘦客户端通过所述应用程序发送的外设使用请求,向所述瘦客户端发送目标外设操作信息,以使所述瘦客户端基于所述目标外设操作信息驱动所述目标外设进行相应操作处理;
所述获取模块,用于获取所述瘦客户端返回的处理结果;
所述处理模块,用于将所述处理结果返回所述应用程序。
10.根据权利要求7所述的服务器,其特征在于,所述服务器还包括:
确定模块,用于基于瘦客户端发送的设备移除信息,确定与所述设备移除信息对应的目标外设;
移除模块,用于移除与所述目标外设对应的虚拟外设,并卸载与所述目标外设对应的外设服务程序。
11.一种外设虚拟化管理系统,其特征在于,所述系统包括:瘦客户端、目标外设和权利要求7-10任意一项所述的服务器。
CN202111092957.XA 2021-09-17 2021-09-17 外设虚拟化管理方法、服务器和系统 Active CN113805952B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111092957.XA CN113805952B (zh) 2021-09-17 2021-09-17 外设虚拟化管理方法、服务器和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111092957.XA CN113805952B (zh) 2021-09-17 2021-09-17 外设虚拟化管理方法、服务器和系统

Publications (2)

Publication Number Publication Date
CN113805952A CN113805952A (zh) 2021-12-17
CN113805952B true CN113805952B (zh) 2023-10-31

Family

ID=78939754

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111092957.XA Active CN113805952B (zh) 2021-09-17 2021-09-17 外设虚拟化管理方法、服务器和系统

Country Status (1)

Country Link
CN (1) CN113805952B (zh)

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101035039A (zh) * 2007-04-20 2007-09-12 福建升腾资讯有限公司 Usb映射方法
CN102368231A (zh) * 2011-10-14 2012-03-07 深圳市京华科讯科技有限公司 一种usb设备重定向的方法及系统
CN202257550U (zh) * 2011-10-14 2012-05-30 深圳市京华科讯科技有限公司 一种usb设备重定向系统
CN104394290A (zh) * 2014-10-27 2015-03-04 深圳市京华科讯科技有限公司 基于桌面虚拟化技术的打印机映射方法及系统
CN104881315A (zh) * 2014-10-27 2015-09-02 深圳市京华科讯科技有限公司 基于桌面虚拟化技术的存储设备映射方法及系统
CN107077377A (zh) * 2016-12-29 2017-08-18 深圳前海达闼云端智能科技有限公司 一种设备虚拟化方法、装置、系统及电子设备、计算机程序产品
CN107707622A (zh) * 2017-08-30 2018-02-16 华为技术有限公司 一种访问桌面云虚拟机的方法、装置及桌面云控制器
CN107846466A (zh) * 2017-11-15 2018-03-27 中国联合网络通信集团有限公司 云终端外部设备的映射方法、服务器、云终端及系统
CN108512928A (zh) * 2018-04-08 2018-09-07 上海微穹信息科技有限公司 云端虚拟机及其文件管理方法、系统、虚拟机瘦客户端
CN108694065A (zh) * 2017-04-10 2018-10-23 鸿富锦精密电子(天津)有限公司 虚拟桌面系统及虚拟桌面控制方法
CN111030990A (zh) * 2019-11-05 2020-04-17 华为技术有限公司 一种建立通信连接的方法及客户端、服务端
CN112311950A (zh) * 2020-10-30 2021-02-02 新华三大数据技术有限公司 通信方法及装置
CN113296884A (zh) * 2021-02-26 2021-08-24 阿里巴巴集团控股有限公司 虚拟化方法、装置、电子设备、介质及资源虚拟化系统

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103324278A (zh) * 2012-10-30 2013-09-25 中兴通讯股份有限公司 终端设备、系统及接入虚拟桌面的方法
US9727359B2 (en) * 2015-04-27 2017-08-08 Red Hat Israel, Ltd. Virtual machine function based sub-page base address register access for peripheral component interconnect device assignment

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101035039A (zh) * 2007-04-20 2007-09-12 福建升腾资讯有限公司 Usb映射方法
CN102368231A (zh) * 2011-10-14 2012-03-07 深圳市京华科讯科技有限公司 一种usb设备重定向的方法及系统
CN202257550U (zh) * 2011-10-14 2012-05-30 深圳市京华科讯科技有限公司 一种usb设备重定向系统
CN104394290A (zh) * 2014-10-27 2015-03-04 深圳市京华科讯科技有限公司 基于桌面虚拟化技术的打印机映射方法及系统
CN104881315A (zh) * 2014-10-27 2015-09-02 深圳市京华科讯科技有限公司 基于桌面虚拟化技术的存储设备映射方法及系统
CN107077377A (zh) * 2016-12-29 2017-08-18 深圳前海达闼云端智能科技有限公司 一种设备虚拟化方法、装置、系统及电子设备、计算机程序产品
CN108694065A (zh) * 2017-04-10 2018-10-23 鸿富锦精密电子(天津)有限公司 虚拟桌面系统及虚拟桌面控制方法
CN107707622A (zh) * 2017-08-30 2018-02-16 华为技术有限公司 一种访问桌面云虚拟机的方法、装置及桌面云控制器
CN107846466A (zh) * 2017-11-15 2018-03-27 中国联合网络通信集团有限公司 云终端外部设备的映射方法、服务器、云终端及系统
CN108512928A (zh) * 2018-04-08 2018-09-07 上海微穹信息科技有限公司 云端虚拟机及其文件管理方法、系统、虚拟机瘦客户端
CN111030990A (zh) * 2019-11-05 2020-04-17 华为技术有限公司 一种建立通信连接的方法及客户端、服务端
CN112311950A (zh) * 2020-10-30 2021-02-02 新华三大数据技术有限公司 通信方法及装置
CN113296884A (zh) * 2021-02-26 2021-08-24 阿里巴巴集团控股有限公司 虚拟化方法、装置、电子设备、介质及资源虚拟化系统

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
"Software-Based Approach for Sharing Real-Time Peripherals in a Virtualized Automotive Microcontroller Platform";Sundar Rajan Arun Kumar 等;《SAE International Journal of Connected and Automated Vehicles》;第4卷(第2期);第1-3页 *
"谈桌面虚拟化技术在企业办公中的应用";马淑清;《山西建筑》;第42卷(第22期);第257-258页 *
基于瘦客户端技术的桌面虚拟化设计;王立权;李晓冬;;节能(第04期);第75-78页 *

Also Published As

Publication number Publication date
CN113805952A (zh) 2021-12-17

Similar Documents

Publication Publication Date Title
US10402183B2 (en) Method and system for network-less guest OS and software provisioning
US8997090B2 (en) Installing an operating system in a host system
US11151225B2 (en) License management in pre-boot environments
US7793288B2 (en) Automatic resource management of a guest operating system using information in data set indicating minimum system requirement
CN110908753B (zh) 一种智能融合的云桌面服务器、客户端及系统
US20160364200A1 (en) Remote desktop exporting
US20060242395A1 (en) Operating system boot from network location
EP1482703B1 (en) Computer system and method for supporting network-enabled devices
CN102937940B (zh) 连接设备的双向扩展
CN105144093A (zh) 使用基础设施管理代理供应的工作负荷部署
US20130159392A1 (en) System and method for providing virtual device
US20130227565A1 (en) Apparatus and method for managing application for guest operating system
EP2570920A1 (en) System and method for cross-platform application execution and display
US10747549B2 (en) Proxy application to transfer application protocol requests over IOCTL commands
CN115562734A (zh) 一种数据处理器配置方法、装置、设备及介质
US8032661B2 (en) Automatic peripheral device sharing
US7996524B2 (en) Controlling external communication of embedded device using proxy server
CN113805952B (zh) 外设虚拟化管理方法、服务器和系统
US10776132B1 (en) System and method for preboot device driver provisioning for remotely-staged operating system
CN113301004A (zh) 数据处理方法、装置、通信方法和单网卡虚拟机
KR102018605B1 (ko) 다중 사용자용 데스크탑 컴퓨터 시스템
US20050132084A1 (en) Method and apparatus for providing server local SMBIOS table through out-of-band communication
CN111026406A (zh) 应用运行方法、设备和计算机可读存储介质
CN107515767A (zh) 在虚拟机上安装操作系统的方法和装置
EP4100858B1 (en) Storage provisioning

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant