CN112328356B - Android与Windows的互通方法、装置、存储介质及计算机设备 - Google Patents

Android与Windows的互通方法、装置、存储介质及计算机设备 Download PDF

Info

Publication number
CN112328356B
CN112328356B CN202011129647.6A CN202011129647A CN112328356B CN 112328356 B CN112328356 B CN 112328356B CN 202011129647 A CN202011129647 A CN 202011129647A CN 112328356 B CN112328356 B CN 112328356B
Authority
CN
China
Prior art keywords
virtual
keyboard
android
touch screen
event
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
CN202011129647.6A
Other languages
English (en)
Other versions
CN112328356A (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.)
Chengdu Anyixun Technology Co ltd
Original Assignee
Chengdu Anyixun Technology 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 Chengdu Anyixun Technology Co ltd filed Critical Chengdu Anyixun Technology Co ltd
Priority to CN202011129647.6A priority Critical patent/CN112328356B/zh
Publication of CN112328356A publication Critical patent/CN112328356A/zh
Application granted granted Critical
Publication of CN112328356B publication Critical patent/CN112328356B/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/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • 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/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45579I/O management, e.g. providing access to device drivers or storage
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Telephone Function (AREA)

Abstract

本申请公开了Android与Windows的互通方法及装置、存储介质、计算机设备,该方法包括:根据接收到的QEvent事件中的事件类型标识,确定用于将所述QEvent事件转换为目标指令的目标虚拟硬件;所述目标虚拟硬件将所述目标指令经由VirtIO接口发送至虚拟机Android的虚拟硬件驱动,所述虚拟硬件驱动用于解析所述目标指令并发送至虚拟机Android框架层。本申请能够借助VirtIO接口在虚拟机IO性能上的优势,能够有效提升Android与Windows的互通性能,使互通性能接近物理机的IO性能,从而提升模拟器的运行效率,以解决现有Android与Windows之间数据交互的延迟较大,且需要占用网络端口的问题。

Description

Android与Windows的互通方法、装置、存储介质及计算机设备
技术领域
本申请涉及网络安全技术领域,尤其是涉及到Android与Windows的互通方法、装置、存储介质及计算机设备。
背景技术
随着智能终端设备的发展和移动互联网的兴起,越来越多的用户使用移动终端设备,为了更好的满足用户需求,大量的应用厂商开始基于移动设备开发应用。其中,Android系统在移动设备中占有绝大部分市场份额,但目前基于Android的移动终端设备在隐私保护,硬件性能,电池容量,充电技术等方面仍无法满足用户的各种诉求,基于此,市面上出现了基于Android实现的模拟器,旨在解决用户在使用移动终端过程中遇到的各种问题。
现有的解决方案为,基于UDP、TCP等传统通信方法实现虚拟机Android与物理机Windows的数据交互,但采用UDP、TCP等传统通信方法存在的不足有:虚拟机Android与物理机Windows之间数据交互的延迟较大,且需要占用网络端口。
发明内容
有鉴于此,本申请提供了Android与Windows的互通方法、装置、存储介质及计算机设备,能够有效解决现有虚拟机Android与物理机Windows之间数据交互延迟较大,且需要占用网络端口的技术问题。
根据本申请的一个方面,提供了一种Android与Windows的互通方法,包括:
根据接收到的QEvent事件中的事件类型标识,确定用于将所述QEvent事件转换为目标指令的目标虚拟硬件;
所述目标虚拟硬件将所述目标指令经由VirtIO接口发送至虚拟机Android的虚拟硬件驱动,所述虚拟硬件驱动用于解析所述目标指令并发送至虚拟机Android框架层。
根据本申请的另一个方面,提供了一种Android与Windows的互通方法,包括:
将来自虚拟机Android框架层的目标指令发送至虚拟机Android的虚拟硬件驱动;
所述虚拟机Android的虚拟硬件驱动将目标指令经由VirtIO接口发送至Windows的目标虚拟硬件,所述目标虚拟硬件用于将所述目标指令基于PIPE接口协议发送至Windows的目标进程。
根据本申请的另一方面,提供了一种Android与Windows的互通装置,包括:
确定模块,用于根据接收到的QEvent事件中的事件类型标识,确定用于将所述QEvent事件转换为目标指令的目标虚拟硬件;
第一发送模块,用于所述目标虚拟硬件将所述目标指令经由VirtIO接口发送至虚拟机Android的虚拟硬件驱动,所述虚拟硬件驱动用于解析所述目标指令并发送至虚拟机Android框架层。
根据本申请的另一方面,提供了一种Android与Windows的互通装置,包括:
接收模块,用于将来自虚拟机Android框架层的目标指令发送至虚拟机Android的虚拟硬件驱动;
第二发送模块,用于所述虚拟机Android的虚拟硬件驱动将目标指令经由VirtIO接口发送至Windows的目标虚拟硬件,所述目标虚拟硬件用于将所述目标指令基于PIPE接口协议发送至Windows的目标进程。
依据本申请又一个方面,提供了一种存储介质,其上存储有计算机程序,所述程序被处理器执行时实现上述Android与Windows的互通方法。
依据本申请又一个方面,提供了一种计算机设备,包括存储介质、处理器及存储在存储介质上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述Android与Windows的互通方法。
依据本申请又一个方面,提供了一种存储介质,其上存储有计算机程序,所述程序被处理器执行时实现上述Android与Windows的互通方法。
依据本申请又一个方面,提供了一种计算机设备,包括存储介质、处理器及存储在存储介质上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述Android与Windows的互通方法。
借由上述技术方案,本申请提供的Android与Windows的互通方法、装置、存储介质及计算机设备,根据接收到的QEvent事件中的事件类型标识,确定用于将所述QEvent事件转换为目标指令的目标虚拟硬件;所述目标虚拟硬件将所述目标指令经由VirtIO接口发送至虚拟机Android的虚拟硬件驱动,所述虚拟硬件驱动用于解析所述目标指令并发送至虚拟机Android框架层。本申请中的物理机Windows能够通过解析QEvent事件对应的事件类型,确定用于将QEvent事件转换为相应的目标指令的目标虚拟硬件,以便将QEvent事件发送至目标虚拟硬件,由目标虚拟硬件将相应的目标指令经由VirtIO接口发送至虚拟机Android的虚拟硬件驱动,可见,通过借助VirtIO接口在虚拟机IO性能上的优势,能够有效提升Android与Windows的互通性能,使互通性能接近物理机的IO性能,从而提升模拟器的运行效率,以解决现有Android与Windows之间数据交互的延迟较大,且需要占用网络端口的问题。
上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,而可依照说明书的内容予以实施,并且为了让本申请的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1示出了本申请实施例提供的一种Android与Windows的互通方法的流程示意图;
图2示出了本申请实施例提供的一种Android与Windows的互通方法的通信架构图;
图3示出了本申请实施例提供的另一种Android与Windows的互通方法的流程示意图;
图4(a)示出了本申请实施例提供的另一种Android与Windows的互通方法的触屏通信架构图;
图4(b)示出了本申请实施例提供的另一种Android与Windows的互通方法的键盘通信架构图;
图5示出了本申请实施例提供的另一种Android与Windows的互通方法的流程示意图;
图6示出了本申请实施例提供的另一种Android与Windows的互通方法的流程示意图;
图7示出了本申请实施例提供的另一种Android与Windows的互通方法的流程示意图;
图8示出了本申请实施例提供的另一种Android与Windows的互通方法的GPU通信架构图;
图9示出了本申请实施例提供的一种Android与Windows的互通装置的结构示意图;
图10示出了本申请实施例提供的另一种Android与Windows的互通装置的结构示意图;
图11示出了本申请实施例提供的另一种Android与Windows的互通装置的结构示意图;
图12示出了本申请实施例提供的另一种Android与Windows的互通装置的结构示意图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本申请。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
针对现有虚拟机Android与物理机Windows之间数据交互的延迟较大,且需要占用网络端口的技术问题。本实施例提供了一种Android与Windows的互通方法,能够有效提升Android与Windows的互通性能,使互通性能接近物理机的IO性能,从而提升模拟器的运行效率。
如图1,2所示,本实施例为基于虚拟机Android与物理机Windows之间的通信架构,实现物理机Windows向虚拟机Android方向通信的方法,该方法包括:
步骤101,根据接收到的QEvent事件中的事件类型标识,确定用于将所述QEvent事件转换为目标指令的目标虚拟硬件。
在本实施例中,在物理机Windows侧实现虚拟硬件的逻辑运算,即通过对接收到的QEvent事件进行解析,得到该QEvent事件对应的事件类型标识,从而确定该QEvent事件为键盘或者鼠标硬件产生的事件信息。在确定该QEvent事件中的事件类型标识后,将该QEvent事件中相应的操作信息转换为与该相应的操作信息(按键信息、鼠标信息)对应的操作事件(触屏事件、键盘事件),并发送至相应的目标虚拟硬件,以便相应的目标虚拟硬件生成相应的目标指令。其中,目标虚拟硬件为虚拟键盘、虚拟触屏,以便建立基于目标虚拟硬件类别的输入输出设备的虚拟通信链路,从而有效提升虚拟机Android与物理机Windows之间的通信效率。
步骤102,所述目标虚拟硬件将所述目标指令经由VirtIO接口发送至虚拟机Android的虚拟硬件驱动,所述虚拟硬件驱动用于解析所述目标指令并发送至虚拟机Android框架层。
在本实施例中,经由基于通信接口VirtIO建立的通信链路(目标虚拟硬件与虚拟机Android之间的通信链路),目标虚拟硬件将目标指令发送给虚拟机Android的虚拟硬件驱动,即占位驱动程序,虚拟硬件驱动对接收到的目标指令,按照虚拟机Android要求的标准信息格式进行解析,并将符合Android要求的标准信息格式的指令信息向上反馈给虚拟机Android框架层,以实现对上报API的调用,并进一步发送给应用层。其中,预先在虚拟机Android侧实现相关目标虚拟硬件的虚拟硬件驱动,该虚拟硬件驱动不依赖硬件,只依赖通信接口VirtIO。
通过应用本实施例的技术方案,物理机Windows能够通过解析QEvent事件对应的事件类型,将QEvent事件转换为相应的操作事件,并发送至目标虚拟硬件,以便目标虚拟硬件根据相应的操作事件生成相应的目标指令后,经由VirtIO接口发送至虚拟机Android的虚拟硬件驱动,可见,通过借助VirtIO接口在虚拟机IO性能上的优势,能够有效提升Android与Windows的互通性能,使互通性能接近物理机的IO性能,从而提升模拟器的运行效率,以解决现有Android与Windows之间数据交互的延迟较大,且需要占用网络端口的问题。
进一步的,作为上述实施例具体实施方式的细化和扩展,为了完整说明本实施例的具体实施过程,提供了另一种Android与Windows的互通方法,如图3,4所示,本实施例为基于虚拟机Android与物理机Windows之间的通信架构,实现物理机Windows向虚拟机Android方向通信的方法,尤其是基于键盘硬件产生的事件信息的通信方法,该方法包括:
步骤201,若事件类型标识为键盘标识,则根据接收到的QEvent事件中的事件类型标识,确定用于将所述QEvent事件转换为目标指令的目标虚拟硬件;所述事件类型包括键盘、鼠标。
在上述实施例中,为了说明步骤201具体的实施过程,作为一种可选方式,所述步骤201包括:
步骤2011:对所述QEvent事件中的按键信息进行转换后,发送至虚拟触屏或者虚拟键盘。
步骤2012:若发送至虚拟触屏,则所述虚拟触屏基于预设的通信协议生成相应的触屏指令。
步骤2013:若发送至虚拟键盘,则所述虚拟键盘基于预设的通信协议生成相应的键盘指令。
在上述实施例中,为了说明步骤2011具体的实施过程,作为一种可选方式,所述步骤2011包括:通过查询预设的场景配置表中是否存在所述按键信息,将转换后的按键信息发送至虚拟触屏或者虚拟键盘,具体包括:若所述预设的场景配置表中存在所述按键信息,则根据所述预设的场景配置表,将所述按键信息转换为触屏事件并发送至虚拟触屏,或者将所述按键信息转换为键盘事件并发送至虚拟键盘;若所述预设的场景配置表中不存在所述按键信息,则将所述按键信息转换为键盘事件并发送至虚拟键盘。
具体实施中,当物理机Windows接收到的QEvent事件中的事件类型标识为键盘标识时,获取QEvent事件中的按键信息,并通过查询当前应用程序对应的预设场景配置表中是否存在该按键信息,确定该QEvent事件为触屏事件或者键盘事件,其中,预设的场景配置表为按键信息与触屏事件或者键盘事件的对应关系表,如图4(a)所示,若该按键信息在该场景配置表中,例如,获取QEvent事件中的按键信息为按键A、按键按下/抬起状态,根据预设场景配置表中按键A与Android的触屏事件的对应关系,将按键信息转换为Android的触屏事件并发送至虚拟触屏。具体为,根据预设的场景配置表中按键A的场景配置条件,确定目标对象向左移动,从而将按键信息转换为触屏事件并发送至虚拟触屏,虚拟触屏对该触屏事件进行逻辑运算,并基于预设的通信协议生成目标对象向左移动一定距离的触屏指令(包括Android屏幕的坐标点信息以及按键按下/抬起状态),从而实现对触屏事件的转化。其中,预设的通信协议中触屏按下及抬起的定义为,触屏按下:MSMTPR:[slot]:[x]:[y];触屏抬起:MSMTRE:[slot]。
根据实际应用场景的需求,获取QEvent事件中的按键信息,根据预设场景配置表中按键信息与Android的键盘事件的对应关系,将按键信息转换为Android的键盘事件并发送至虚拟键盘,此处不对应用场景进行具体限定。
根据实际应用场景的需求,若按键信息为滑屏操作(一连串按键操作的集合),则根据场景配置表中按键信息(滑屏操作)的场景配置条件,得到滑屏起止坐标点[x1,y1],[x2,y2],以及滑屏时长T,并对该滑屏操作进行插值计算得到每个坐标点,从而分别转换为触屏按下状态的触屏事件发送至虚拟触屏,直至坐标点[x2,y2],转换为触屏抬起状态的触屏事件发送至虚拟触屏,虚拟触屏根据一连串触屏事件,基于预设的通信协议分别生成相应的触屏指令,从而模拟出滑屏事件,实现对滑屏事件的转化。
相应地,若该按键信息不在该场景配置表中,则表示该QEvent事件为键盘事件,不需要转化为触屏事件,直接将该按键信息发送至虚拟键盘,如图4(b)所示,虚拟键盘对该键盘事件进行逻辑运算,并基于预设的通信协议生成键盘指令,预设的通信协议中键盘事件的定义为,键盘按下:KBDPR:[keyCode];键盘抬起:KBDRE:[keyCode]。
根据实际应用场景的需求,若按键信息为文字输入,则识别Windows侧为英文输入或者中文输入;若该文字输入为英文输入,则直接按照键盘事件发送至虚拟键盘,由虚拟键盘生成相应的键盘指令;若该文字输入为中文输入,则将接收到的字符串通过Netlink发送至虚拟机Android,以便虚拟机Android根据接收到的字符串,通知应用进程填充至输入框中。其中,预设的通信协议中文字输入的定义为,[size][输入的字符串]。
此外,若该按键信息存储于场景配置表中,则也可以根据场景配置表,将该按键信息转换为文字输入事件,此处不对场景配置表中的对应关系及场景转换功能进行具体限定。
步骤202,若所述目标虚拟硬件为虚拟触屏,则经由基于VirtIO接口建立的虚拟触屏驱动通信链路,将相应的触屏指令发送至虚拟机Android的虚拟触屏驱动。
步骤203,若所述目标虚拟硬件为虚拟键盘,则经由基于VirtIO接口建立的虚拟键盘驱动通信链路,将相应的键盘指令发送至虚拟机Android的虚拟键盘驱动。
具体实施中,基于PIPE接口协议,将相应的触屏事件或者键盘事件发送至Windows侧的VirtualBox进程,VirtualBox进程中模拟器的虚拟硬件(虚拟触屏或者虚拟键盘)根据接收到的触屏事件或者键盘事件生成相应的触屏指令或者键盘指令后,经由基于VirtIO接口建立的虚拟触屏驱动通信链路或者虚拟键盘驱动通信链路,转发至虚拟机Android的占位驱动程序(虚拟触屏驱动程序或者虚拟键盘驱动程序)。
进一步地,占位驱动程序(虚拟触屏驱动程序或者虚拟键盘驱动程序)对接收到的触屏指令或者键盘指令进行字符串解析,并按照Linux输入子系统(Input SubSystem)的标准信息格式要求得到指令信息,并上报至虚拟机Android框架层(AndroidFramework层),虚拟机Android框架层将接收到的指令信息上报至应用层以完成相应的处理操作。可见,相较于传统虚拟硬件驱动既需要对QEvent事件进行逻辑运算,又需要进行指令解析的操作而言,能够有效降低对虚拟机Android的CPU的资源消耗。
通过应用本实施例的技术方案,能够在不要求物理机Windows端通信性能的情况下,高效运行各种移动端应用程序,即通过物理机Windows端的硬件设备模拟控制虚拟机Android的相应操作,尤其是游戏运行环境中的相应操作及音视频输入输出(对应虚拟机Android与物理机Windows之间的数据通信)等。此外,通过借助VirtIO接口在虚拟机IO性能上的优势,共享内存机制、减少信息复制,以降低对CPU的占用,且相较于传统的UDP、TCP等传统通信方法,能够避免执行协议栈,减少编解码过程,避免占用主机网络端口,以减少与其他占用网络端口的应用发生冲突。
在上述实施例中,基于虚拟机Android与物理机Windows之间的通信架构,实现物理机Windows向虚拟机Android方向通信的方法,如图5所示,尤其是基于鼠标硬件产生的事件信息的通信方法,该方法还包括:
步骤204:若事件类型标识为鼠标标识,则通过对所述QEvent事件中的鼠标信息进行转换,确定用于将所述QEvent事件转换为触屏指令的虚拟触屏,或者用于将所述QEvent事件转换为键盘指令的虚拟键盘。
步骤205:所述虚拟触屏将相应的触屏指令经由基于VirtIO接口建立的虚拟触屏驱动通信链路,发送至虚拟机Android的虚拟触屏驱动;或者,所述虚拟键盘将相应的键盘指令经由基于VirtIO接口建立的虚拟键盘驱动通信链路,发送至虚拟机Android的虚拟键盘驱动。
具体实施中,当物理机Windows接收到的QEvent事件中的事件类型标识为鼠标标识时,获取QEvent事件中的鼠标信息(鼠标按键信息或者鼠标滚轮信息),以鼠标滚轮信息为例,根据场景配置表中鼠标滚轮信息的场景配置条件,将鼠标当前所在位置转换为Android屏幕的坐标点[x,y],并确定滑屏的起止坐标[x,y1],[x,y2]及滑屏方向,从而得到鼠标滚轮事件并发送至虚拟触屏,以便虚拟触屏基于预设的通信协议生成相应的触屏指令,从而模拟出滑屏操作,实现对滑屏操作的转化。
根据实际应用场景的需求,若场景配置表中鼠标按键信息对应键盘事件,则根据场景配置表中鼠标按键信息的场景配置条件,将鼠标按键信息转换为键盘事件并发送至虚拟键盘,以便虚拟键盘基于预设的通信协议生成相应的键盘指令,此处不对场景配置表中的对应关系及场景转换功能进行具体限定。
通过应用本实施例的技术方案,物理机Windows能够通过解析QEvent事件对应的事件类型,将QEvent事件转换为相应的操作事件,并发送至目标虚拟硬件,以便目标虚拟硬件根据相应的操作事件生成相应的目标指令后,经由VirtIO接口发送至虚拟机Android的虚拟硬件驱动,可见,通过借助VirtIO接口在虚拟机IO性能上的优势,能够有效提升Android与Windows之间的数据通信性能,使数据通信性能接近物理机的IO性能,从而提升模拟器的运行效率,以解决现有Android与Windows之间数据交互的延迟较大,且需要占用网络端口的问题。
本实施例提供了一种Android与Windows的互通方法,能够有效提升Android与Windows的互通性能,使互通性能接近物理机的IO性能,从而提升模拟器的运行效率。如图6所示,本实施例为基于虚拟机Android与物理机Windows之间的通信架构,实现虚拟机Android向物理机Windows方向通信的方法,该方法包括:
步骤301:将来自虚拟机Android框架层的目标指令发送至虚拟机Android的虚拟硬件驱动。
步骤302:所述虚拟机Android的虚拟硬件驱动将目标指令经由VirtIO接口发送至Windows的目标虚拟硬件,所述目标虚拟硬件用于将所述目标指令基于PIPE接口协议发送至Windows的目标进程。
在本实施例中,虚拟机Android框架层将接收到的渲染指令(例如,[code][size][param1][param2])发送至占位驱动程序(GPU驱动程序),即通过调用占位驱动程序(GPU驱动程序)接口,将该渲染指令经由基于VirtIO接口建立的通信链路,即虚拟机Android与目标虚拟硬件之间的通信链路(GPU驱动通信链路)转发至Windows侧VirtualBox进程中模拟器的虚拟硬件(虚拟GPU),以便虚拟硬件(虚拟GPU)基于PIPE接口协议发送至Windows的渲染进程,从而使用硬件资源执行相应的渲染指令,并将相应的执行结果按照同样的通信方式反馈给虚拟机Android。
由于虚拟机Android是通过OpenGL ES进行GPU绘制的,因此通过应用本实施例的技术方案,能够通过建立OpenGL ES与EGL的通信桥梁,利用物理机Windows的OpenGL/WGL接口模拟虚拟机Android的OpenGL ES/EGL功能,从而利用物理机Windows的GPU计算资源实现对模拟器中虚拟机Android内部图像的绘制及输出。
进一步的,作为上述实施例具体实施方式的细化和扩展,为了完整说明本实施例的具体实施过程,提供了一种Android与Windows的互通方法,如图7,8所示,该方法包括:
步骤401:将来自虚拟机Android框架层的目标指令发送至虚拟机Android的虚拟硬件驱动;所述目标指令为渲染指令,所述虚拟机Android的虚拟硬件驱动为GPU驱动。
步骤402:经由基于VirtIO接口建立的GPU驱动通信链路,所述虚拟机Android的GPU驱动将渲染指令发送至Windows的虚拟GPU,所述虚拟GPU用于将所述渲染指令基于PIPE接口协议发送至Windows的渲染进程。
通过应用本实施例的技术方案,虚拟机Android将接收到的渲染指令,经由基于VirtIO接口建立的GPU驱动通信链路发送至Windows的虚拟GPU,可见,通过借助VirtIO接口在虚拟机IO性能上的优势,建立由虚拟机Android到Windows的通信链路,能够实现Android与Windows之间的高效互通,使数据通信性能接近物理机的IO性能,从而有效提升模拟器的运行效率,同时有效解决现有Android与Windows之间数据交互的延迟较大,且需要占用网络端口的问题。
此外,本实施例的虚拟机Android与物理机Windows之间的通信架构,具有较强的扩展性,适用于各种数据通信(例如,键盘事件、鼠标事件、触屏事件、GPU事件),在高效创建物理机Windows与虚拟机Android之间的通信链路的同时,实现通信数据的互不干扰。
进一步的,作为图1至图5所示方法的具体实现,本申请实施例提供了一种Android与Windows的互通装置,如图9所示,为基于虚拟机Android与物理机Windows之间的通信架构,实现物理机Windows向虚拟机Android方向通信的装置,该装置包括:确定模块51、第一发送模块52。
确定模块51,用于根据接收到的QEvent事件中的事件类型标识,确定用于将所述QEvent事件转换为目标指令的目标虚拟硬件。
第一发送模块52,用于所述目标虚拟硬件将所述目标指令经由VirtIO接口发送至虚拟机Android的虚拟硬件驱动,所述虚拟硬件驱动用于解析所述目标指令并发送至虚拟机Android框架层。
在具体的应用场景中,如图10所示,所述事件类型包括键盘、鼠标。
在具体的应用场景中,若事件类型标识为键盘标识,则所述确定模块51,具体包括:第一转换单元511、第一生成单元512、第二生成单元513。
第一转换单元511,用于对所述QEvent事件中的按键信息进行转换后,发送至虚拟触屏或者虚拟键盘。
第一生成单元512,用于若发送至虚拟触屏,则所述虚拟触屏基于预设的通信协议生成相应的触屏指令。
第二生成单元513,用于若发送至虚拟键盘,则所述虚拟键盘基于预设的通信协议生成相应的键盘指令。
在具体的应用场景中,所述第一转换单元511,具体用于通过查询预设的场景配置表中是否存在所述按键信息,将转换后的按键信息发送至虚拟触屏或者虚拟键盘,具体包括:若所述预设的场景配置表中存在所述按键信息,则根据所述预设的场景配置表,将所述按键信息转换为触屏事件并发送至虚拟触屏,或者将所述按键信息转换为键盘事件并发送至虚拟键盘;以及,若所述预设的场景配置表中不存在所述按键信息,则将所述按键信息转换为键盘事件并发送至虚拟键盘。
在具体的应用场景中,所述第一发送模块52,具体包括:虚拟触屏驱动单元521、虚拟键盘驱动单元522。
虚拟触屏驱动单元521,用于若所述目标虚拟硬件为虚拟触屏,则经由基于VirtIO接口建立的虚拟触屏驱动通信链路,将相应的触屏指令发送至虚拟机Android的虚拟触屏驱动。
虚拟键盘驱动单元522,用于若所述目标虚拟硬件为虚拟键盘,则经由基于VirtIO接口建立的虚拟键盘驱动通信链路,将相应的键盘指令发送至虚拟机Android的虚拟键盘驱动。
在具体的应用场景中,若事件类型标识为鼠标标识,则所述确定模块51,具体包括:第二转换单元514。
第二转换单元514,用于通过对所述QEvent事件中的鼠标信息进行转换,确定用于将所述QEvent事件转换为触屏指令的虚拟触屏,或者用于将所述QEvent事件转换为键盘指令的虚拟键盘。
虚拟触屏驱动单元521,还用于所述虚拟触屏将相应的触屏指令经由基于VirtIO接口建立的虚拟触屏驱动通信链路,发送至虚拟机Android的虚拟触屏驱动;
虚拟键盘驱动单元522,还用于所述虚拟键盘将相应的键盘指令经由基于VirtIO接口建立的虚拟键盘驱动通信链路,发送至虚拟机Android的虚拟键盘驱动。
基于上述如图1至图5所示方法,相应的,本申请实施例还提供了一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述如图1至图5所示的Android与Windows的互通方法。
需要说明的是,本申请实施例提供的一种Android与Windows的互通装置所涉及各功能单元的其他相应描述,可以参考图1至图5中的对应描述,在此不再赘述。
进一步的,作为图6至图8所示方法的具体实现,本申请实施例提供了一种Android与Windows的互通装置,如图11所示,为基于虚拟机Android与物理机Windows之间的通信架构,实现虚拟机Android向物理机Windows方向通信的装置,该装置包括:接收模块61、第二发送模块62。
接收模块61,用于将来自虚拟机Android框架层的目标指令发送至虚拟机Android的虚拟硬件驱动。
第二发送模块62,用于所述虚拟机Android的虚拟硬件驱动将目标指令经由VirtIO接口发送至Windows的目标虚拟硬件,所述目标虚拟硬件用于将所述目标指令基于PIPE接口协议发送至Windows的目标进程。
在具体的应用场景中,如图12所示,若所述目标指令为渲染指令,所述虚拟机Android的虚拟硬件驱动为GPU驱动,则所述第二发送模块62,具体包括:GPU驱动单元621。
GPU驱动单元621,用于经由基于VirtIO接口建立的GPU驱动通信链路,所述虚拟机Android的GPU驱动将渲染指令发送至Windows的虚拟GPU,所述虚拟GPU用于将所述渲染指令基于PIPE接口协议发送至Windows的渲染进程。
基于上述如图1至图5所示方法,相应的,本申请实施例还提供了一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述如图1至图5所示的Android与Windows的互通方法。
基于上述如图6至图8所示方法,相应的,本申请实施例还提供了一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述如图6至图8所示的Android与Windows的互通方法。
基于这样的理解,本申请的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施场景所述的方法。
基于上述如图1至图5所示的方法,以及图9、图10所示的虚拟装置实施例,为了实现上述目的,本申请实施例还提供了一种计算机设备,具体可以为个人计算机、服务器、网络设备等,该计算机设备包括存储介质和处理器;存储介质,用于存储计算机程序;处理器,用于执行计算机程序以实现上述如图1至图5所示的Android与Windows的互通方法。
基于上述如图6至图8所示的方法,以及图11、图12所示的虚拟装置实施例,为了实现上述目的,本申请实施例还提供了一种计算机设备,具体可以为个人计算机、服务器、网络设备等,该计算机设备包括存储介质和处理器;存储介质,用于存储计算机程序;处理器,用于执行计算机程序以实现上述如图6至图8所示的Android与Windows的互通方法。
可选地,该计算机设备还可以包括用户接口、网络接口、摄像头、射频(RadioFrequency,RF)电路,传感器、音频电路、WI-FI模块等等。用户接口可以包括显示屏(Display)、输入单元比如键盘(Keyboard)等,可选用户接口还可以包括USB接口、读卡器接口等。网络接口可选的可以包括标准的有线接口、无线接口(如蓝牙接口、WI-FI接口)等。
本领域技术人员可以理解,本实施例提供的一种计算机设备结构并不构成对该计算机设备的限定,可以包括更多或更少的部件,或者组合某些部件,或者不同的部件布置。
存储介质中还可以包括操作系统、网络通信模块。操作系统是管理和保存计算机设备硬件和软件资源的程序,支持信息处理程序以及其它软件和/或程序的运行。网络通信模块用于实现存储介质内部各组件之间的通信,以及与该实体设备中其它硬件和软件之间通信。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本申请可以借助软件加必要的通用硬件平台的方式来实现,也可以通过硬件实现对QEvent事件的事件类型的解析,并将QEvent事件发送至目标虚拟硬件,以便目标虚拟硬件将转换得到的目标指令经由VirtIO接口发送至虚拟机Android的虚拟硬件驱动,可见,通过借助VirtIO接口在虚拟机IO性能上的优势,能够有效提升Android与Windows的互通性能,使互通性能接近物理机的IO性能,从而提升模拟器的运行效率,以解决现有Android与Windows之间数据交互的延迟较大,且需要占用网络端口的问题。
本领域技术人员可以理解附图只是一个优选实施场景的示意图,附图中的模块或流程并不一定是实施本申请所必须的。本领域技术人员可以理解实施场景中的装置中的模块可以按照实施场景描述进行分布于实施场景的装置中,也可以进行相应变化位于不同于本实施场景的一个或多个装置中。上述实施场景的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本申请序号仅仅为了描述,不代表实施场景的优劣。以上公开的仅为本申请的几个具体实施场景,但是,本申请并非局限于此,任何本领域的技术人员能思之的变化都应落入本申请的保护范围。

Claims (18)

1.一种Android与Windows的互通方法,其特征在于,包括:
根据接收到的QEvent事件中的事件类型标识,确定用于将所述QEvent事件转换为目标指令的目标虚拟硬件,并将与所述QEvent事件对应的操作事件发送至所述目标虚拟硬件,所述操作事件包括触屏事件、键盘事件;
所述目标虚拟硬件将所述目标指令经由VirtIO接口发送至虚拟机Android的虚拟硬件驱动,所述虚拟硬件驱动用于解析所述目标指令并发送至虚拟机Android框架层;
其中,若所述目标虚拟硬件为虚拟触屏,则经由基于VirtIO接口建立的虚拟触屏驱动通信链路,将相应的触屏指令发送至虚拟机Android的虚拟触屏驱动;
若所述目标虚拟硬件为虚拟键盘,则经由基于VirtIO接口建立的虚拟键盘驱动通信链路,将相应的键盘指令发送至虚拟机Android的虚拟键盘驱动。
2.根据权利要求1所述的方法,其特征在于,所述事件类型包括键盘、鼠标。
3.根据权利要求1或2所述的方法,其特征在于,若所述事件类型标识为键盘标识,则根据接收到的QEvent事件中的事件类型标识,确定用于将所述QEvent事件转换为目标指令的目标虚拟硬件,具体包括:
对所述QEvent事件中的按键信息进行转换后,发送至虚拟触屏或者虚拟键盘;
若发送至虚拟触屏,则所述虚拟触屏基于预设的通信协议生成相应的触屏指令;
若发送至虚拟键盘,则所述虚拟键盘基于预设的通信协议生成相应的键盘指令。
4.根据权利要求3所述的方法,其特征在于,所述对所述QEvent事件中的按键信息进行转换后,发送至虚拟触屏或者虚拟键盘,具体包括:通过查询预设的场景配置表中是否存在所述按键信息,将转换后的按键信息发送至虚拟触屏或者虚拟键盘,具体包括:
若所述预设的场景配置表中存在所述按键信息,则根据所述预设的场景配置表,将所述按键信息转换为触屏事件并发送至虚拟触屏,或者将所述按键信息转换为键盘事件并发送至虚拟键盘;
若所述预设的场景配置表中不存在所述按键信息,则将所述按键信息转换为键盘事件并发送至虚拟键盘。
5.根据权利要求2所述的方法,其特征在于,若所述事件类型标识为鼠标标识,则根据接收到的QEvent事件中的事件类型标识,确定用于将所述QEvent事件转换为目标指令的目标虚拟硬件,具体包括:
通过对所述QEvent事件中的鼠标信息进行转换,确定用于将所述QEvent事件转换为触屏指令的虚拟触屏,或者用于将所述QEvent事件转换为键盘指令的虚拟键盘;
所述目标虚拟硬件将所述目标指令经由VirtIO接口发送至虚拟机Android的虚拟硬件驱动,具体包括:
所述虚拟触屏将相应的触屏指令经由基于VirtIO接口建立的虚拟触屏驱动通信链路,发送至虚拟机Android的虚拟触屏驱动;或者,
所述虚拟键盘将相应的键盘指令经由基于VirtIO接口建立的虚拟键盘驱动通信链路,发送至虚拟机Android的虚拟键盘驱动。
6.一种Android与Windows的互通方法,其特征在于,包括:
将来自虚拟机Android框架层的目标指令发送至虚拟机Android的虚拟硬件驱动;
所述虚拟机Android的虚拟硬件驱动将目标指令经由VirtIO接口发送至Windows的目标虚拟硬件,所述目标虚拟硬件用于将所述目标指令基于PIPE接口协议发送至Windows的目标进程;
其中,若所述目标指令为渲染指令,所述虚拟机Android的虚拟硬件驱动为GPU驱动,则经由基于VirtIO接口建立的GPU驱动通信链路,所述虚拟机Android的GPU驱动将渲染指令发送至Windows的虚拟GPU。
7.根据权利要求6所述的方法,其特征在于,所述虚拟GPU用于将所述渲染指令基于PIPE接口协议发送至Windows的渲染进程。
8.一种Android与Windows的互通装置,其特征在于,包括:
确定模块,用于根据接收到的QEvent事件中的事件类型标识,确定用于将所述QEvent事件转换为目标指令的目标虚拟硬件,并将与所述QEvent事件对应的操作事件发送至所述目标虚拟硬件,所述操作事件包括触屏事件、键盘事件;
第一发送模块,用于所述目标虚拟硬件将所述目标指令经由VirtIO接口发送至虚拟机Android的虚拟硬件驱动,所述虚拟硬件驱动用于解析所述目标指令并发送至虚拟机Android框架层;
其中,所述第一发送模块,具体包括:
虚拟触屏驱动单元,用于若所述目标虚拟硬件为虚拟触屏,则经由基于VirtIO接口建立的虚拟触屏驱动通信链路,将相应的触屏指令发送至虚拟机Android的虚拟触屏驱动;
虚拟键盘驱动单元,用于若所述目标虚拟硬件为虚拟键盘,则经由基于VirtIO接口建立的虚拟键盘驱动通信链路,将相应的键盘指令发送至虚拟机Android的虚拟键盘驱动。
9.根据权利要求8所述的装置,其特征在于,所述事件类型包括键盘、鼠标。
10.根据权利要求8或9所述的装置,其特征在于,若事件类型标识为键盘标识,则所述确定模块,具体包括:
第一转换单元,用于对所述QEvent事件中的按键信息进行转换后,发送至虚拟触屏或者虚拟键盘;
第一生成单元,用于若发送至虚拟触屏,则所述虚拟触屏基于预设的通信协议生成相应的触屏指令;
第二生成单元,用于若发送至虚拟键盘,则所述虚拟键盘基于预设的通信协议生成相应的键盘指令。
11.根据权利要求10所述的装置,其特征在于,所述第一转换单元,具体用于通过查询预设的场景配置表中是否存在所述按键信息,将转换后的按键信息发送至虚拟触屏或者虚拟键盘,具体包括:
若所述预设的场景配置表中存在所述按键信息,则根据所述预设的场景配置表,将所述按键信息转换为触屏事件并发送至虚拟触屏,或者将所述按键信息转换为键盘事件并发送至虚拟键盘;以及,
若所述预设的场景配置表中不存在所述按键信息,则将所述按键信息转换为键盘事件并发送至虚拟键盘。
12.根据权利要求9所述的装置,其特征在于,若事件类型标识为鼠标标识,则所述确定模块,具体包括:
第二转换单元,用于通过对所述QEvent事件中的鼠标信息进行转换,确定用于将所述QEvent事件转换为触屏指令的虚拟触屏,或者用于将所述QEvent事件转换为键盘指令的虚拟键盘;
所述第一发送模块的虚拟触屏驱动单元,还用于所述虚拟触屏将相应的触屏指令经由基于VirtIO接口建立的虚拟触屏驱动通信链路,发送至虚拟机Android的虚拟触屏驱动;以及,
所述第一发送模块的虚拟键盘驱动单元,还用于所述虚拟键盘将相应的键盘指令经由基于VirtIO接口建立的虚拟键盘驱动通信链路,发送至虚拟机Android的虚拟键盘驱动。
13.一种Android与Windows的互通装置,其特征在于,包括:
接收模块,用于将来自虚拟机Android框架层的目标指令发送至虚拟机Android的虚拟硬件驱动;
第二发送模块,用于所述虚拟机Android的虚拟硬件驱动将目标指令经由VirtIO接口发送至Windows的目标虚拟硬件,所述目标虚拟硬件用于将所述目标指令基于PIPE接口协议发送至Windows的目标进程;
其中,若所述目标指令为渲染指令,所述虚拟机Android的虚拟硬件驱动为GPU驱动,则所述第二发送模块,具体包括:
GPU驱动单元,用于经由基于VirtIO接口建立的GPU驱动通信链路,所述虚拟机Android的GPU驱动将渲染指令发送至Windows的虚拟GPU。
14.根据权利要求13所述的装置,其特征在于,所述虚拟GPU用于将所述渲染指令基于PIPE接口协议发送至Windows的渲染进程。
15.一种存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现权利要求1至5中任一项所述的Android与Windows的互通方法。
16.一种计算机设备,包括存储介质、处理器及存储在存储介质上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1至5中任一项所述的Android与Windows的互通方法。
17.一种存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现权利要求6至7中任一项所述的Android与Windows的互通方法。
18.一种计算机设备,包括存储介质、处理器及存储在存储介质上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求6至7中任一项所述的Android与Windows的互通方法。
CN202011129647.6A 2020-10-21 2020-10-21 Android与Windows的互通方法、装置、存储介质及计算机设备 Active CN112328356B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011129647.6A CN112328356B (zh) 2020-10-21 2020-10-21 Android与Windows的互通方法、装置、存储介质及计算机设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011129647.6A CN112328356B (zh) 2020-10-21 2020-10-21 Android与Windows的互通方法、装置、存储介质及计算机设备

Publications (2)

Publication Number Publication Date
CN112328356A CN112328356A (zh) 2021-02-05
CN112328356B true CN112328356B (zh) 2023-09-29

Family

ID=74310592

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011129647.6A Active CN112328356B (zh) 2020-10-21 2020-10-21 Android与Windows的互通方法、装置、存储介质及计算机设备

Country Status (1)

Country Link
CN (1) CN112328356B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113238687B (zh) * 2021-04-27 2021-11-16 北京麟卓信息科技有限公司 一种桌面平台上安卓应用按钮功能的实现方法及实现装置
CN117724804A (zh) * 2023-12-19 2024-03-19 万物镜像(北京)计算机系统有限公司 一种虚拟机指令集的生成方法、装置及设备

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102707882A (zh) * 2012-04-27 2012-10-03 深圳瑞高信息技术有限公司 虚拟图标触摸屏应用程序的操控转换方法及触摸屏终端
CN104740872A (zh) * 2015-04-13 2015-07-01 北京奇虎科技有限公司 模拟安卓环境中游戏程序运行控制方法及装置
CN105094839A (zh) * 2015-08-14 2015-11-25 深圳市众联悠游科技有限公司 基于PC机实现运行Android系统应用的方法
CN107463402A (zh) * 2017-07-31 2017-12-12 腾讯科技(深圳)有限公司 虚拟操作系统的运行方法和装置
CN107844243A (zh) * 2017-11-09 2018-03-27 新华三云计算技术有限公司 云桌面触摸屏实现方法及装置
WO2019127476A1 (zh) * 2017-12-29 2019-07-04 深圳前海达闼云端智能科技有限公司 虚拟系统蓝牙通信方法及装置、虚拟系统、存储介质及电子设备
CN110597597A (zh) * 2019-08-30 2019-12-20 北京卓识网安技术股份有限公司 硬件的虚拟化方法、系统、装置及存储介质
CN111522670A (zh) * 2020-05-09 2020-08-11 中瓴智行(成都)科技有限公司 一种用于Android系统的GPU虚拟化方法、系统及介质
CN111625293A (zh) * 2020-05-15 2020-09-04 武汉蓝星科技股份有限公司 一种基于linux内核的终端双系统及其硬件访问管理方法
US10997106B1 (en) * 2020-09-22 2021-05-04 Pensando Sytems Inc. Inter-smartNIC virtual-link for control and datapath connectivity

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105528207B (zh) * 2015-12-03 2018-12-25 北京小鸟看看科技有限公司 一种虚拟现实系统及其中显示安卓应用图像的方法和装置
CN106445630A (zh) * 2016-08-10 2017-02-22 北京奇虎科技有限公司 Android模拟器及实现Android模拟器的方法
US11706099B2 (en) * 2018-06-29 2023-07-18 Juniper Networks, Inc. Monitoring and policy control of distributed data and control planes for virtual nodes

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102707882A (zh) * 2012-04-27 2012-10-03 深圳瑞高信息技术有限公司 虚拟图标触摸屏应用程序的操控转换方法及触摸屏终端
CN104740872A (zh) * 2015-04-13 2015-07-01 北京奇虎科技有限公司 模拟安卓环境中游戏程序运行控制方法及装置
CN105094839A (zh) * 2015-08-14 2015-11-25 深圳市众联悠游科技有限公司 基于PC机实现运行Android系统应用的方法
CN107463402A (zh) * 2017-07-31 2017-12-12 腾讯科技(深圳)有限公司 虚拟操作系统的运行方法和装置
CN107844243A (zh) * 2017-11-09 2018-03-27 新华三云计算技术有限公司 云桌面触摸屏实现方法及装置
WO2019127476A1 (zh) * 2017-12-29 2019-07-04 深圳前海达闼云端智能科技有限公司 虚拟系统蓝牙通信方法及装置、虚拟系统、存储介质及电子设备
CN110597597A (zh) * 2019-08-30 2019-12-20 北京卓识网安技术股份有限公司 硬件的虚拟化方法、系统、装置及存储介质
CN111522670A (zh) * 2020-05-09 2020-08-11 中瓴智行(成都)科技有限公司 一种用于Android系统的GPU虚拟化方法、系统及介质
CN111625293A (zh) * 2020-05-15 2020-09-04 武汉蓝星科技股份有限公司 一种基于linux内核的终端双系统及其硬件访问管理方法
US10997106B1 (en) * 2020-09-22 2021-05-04 Pensando Sytems Inc. Inter-smartNIC virtual-link for control and datapath connectivity

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
Virtual Machines with Dedicated Graphics for Software Development;C.Lucas等;《2019 International Conference on Computational Science and Computational Intelligence(CSCI)》;1568-1569 *
基于KVM的3D远程桌面同步技术的研究与实现;汤雄;《中国优秀硕士学位论文全文数据库 信息科技辑》(第第01期期);I138-2300 *
基于桌面云的GPU设备虚拟化设计与实现;张凯华等;《中国优秀硕士学位论文全文数据库 信息科技辑》(第7期);I137-7 *
面向桌面云的Android虚拟机设备虚拟化的研究与实现;时钰森;《中国优秀硕士学位论文全文数据库 信息科技辑》(第5期);I137-11 *

Also Published As

Publication number Publication date
CN112328356A (zh) 2021-02-05

Similar Documents

Publication Publication Date Title
US11451619B2 (en) App remote control method and related devices
CN102413150B (zh) 服务器、虚拟桌面控制方法以及虚拟桌面控制系统
KR101773638B1 (ko) 라이트웨이트 클라이언트를 이용해서 네트워크를 거쳐 가상화 컴퓨팅 서비스와 인터페이스하기 위한 방법
US20160337290A1 (en) Message Push Method and Apparatus
US8762544B2 (en) Selectively communicating data of a peripheral device to plural sending computers
CN111354063B (zh) 一种三维元素渲染方法、桌面云服务端及桌面云系统
CN113079216B (zh) 一种云应用的实现方法、装置、电子设备及可读存储介质
US10165058B2 (en) Dynamic local function binding apparatus and method
CN112328356B (zh) Android与Windows的互通方法、装置、存储介质及计算机设备
CN108234659B (zh) 数据处理方法、装置及系统
WO2020238846A1 (zh) 图像获取方法、装置、服务器及存储介质
CN110807111A (zh) 三维图形的处理方法及装置、存储介质、电子设备
US20170272545A1 (en) Method and system for transmitting remote screen
CN111773730A (zh) 一种数据处理方法及装置
CN112843681B (zh) 虚拟场景控制方法、装置、电子设备及存储介质
CN111143017B (zh) 云操作系统交互处理方法、客户端及云操作系统
CN111681157A (zh) 图像渲染方法及系统
CN113835816A (zh) 一种虚拟机桌面显示方法、装置、设备及可读存储介质
CN110113396B (zh) 一种控制终端的方法和装置
CN113617020A (zh) 游戏控制方法、装置、存储介质、服务器以及终端
CN103209178A (zh) CloudStack平台上兼容SPICE协议的方法
CN113409474A (zh) 基于增强现实的对象展示方法及装置
CN111258902A (zh) 基于SockJS服务器的性能测试方法和性能测试系统
CN110971696A (zh) 一种实现虚拟电子卡通讯的系统和方法
CN115314536B (zh) 远程执行命令方法及装置、存储介质、计算机设备

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