[go: up one dir, main page]

WO2021228032A1 - Method and apparatus for transmitting desktop image data of virtual machine, and electronic device - Google Patents

Method and apparatus for transmitting desktop image data of virtual machine, and electronic device Download PDF

Info

Publication number
WO2021228032A1
WO2021228032A1 PCT/CN2021/092709 CN2021092709W WO2021228032A1 WO 2021228032 A1 WO2021228032 A1 WO 2021228032A1 CN 2021092709 W CN2021092709 W CN 2021092709W WO 2021228032 A1 WO2021228032 A1 WO 2021228032A1
Authority
WO
WIPO (PCT)
Prior art keywords
virtual machine
image data
desktop image
client
preset
Prior art date
Application number
PCT/CN2021/092709
Other languages
French (fr)
Chinese (zh)
Inventor
张衡
Original Assignee
北京金山云网络技术有限公司
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 北京金山云网络技术有限公司 filed Critical 北京金山云网络技术有限公司
Publication of WO2021228032A1 publication Critical patent/WO2021228032A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 OR CALCULATING; 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/45595Network integration; Enabling network access in virtual machine instances

Definitions

  • This application relates to the technical field of cloud servers, in particular to a method and device for transmitting desktop image data of a virtual machine and electronic equipment.
  • desktop cloud has been widely used as a new type of computing environment.
  • the desktop cloud can obtain a user experience close to that of a physical computer, providing a cost-effective desktop solution for enterprises and individual users.
  • the display effect of the virtual machine desktop is one of the main indicators of the desktop cloud solution.
  • graphics card virtualization technology can greatly improve the display performance of the virtual machine, so that the virtual machine has the ability to perform professional graphics calculation and rendering.
  • the processing capacity of the terminal solution puts forward higher requirements.
  • the purpose of the present application is to provide a method and device for transmitting desktop image data of a virtual machine and electronic equipment, which supports graphics card hardware acceleration, can realize the transmission of high-resolution desktop image data, thereby improving user experience.
  • an embodiment of the present application provides a method for transmitting desktop image data of a virtual machine, in which a PCI device is registered, and the virtual machine communicates with a client through a preset transmission service, and the method includes: Grab the desktop image data of the virtual machine after rendering processing of the preset virtual graphics card in the virtual machine at a preset time interval; store the desktop image data in a preset data buffer in the PCI device Area; if the connection request sent by the client is monitored, obtain the desktop image data stored in the data buffer; send the desktop image data to the client, so that the client displays the Describe the desktop image data.
  • the embodiments of the present application provide the first possible implementation manner of the first aspect, wherein the method further includes: if the start signal of the virtual machine is monitored, loading the driver of the PCI device , To register the PCI device in the virtual machine; and to divide the memory area of the PCI device and map the memory area of the PCI device to the operating system of the virtual machine to provide the PCI The data buffer of the device.
  • an embodiment of the present application provides a second possible implementation manner of the first aspect, in which the memory area of the PCI device is mapped to the virtual machine After the steps in the operating system of, the method further includes: switching the data source of the transmission service in the virtual machine to the data buffer of the PCI device, so as to obtain the desktop from the data buffer Image data.
  • the embodiments of the present application provide a third possible implementation manner of the first aspect, in which the virtual machine that has been rendered by a preset virtual graphics card is captured at a preset time interval in the virtual machine.
  • the steps of the desktop image data of the computer include: when it is monitored that the virtual machine starts to run automatically, the virtual The desktop image data of the computer.
  • the embodiments of the present application provide a fourth possible implementation manner of the first aspect, where the virtual machine is a KVM virtual machine.
  • the embodiments of the present application provide a fifth possible implementation manner of the first aspect, wherein the transmission service is a transmission service based on the SPICE protocol or the VNC protocol.
  • an embodiment of the present application also provides a method for transmitting desktop image data of a virtual machine, which is applied to a client, and the client communicates with the virtual machine through a preset transmission service, and the method includes: The virtual machine sends a connection request; wherein a PCI device is registered in the virtual machine, and a preset data buffer in the PCI device stores desktop image data of the virtual machine that has been rendered by a preset virtual graphics card; Receiving the desktop image data sent by the virtual machine, and displaying the desktop image data through a graphical user interface.
  • the embodiments of the present application provide the first possible implementation manner of the second aspect, wherein the client is a client running SPICE software or VNC software.
  • an embodiment of the present application also provides an apparatus for transmitting desktop image data of a virtual machine, in which a PCI device is registered, and the virtual machine communicates with a client through a preset transmission service, and the apparatus includes: The grabbing module is used to grab the desktop image data of the virtual machine that has been rendered by a preset virtual graphics card at a preset time interval in the virtual machine; the storage module is used to store the desktop image data To the data buffer preset in the PCI device; an obtaining module, configured to obtain the desktop image data stored in the data buffer if the connection request sent by the client is monitored; the first sending module, It is used to send the desktop image data to the client, so that the client displays the desktop image data.
  • an embodiment of the present application also provides a device for transmitting desktop image data of a virtual machine, which is set in a client, and the client communicates with the virtual machine through a preset transmission service, and the device includes: a second transmission Module, configured to send a connection request to the virtual machine; wherein, a PCI device is registered in the virtual machine, and a preset data buffer in the PCI device stores the preset virtual graphics card rendering process Desktop image data of the virtual machine; a receiving module for receiving the desktop image data sent by the virtual machine, and displaying the desktop image data through a graphical user interface.
  • an embodiment of the present application also provides an electronic device, including a memory, a processor, and a computer program stored on the memory and running on the processor.
  • the processor executes the computer program, The steps of the method for transmitting the desktop image data of the virtual machine described in the first aspect and the second aspect are implemented.
  • an embodiment of the present application also provides a computer-readable storage medium having a computer program stored on the computer-readable storage medium, and the computer program executes the first and second aspects when the computer program is run by a processor.
  • a computer-readable storage medium having a computer program stored on the computer-readable storage medium, and the computer program executes the first and second aspects when the computer program is run by a processor.
  • the embodiments of the present application provide a method and device for transmitting desktop image data of a virtual machine, and electronic equipment, which can capture the desktop image data of the virtual machine that has been rendered by a preset virtual graphics card at a preset time interval in the virtual machine.
  • the desktop image data is stored in the data buffer preset in the PCI device; if the connection request sent by the client is monitored, the desktop image data stored in the data buffer is obtained; the desktop image data is sent to the client so that the client The desktop image data is displayed on the end; among them, the PCI device used to store the desktop image data after the preset virtual graphics card rendering process is pre-registered in the virtual machine, and the preset virtual graphics card rendering process can be realized through the grab operation.
  • the high-resolution desktop image data of the virtual machine is acquired, and the captured desktop image data is stored in the preset data buffer in the PCI device, and the PCI device can be used as the data source of the desktop image data transmission service.
  • Grab the desktop image data of the virtual machine rendered by the preset virtual graphics card and the PCI device realizes the storage of the image data rendered by the high-performance virtual graphics card, and transmits it to the client to realize high-resolution desktops with the client
  • the transmission of image data not only improves the display effect of the client, but also improves the user experience.
  • FIG. 1 is a flowchart of a method for transmitting desktop image data of a virtual machine according to an embodiment of the application
  • FIG. 2 is a flowchart of another method for transmitting desktop image data of a virtual machine according to an embodiment of the application
  • FIG. 3 is a flowchart of another method for transmitting desktop image data of a virtual machine according to an embodiment of the application
  • FIG. 4 is a signaling diagram of a method for transmitting desktop image data of a virtual machine according to an embodiment of the application
  • FIG. 5 is a schematic diagram of a method for transmitting desktop image data of a virtual machine according to an embodiment of the application
  • FIG. 6 is a schematic diagram of an apparatus for transmitting desktop image data of a virtual machine according to an embodiment of the application
  • FIG. 7 is a schematic diagram of another device for transmitting desktop image data of a virtual machine provided by an embodiment of the application.
  • 10-grabbing module 20-storing module; 30-acquisition module; 40-first sending module; 50-second sending module; 60-receiving module.
  • the display effect of the virtual machine desktop is directly related to the user experience.
  • graphics virtualization technology can greatly improve the display performance of the virtual machine, so that the virtual machine has the ability to perform professional graphics calculation and rendering;
  • the processing capacity of the virtual display terminal solution puts forward higher requirements.
  • VGA Video Graphics Array, video graphics array
  • VGA device with a high-performance graphics card In practical applications, basic VGA devices can only perform basic 2D graphics rendering; VGA devices with high-performance graphics cards can not only perform 2D and 3D (3-Dimension) rendering, but also provide hardware acceleration, smooth fonts and window animations. And other special effects, greatly improving the user experience.
  • terminal display solutions mainly include solutions based on the VNC (Virtual Network Computing) protocol, solutions based on the SPICE (Simple Protocol for Independent Computing Environment, Simple Protocol for Independent Computing Environment) protocol, and solutions based on the RDP (Remote Network Computing) protocol.
  • Desktop Protocol Remote Desktop Protocol
  • Citrix and VMware the content displayed by the client is provided by the above two VGA devices.
  • terminal display solutions mainly include solutions based on the VNC (Virtual Network Computing) protocol, solutions based on the SPICE (Simple Protocol for Independent Computing Environment, Simple Protocol for Independent Computing Environment) protocol, and solutions based on the RDP (Remote Network Computing) protocol.
  • Desktop Protocol Remote Desktop Protocol
  • private protocol solutions based on Citrix and VMware.
  • solutions based on VNC protocol and solutions based on SPICE protocol only support basic VGA devices and do not support high-performance virtual graphics cards, that is, Since the driver corresponding to the basic VGA device is open source, the transmission service based on the VNC protocol and the SPICE protocol can obtain the processed image data from the basic VGA device.
  • the embodiments of the present application provide a method and device for transmitting desktop image data of a virtual machine, and electronic equipment, which supports graphics card hardware acceleration, and can realize the transmission of high-resolution desktop image data, thereby improving user experience.
  • FIG. 1 is a flowchart of a method for transmitting desktop image data of a virtual machine provided by an embodiment of this application.
  • the executive body is the server, where a virtual machine is set in the server; PCI (Peripheral Component Interconnect) devices are registered in the virtual machine, and the virtual machine communicates with the client through a preset transmission service, as shown in the figure
  • the method includes the following steps:
  • Step S102 Grab the desktop image data of the virtual machine that has been rendered by the preset virtual graphics card at a preset time interval in the virtual machine;
  • Step S104 storing the desktop image data in a data buffer preset in the PCI device
  • the above-mentioned virtual machine is usually configured with a high-performance virtual graphics card.
  • a high-performance virtual graphics card there are two graphics display devices in the virtual machine, that is, one is a basic VGA device and the other is a VGA device with a high-performance graphics card.
  • the above-mentioned preset virtual graphics card usually refers to a high-performance virtual graphics card, and the desktop image data of the virtual machine after rendering processing of the high-performance virtual graphics card is saved to the preset data buffer in the above-mentioned PCI device.
  • the above-mentioned desktop image capture process is usually implemented through a desktop image capture control.
  • the desktop image capture control can run automatically after the virtual machine is powered on. Therefore, when it is detected that the virtual machine runs automatically after it is powered on,
  • the desktop image data of the virtual machine that has been rendered by the preset virtual graphics card can be captured at a preset time interval through a preset desktop image capture control.
  • the desktop image capture control can be used to capture the desktop image data of the virtual machine after the preset virtual graphics card rendering process. Pick.
  • the aforementioned preset time interval can be set according to factors such as the rendering speed of the desktop image data, the real-time requirements of the desktop image data display, and so on, which is not specifically limited here.
  • Step S106 if the connection request sent by the client is monitored, the desktop image data stored in the data buffer is obtained;
  • the server detects the connection request sent by the client, it obtains the stored desktop image data from the preset data buffer in the PCI device, so that the server sends the desktop image data to the client through the preset transmission service.
  • the server detects the connection request sent by the client, it will obtain the latest stored desktop image data from the data buffer preset in the PCI device, so that the desktop image data displayed by the client and the desktop image data of the virtual machine are as close as possible. Stay in sync.
  • Step S108 Send the desktop image data to the client, so that the client displays the desktop image data.
  • the embodiment of the present application provides a method for transmitting desktop image data of a virtual machine, which can capture the desktop image data of the virtual machine that has been rendered by a preset virtual graphics card at a preset time interval in the virtual machine, and combine the desktop image data Stored in the data buffer preset in the PCI device; if the connection request sent by the client is monitored, obtain the desktop image data stored in the data buffer; send the desktop image data to the client so that the client can display the desktop image data ;
  • the PCI device used to store the desktop image data after the preset virtual graphics card rendering process is pre-registered in the virtual machine, and the high resolution of the virtual machine after the preset virtual graphics card rendering process can be realized through the grab operation Rate desktop image data acquisition, the captured desktop image data is stored in the preset data buffer in the PCI device, and the PCI device can be used as the data source of the desktop image data transmission service.
  • the captured desktop image data can be preset
  • the desktop image data of the virtual machine after the virtual graphics card rendering process and the PCI device realizes the storage of the image data rendered by the high-performance virtual graphics card and transmits it to the client to realize the transmission of high-resolution desktop image data with the client. It not only improves the display effect of the client, but also improves the user experience.
  • the virtual machine in the embodiment of the present application usually includes a KVM (Kernel-based Virtual Machine, kernel-based virtual machine) virtual machine, which communicates with the client through a preset transmission service, where the transmission The service is a transmission service based on the SPICE protocol or the VNC protocol.
  • KVM Kernel-based Virtual Machine, kernel-based virtual machine
  • the desktop image data of the above-mentioned virtual machine using KVM technology is captured by the preset desktop image after the rendering processing of the high-performance virtual graphics card
  • the control grabs it and stores it in the preset data buffer of the PCI device, which can then be displayed to the user through terminal software such as SPICE, thus solving the problem that the transmission service based on the SPICE protocol or the VNC protocol in related technologies cannot directly obtain high-performance virtual
  • the VGA device with high-performance virtual graphics card can not only perform 2D and 3D rendering, but also provides hardware acceleration, which can realize special effects such as smooth fonts and window animations, which greatly improves the user experience.
  • the image that the user sees can be rendered through hardware acceleration, so the user experience is significantly improved.
  • the embodiment of the present application also includes the registration process of the PCI device.
  • the embodiment of the present application also provides another method for sending desktop image data of a virtual machine. As shown in Figure 2, the method includes the following steps:
  • Step S202 if the start signal of the virtual machine is detected, the driver of the PCI device is loaded to register the PCI device in the virtual machine;
  • the server loads the driver of the PCI device to register the PCI device in the virtual machine.
  • the main function of the PCI device is to provide a large enough device memory in the virtual machine as a data buffer Area, used to store the captured desktop image data.
  • Step S204 Divide the memory area of the PCI device, and map the memory area of the PCI device to the operating system of the virtual machine to provide a data buffer of the PCI device;
  • the memory area of the PCI device can also be divided for the PCI device as a data buffer to store the captured desktop image data.
  • the newly added PCI device can be seen in the device information in the virtual machine; then the driver of the PCI device is loaded, at this time, the PCI device can be recognized by the operating system in the virtual machine, so that the PCI device normal work.
  • the main function of the driver is to map the memory area of the PCI device to the operating system of the virtual machine, so as to provide a corresponding access mechanism to provide the data buffer of the PCI device.
  • the size of the data buffer is related to the resolution of the desktop image data. The larger the resolution, the larger the data buffer. Therefore, in this embodiment of the application, the high-resolution desktop image can be realized through the data buffer of the PCI device. Data storage and transmission.
  • Step S206 Grab the desktop image data of the virtual machine that has been rendered by the preset virtual graphics card at a preset time interval in the virtual machine;
  • Step S208 storing the desktop image data in a data buffer preset in the PCI device
  • Step S210 Switch the data source of the transmission service in the virtual machine to the data buffer of the PCI device;
  • the virtual machine process will start the preset transmission service to monitor the port communicating with the client. At this time, the virtual machine will also switch the data source of the transmission service to the data buffer of the PCI device, which is the data source of the transmission service. Switch from the buffer of the basic VGA device to the data buffer of the PCI device, so as to obtain desktop image data from the data buffer of the PCI device.
  • Step S212 if the connection request sent by the client is monitored, the desktop image data stored in the data buffer is obtained;
  • Step S214 Send the desktop image data to the client, so that the client displays the desktop image data.
  • the embodiment of the present application also provides another method for transmitting desktop image data of a virtual machine, as shown in FIG. 3 is a flowchart of another method for transmitting desktop image data of a virtual machine.
  • the execution body of the method is a client, and the client communicates with a virtual machine through a preset transmission service.
  • the method includes the following steps:
  • Step S302 sending a connection request to the virtual machine
  • the above-mentioned virtual machine is registered with a PCI device, and the preset data buffer in the PCI device stores the desktop image data of the virtual machine after the preset virtual graphics card rendering processing; the client is running SPICE software or VNC software Client.
  • Step S304 Receive desktop image data sent by the virtual machine, and display the desktop image data through a graphical user interface.
  • the method for transmitting the desktop image data of the virtual machine includes: sending a connection request to the virtual machine at the client; wherein, the PCI device is registered in the virtual machine, and the data buffer in the PCI device is preset
  • the desktop image data is stored; the desktop image data sent by the virtual machine is received, and the desktop image data is displayed through a graphical user interface.
  • This application supports graphics card hardware acceleration, which can realize the transmission of high-resolution desktop image data, thereby improving user experience.
  • FIG. 4 provides a signaling diagram of a method for transmitting desktop image data of a virtual machine, which is applied to a server and a client.
  • the server is provided with a virtual machine.
  • PCI devices are registered in the virtual machine, and the virtual machine communicates with the client through a preset transmission service. As shown in Figure 4, it includes the following steps:
  • Step S402 Grab the desktop image data of the virtual machine after rendering processing of the preset virtual graphics card in the virtual machine at a preset time interval, and store the desktop image data in a preset data buffer in the PCI device;
  • Step S404 the client sends a connection request to the virtual machine
  • Step S406 the virtual machine obtains the desktop image data stored in the data buffer
  • Step S408 the virtual machine sends the desktop image data to the client
  • step S410 the client terminal displays the desktop image data through a graphical user interface.
  • a virtual machine is set in the server, a PCI device is registered in the virtual machine, and the virtual machine communicates with the client through a preset transmission service.
  • the preset desktop image capture control in the virtual machine captures the desktop image data of the virtual machine at a preset time interval, where the desktop image data is after image rendering by the graphics card, that is, the high-performance display VGA device The desktop data; and the desktop image data is stored in the data buffer preset in the PCI device.
  • the virtual machine When the client sends a connection request to the virtual machine, the virtual machine obtains the desktop image data stored in the data buffer and stores the desktop image data Send to the client through the preset transmission service, so that the client can display the desktop image data; among them, the virtual machine also switches the data source of the transmission service from the standard VGA device to the data buffer of the PCI device to facilitate the transfer from the data buffer Obtain desktop image data, so as to realize the transmission of high-resolution desktop image data.
  • the standard VGA device is the above-mentioned basic VGA device.
  • the virtual machine here is a KVM virtual machine, which can continue to obtain related optimizations and improvements of KVM technology, and supports hardware acceleration, which can realize desktop features, run 3D drawing tools and games, etc., thereby satisfying various needs of users , Improve the customer experience.
  • the embodiment of the present application also provides a device for transmitting desktop image data of a virtual machine, which is set in a server, wherein the server is provided with a virtual machine; the virtual machine is registered with PCI equipment, and the virtual machine Communicate with clients through preset transmission services.
  • FIG. 6 is a schematic diagram of a device for transmitting desktop image data of a virtual machine provided by an embodiment of the application. As shown in FIG. 6, the device includes:
  • the grabbing module 10 is configured to grab the desktop image data of the virtual machine that has been rendered by the preset virtual graphics card at a preset time interval in the virtual machine;
  • the storage module 20 is configured to store desktop image data in a data buffer preset in the PCI device;
  • the obtaining module 30 is configured to obtain the desktop image data stored in the data buffer if the connection request sent by the client is monitored;
  • the first sending module 40 is configured to send desktop image data to the client, so that the client displays the desktop image data.
  • FIG. 7 is a schematic diagram of another device for transmitting desktop image data of a virtual machine provided by an embodiment of the application. As shown in FIG. 7, the device includes:
  • the second sending module 50 is configured to send a connection request to a virtual machine; wherein, a PCI device is registered in the virtual machine, and a preset data buffer in the PCI device stores the desktop of the virtual machine that has been rendered by a preset virtual graphics card Image data
  • the receiving module 60 is configured to receive desktop image data sent by the virtual machine, and display the desktop image data through a graphical user interface.
  • the device for transmitting the desktop image data of the virtual machine can capture the desktop image data of the virtual machine that has been rendered by the preset virtual graphics card at a preset time interval in the virtual machine, and combine the desktop image data Stored in the data buffer preset in the PCI device; if the connection request sent by the client is monitored, obtain the desktop image data stored in the data buffer; send the desktop image data to the client so that the client can display the desktop image data ;
  • the PCI device used to store the desktop image data after the preset virtual graphics card rendering process is pre-registered in the virtual machine, and the high resolution of the virtual machine after the preset virtual graphics card rendering process can be realized through the grab operation Rate desktop image data acquisition, the captured desktop image data is stored in the preset data buffer in the PCI device, and the PCI device can be used as the data source of the desktop image data transmission service.
  • the captured desktop image data can be preset
  • the desktop image data of the virtual machine after the virtual graphics card rendering process and the PCI device realizes the storage of the image data rendered by the high-performance virtual graphics card and transmits it to the client to realize the transmission of high-resolution desktop image data with the client. It not only improves the display effect of the client, but also improves the user experience.
  • An embodiment of the present application also provides an electronic device, including a memory, a processor, and a computer program stored on the memory and capable of running on the processor.
  • the processor executes the computer program to implement the desktop image data of the virtual machine provided in the above embodiment. The steps of the transmission method.
  • the embodiments of the present application also provide a computer-readable storage medium on which a computer program is stored.
  • the steps of the method for transmitting the desktop image data of the virtual machine in the above-mentioned embodiment are executed.
  • the computer program product provided by the embodiment of the present application includes a computer-readable storage medium storing program code.
  • the instructions included in the program code can be used to execute the method described in the previous method embodiment. For specific implementation, please refer to the method embodiment , I won’t repeat it here.
  • the embodiments of the present application provide a method and device for transmitting desktop image data of a virtual machine, and electronic equipment, which can capture the desktop image data of the virtual machine that has been rendered by a preset virtual graphics card at a preset time interval in the virtual machine.
  • the desktop image data is stored in the data buffer preset in the PCI device; if the connection request sent by the client is monitored, the desktop image data stored in the data buffer is obtained; the desktop image data is sent to the client so that the client The desktop image data is displayed on the end; among them, the PCI device used to store the desktop image data after the preset virtual graphics card rendering process is pre-registered in the virtual machine, and the preset virtual graphics card rendering process can be realized through the grab operation.
  • the high-resolution desktop image data of the virtual machine is acquired, and the captured desktop image data is stored in the preset data buffer in the PCI device, and the PCI device can be used as the data source of the desktop image data transmission service.
  • Grab the desktop image data of the virtual machine rendered by the preset virtual graphics card and the PCI device realizes the storage of the image data rendered by the high-performance virtual graphics card, and transmits it to the client to realize high-resolution desktops with the client
  • the transmission of image data not only improves the display effect of the client, but also improves the user experience.
  • connection should be understood in a broad sense, for example, it may be a fixed connection or a detachable connection. , Or integrally connected; it can be a mechanical connection or an electrical connection; it can be directly connected or indirectly connected through an intermediate medium, and it can be the internal communication between two components.
  • installation should be understood in a broad sense, for example, it may be a fixed connection or a detachable connection. , Or integrally connected; it can be a mechanical connection or an electrical connection; it can be directly connected or indirectly connected through an intermediate medium, and it can be the internal communication between two components.
  • connection should be understood in a broad sense, for example, it may be a fixed connection or a detachable connection. , Or integrally connected; it can be a mechanical connection or an electrical connection; it can be directly connected or indirectly connected through an intermediate medium, and it can be the internal communication between two components.
  • the function is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a non-volatile computer readable storage medium executable by a processor.
  • the computer software product is stored in a storage medium, including several
  • the instructions are used to make a computer device (which may be a personal computer, a server, or a network device, etc.) execute all or part of the steps of the methods described in the various embodiments of the present application.
  • the aforementioned storage media include: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), magnetic disks or optical disks and other media that can store program codes. .

Landscapes

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

Abstract

The present application provides a method and apparatus for transmitting desktop image data of a virtual machine, and an electronic device. The method comprises: capturing, in a virtual machine according to a preset time interval, the desktop image data of the virtual machine that is rendered by a preset virtual graphics card, and storing the desktop image data in a preset data buffer area in a PCI device; if a connection request sent by a client is monitored, obtaining the desktop image data stored in the data buffer area; and sending the desktop image data to the client, so that the client displays the desktop image data. The PCI device, as a data source of a desktop image data transmission service, realizes the obtaining of high-resolution desktop image data by means of a capturing operation. Therefore, the image data rendered by a high-performance virtual graphics card can be stored by means of the capturing operation and the PCI device and transmitted to the client, so as to implement the transmission of the high-resolution desktop image data with the client, thereby improving the display effect of the client, and also improving the user experience.

Description

虚拟机的桌面图像数据的传输方法和装置及电子设备Method and device for transmitting desktop image data of virtual machine and electronic equipment
本申请要求于2020年5月14日提交中国专利局、申请号为202010410975.7发明名称为“虚拟机的桌面图像数据的传输方法和装置及电子设备”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。This application claims the priority of a Chinese patent application filed with the Chinese Patent Office with the application number 202010410975.7 and the invention titled "Virtual Machine Desktop Image Data Transmission Method and Apparatus and Electronic Equipment" on May 14, 2020. The entire content of the application is approved The reference is incorporated in this application.
技术领域Technical field
本申请涉及云服务器技术领域,尤其是涉及虚拟机的桌面图像数据的传输方法和装置及电子设备。This application relates to the technical field of cloud servers, in particular to a method and device for transmitting desktop image data of a virtual machine and electronic equipment.
背景技术Background technique
目前,随着云计算技术的飞速发展,桌面云作为一种新型的计算环境,得到了广泛的使用。桌面云通过在虚拟机中安装桌面操作系统,然后在终端上连接虚拟机,可以获得接近实体电脑的使用体验,为企业和个人用户提供了经济高效的桌面解决方案。At present, with the rapid development of cloud computing technology, desktop cloud has been widely used as a new type of computing environment. By installing a desktop operating system in a virtual machine, and then connecting the virtual machine to the terminal, the desktop cloud can obtain a user experience close to that of a physical computer, providing a cost-effective desktop solution for enterprises and individual users.
虚拟机桌面的显示效果是桌面云方案的主要指标之一,使用显卡虚拟化技术,可以大大提高虚拟机的显示性能,使得虚拟机具备了进行专业图形计算和渲染的能力,但也对虚拟显示终端方案的处理能力提出了更高要求。目前使用高性能虚拟显卡的虚拟机中主要存在两个图形显示设备,一个是基本VGA(Video Graphics Array,视频图形阵列)设备,另一个是高性能显卡的VGA设备,用户使用终端连接虚拟机时,看到的内容就是图形显示设备提供的,但是目前的客户端传输协议方案无法获取高性能显卡的VGA设备处理的图像,因此只支持较低分辨率桌面图像的传输,不支持显卡硬件加速,导致传输较慢,影响了用户的体验度。The display effect of the virtual machine desktop is one of the main indicators of the desktop cloud solution. The use of graphics card virtualization technology can greatly improve the display performance of the virtual machine, so that the virtual machine has the ability to perform professional graphics calculation and rendering. The processing capacity of the terminal solution puts forward higher requirements. At present, there are mainly two graphics display devices in virtual machines that use high-performance virtual graphics cards. One is a basic VGA (Video Graphics Array) device, and the other is a VGA device with high-performance graphics cards. When users use a terminal to connect to the virtual machine , The content you see is provided by the graphics display device, but the current client transmission protocol scheme cannot obtain the images processed by the VGA device of the high-performance graphics card, so it only supports the transmission of lower resolution desktop images, and does not support graphics hardware acceleration. As a result, the transmission is slow, which affects the user experience.
发明内容Summary of the invention
有鉴于此,本申请的目的在于提供虚拟机的桌面图像数据的传输方法和装置及电子设备,支持显卡硬件加速,可以实现高分辨率桌面图像数据的传输,从而提高了用户的体验度。In view of this, the purpose of the present application is to provide a method and device for transmitting desktop image data of a virtual machine and electronic equipment, which supports graphics card hardware acceleration, can realize the transmission of high-resolution desktop image data, thereby improving user experience.
第一方面,本申请实施例提供了一种虚拟机的桌面图像数据的传输方法,虚拟机中注册有PCI设备,所述虚拟机通过预设的传输服务与客户端通信,所述方法包括:在所述虚拟机中按照预设的时间间隔抓取经预设虚拟显卡渲 染处理后的所述虚拟机的桌面图像数据;将所述桌面图像数据存储至所述PCI设备中预设的数据缓冲区;如果监测到所述客户端发送的连接请求,获取所述数据缓冲区中存储的所述桌面图像数据;将所述桌面图像数据发送至所述客户端,以使所述客户端显示所述桌面图像数据。In the first aspect, an embodiment of the present application provides a method for transmitting desktop image data of a virtual machine, in which a PCI device is registered, and the virtual machine communicates with a client through a preset transmission service, and the method includes: Grab the desktop image data of the virtual machine after rendering processing of the preset virtual graphics card in the virtual machine at a preset time interval; store the desktop image data in a preset data buffer in the PCI device Area; if the connection request sent by the client is monitored, obtain the desktop image data stored in the data buffer; send the desktop image data to the client, so that the client displays the Describe the desktop image data.
结合第一方面,本申请实施例提供了第一方面的第一种可能的实施方式,其中,所述方法还包括:如果监测到所述虚拟机的启动信号,加载所述PCI设备的驱动程序,以在所述虚拟机中注册所述PCI设备;以及,划分所述PCI设备的内存区,并将所述PCI设备的内存区映射至所述虚拟机的操作系统中,以提供所述PCI设备的数据缓冲区。With reference to the first aspect, the embodiments of the present application provide the first possible implementation manner of the first aspect, wherein the method further includes: if the start signal of the virtual machine is monitored, loading the driver of the PCI device , To register the PCI device in the virtual machine; and to divide the memory area of the PCI device and map the memory area of the PCI device to the operating system of the virtual machine to provide the PCI The data buffer of the device.
结合第一方面的第一种可能的实施方式,本申请实施例提供了第一方面的第二种可能的实施方式,其中,在所述将所述PCI设备的内存区映射至所述虚拟机的操作系统中的步骤之后,所述方法还包括:将所述虚拟机中所述传输服务的数据来源切换至所述PCI设备的数据缓冲区,以便于从所述数据缓冲区获取所述桌面图像数据。With reference to the first possible implementation manner of the first aspect, an embodiment of the present application provides a second possible implementation manner of the first aspect, in which the memory area of the PCI device is mapped to the virtual machine After the steps in the operating system of, the method further includes: switching the data source of the transmission service in the virtual machine to the data buffer of the PCI device, so as to obtain the desktop from the data buffer Image data.
结合第一方面,本申请实施例提供了第一方面的第三种可能的实施方式,其中,所述虚拟机中按照预设的时间间隔抓取经预设虚拟显卡渲染处理后的所述虚拟机的桌面图像数据的步骤包括:当监测到所述虚拟机开机自动运行之后,通过预设的桌面图像抓取控件按照预设的时间间隔抓取经预设虚拟显卡渲染处理后的所述虚拟机的桌面图像数据。With reference to the first aspect, the embodiments of the present application provide a third possible implementation manner of the first aspect, in which the virtual machine that has been rendered by a preset virtual graphics card is captured at a preset time interval in the virtual machine. The steps of the desktop image data of the computer include: when it is monitored that the virtual machine starts to run automatically, the virtual The desktop image data of the computer.
结合第一方面,本申请实施例提供了第一方面的第四种可能的实施方式,其中,所述虚拟机为KVM虚拟机。With reference to the first aspect, the embodiments of the present application provide a fourth possible implementation manner of the first aspect, where the virtual machine is a KVM virtual machine.
结合第一方面,本申请实施例提供了第一方面的第五种可能的实施方式,其中,所述传输服务为基于SPICE协议,或者VNC协议的传输服务。With reference to the first aspect, the embodiments of the present application provide a fifth possible implementation manner of the first aspect, wherein the transmission service is a transmission service based on the SPICE protocol or the VNC protocol.
第二方面,本申请实施例还提供一种虚拟机的桌面图像数据的传输方法,应用于客户端,所述客户端通过预设的传输服务与虚拟机通信,所述方法包括:向所述虚拟机发送连接请求;其中,所述虚拟机中注册有PCI设备,所述PCI设备中预设的数据缓冲区中存储有经预设虚拟显卡渲染处理后的所述虚拟机的桌面图像数据;接收所述虚拟机发送的所述桌面图像数据,并将所述桌面图像数据通过图形用户界面进行显示。In the second aspect, an embodiment of the present application also provides a method for transmitting desktop image data of a virtual machine, which is applied to a client, and the client communicates with the virtual machine through a preset transmission service, and the method includes: The virtual machine sends a connection request; wherein a PCI device is registered in the virtual machine, and a preset data buffer in the PCI device stores desktop image data of the virtual machine that has been rendered by a preset virtual graphics card; Receiving the desktop image data sent by the virtual machine, and displaying the desktop image data through a graphical user interface.
结合第二方面,本申请实施例提供了第二方面的第一种可能的实施方式,其中,所述客户端为运行有SPICE软件,或者VNC软件的客户端。With reference to the second aspect, the embodiments of the present application provide the first possible implementation manner of the second aspect, wherein the client is a client running SPICE software or VNC software.
第三方面,本申请实施例还提供一种虚拟机的桌面图像数据的传输装置,虚拟机中注册有PCI设备,所述虚拟机通过预设的传输服务与客户端通信,所述装置包括:抓取模块,用于在所述虚拟机中按照预设的时间间隔抓取经预设虚拟显卡渲染处理后的所述虚拟机的桌面图像数据;存储模块,用于将所述桌面图像数据存储至所述PCI设备中预设的数据缓冲区;获取模块,用于如果监测到所述客户端发送的连接请求,获取所述数据缓冲区中存储的所述桌面图像数据;第一发送模块,用于将所述桌面图像数据发送至所述客户端,以使所述客户端显示所述桌面图像数据。In a third aspect, an embodiment of the present application also provides an apparatus for transmitting desktop image data of a virtual machine, in which a PCI device is registered, and the virtual machine communicates with a client through a preset transmission service, and the apparatus includes: The grabbing module is used to grab the desktop image data of the virtual machine that has been rendered by a preset virtual graphics card at a preset time interval in the virtual machine; the storage module is used to store the desktop image data To the data buffer preset in the PCI device; an obtaining module, configured to obtain the desktop image data stored in the data buffer if the connection request sent by the client is monitored; the first sending module, It is used to send the desktop image data to the client, so that the client displays the desktop image data.
第四方面,本申请实施例还提供一种虚拟机的桌面图像数据的传输装置,设置于客户端,所述客户端通过预设的传输服务与虚拟机通信,所述装置包括:第二发送模块,用于向所述虚拟机发送连接请求;其中,所述虚拟机中注册有PCI设备,所述PCI设备中预设的数据缓冲区中存储有经预设虚拟显卡渲染处理后的所述虚拟机的桌面图像数据;接收模块,用于接收所述虚拟机发送的所述桌面图像数据,并将所述桌面图像数据通过图形用户界面进行显示。In a fourth aspect, an embodiment of the present application also provides a device for transmitting desktop image data of a virtual machine, which is set in a client, and the client communicates with the virtual machine through a preset transmission service, and the device includes: a second transmission Module, configured to send a connection request to the virtual machine; wherein, a PCI device is registered in the virtual machine, and a preset data buffer in the PCI device stores the preset virtual graphics card rendering process Desktop image data of the virtual machine; a receiving module for receiving the desktop image data sent by the virtual machine, and displaying the desktop image data through a graphical user interface.
第五方面,本申请实施例还提供一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现第一方面和第二方面所述的虚拟机的桌面图像数据的传输方法的步骤。In a fifth aspect, an embodiment of the present application also provides an electronic device, including a memory, a processor, and a computer program stored on the memory and running on the processor. When the processor executes the computer program, The steps of the method for transmitting the desktop image data of the virtual machine described in the first aspect and the second aspect are implemented.
第六方面,本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行第一方面和第二方面所述的虚拟机的桌面图像数据的传输方法的步骤。In a sixth aspect, an embodiment of the present application also provides a computer-readable storage medium having a computer program stored on the computer-readable storage medium, and the computer program executes the first and second aspects when the computer program is run by a processor. Of the method for transferring desktop image data of a virtual machine.
本申请实施例带来了以下有益效果:The embodiments of the application bring the following beneficial effects:
本申请实施例提供了虚拟机的桌面图像数据的传输方法和装置及电子设备,能够在虚拟机中按照预设的时间间隔抓取经预设虚拟显卡渲染处理后的虚拟机的桌面图像数据,并将桌面图像数据存储至PCI设备中预设的数据缓冲区;如果监测到客户端发送的连接请求,获取数据缓冲区中存储的桌面图 像数据;将桌面图像数据发送至客户端,以使客户端显示桌面图像数据;其中,用于存储经预设虚拟显卡渲染处理后的桌面图像数据的PCI设备是预先在虚拟机中注册的,通过抓取操作可以实现对预设虚拟显卡渲染处理后的虚拟机的高分辨率桌面图像数据的获取,抓取到的桌面图像数据存储至PCI设备中预设的数据缓冲区,进而该PCI设备可以作为桌面图像数据传输服务的数据来源,因此,可以通过抓取经预设虚拟显卡渲染处理后的虚拟机的桌面图像数据以及该PCI设备实现对高性能虚拟显卡渲染的图像数据进行存储,并传输至客户端处,实现与客户端进行高分辨率桌面图像数据的传输,不仅提高了客户端的显示效果,也提高了用户的体验度。The embodiments of the present application provide a method and device for transmitting desktop image data of a virtual machine, and electronic equipment, which can capture the desktop image data of the virtual machine that has been rendered by a preset virtual graphics card at a preset time interval in the virtual machine. The desktop image data is stored in the data buffer preset in the PCI device; if the connection request sent by the client is monitored, the desktop image data stored in the data buffer is obtained; the desktop image data is sent to the client so that the client The desktop image data is displayed on the end; among them, the PCI device used to store the desktop image data after the preset virtual graphics card rendering process is pre-registered in the virtual machine, and the preset virtual graphics card rendering process can be realized through the grab operation. The high-resolution desktop image data of the virtual machine is acquired, and the captured desktop image data is stored in the preset data buffer in the PCI device, and the PCI device can be used as the data source of the desktop image data transmission service. Grab the desktop image data of the virtual machine rendered by the preset virtual graphics card and the PCI device realizes the storage of the image data rendered by the high-performance virtual graphics card, and transmits it to the client to realize high-resolution desktops with the client The transmission of image data not only improves the display effect of the client, but also improves the user experience.
本申请的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请而了解。本申请的目的和其他优点在说明书以及附图中所特别指出的结构来实现和获得。Other features and advantages of the present application will be described in the following description, and partly become obvious from the description, or understood by implementing the present application. The purpose and other advantages of the application are realized and obtained in the structure specifically pointed out in the description and the drawings.
为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。In order to make the above-mentioned objectives, features and advantages of the present application more obvious and understandable, the preferred embodiments and accompanying drawings are described in detail as follows.
附图说明Description of the drawings
为了更清楚地说明本申请实施例和相关技术的技术方案,下面对实施例和相关技术中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,本领域普通技术人员来讲还可以根据这些附图获得其他的附图。In order to more clearly illustrate the technical solutions of the embodiments of the present application and related technologies, the following briefly introduces the drawings that need to be used in the embodiments and related technologies. Obviously, the drawings in the following description are only of the present application. For some embodiments, those of ordinary skill in the art can also obtain other drawings based on these drawings.
图1为本申请实施例提供的一种虚拟机的桌面图像数据的传输方法的流程图;FIG. 1 is a flowchart of a method for transmitting desktop image data of a virtual machine according to an embodiment of the application;
图2为本申请实施例提供的另一种虚拟机的桌面图像数据的传输方法的流程图;2 is a flowchart of another method for transmitting desktop image data of a virtual machine according to an embodiment of the application;
图3为本申请实施例提供的另一种虚拟机的桌面图像数据的传输方法的流程图;3 is a flowchart of another method for transmitting desktop image data of a virtual machine according to an embodiment of the application;
图4为本申请实施例提供的一种虚拟机的桌面图像数据的传输方法的信令图;4 is a signaling diagram of a method for transmitting desktop image data of a virtual machine according to an embodiment of the application;
图5为本申请实施例提供的一种虚拟机的桌面图像数据的传输方法的原理图;FIG. 5 is a schematic diagram of a method for transmitting desktop image data of a virtual machine according to an embodiment of the application;
图6为本申请实施例提供的一种虚拟机的桌面图像数据的传输装置的示意图;6 is a schematic diagram of an apparatus for transmitting desktop image data of a virtual machine according to an embodiment of the application;
图7为本申请实施例提供的另一种虚拟机的桌面图像数据的传输装置的示意图。FIG. 7 is a schematic diagram of another device for transmitting desktop image data of a virtual machine provided by an embodiment of the application.
图标:icon:
10-抓取模块;20-存储模块;30-获取模块;40-第一发送模块;50-第二发送模块;60-接收模块。10-grabbing module; 20-storing module; 30-acquisition module; 40-first sending module; 50-second sending module; 60-receiving module.
具体实施方式Detailed ways
为使本申请的目的、技术方案、及优点更加清楚明白,以下参照附图并举实施例,对本申请进一步详细说明。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。本领域普通技术人员基于本申请中的实施例所获得的所有其他实施例,都属于本申请保护的范围。In order to make the purpose, technical solutions, and advantages of the present application clearer, the following further describes the present application in detail with reference to the accompanying drawings and embodiments. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments. All other embodiments obtained by a person of ordinary skill in the art based on the embodiments in this application fall within the protection scope of this application.
在桌面云中,虚拟机桌面的显示效果直接关系到用户体验,使用显卡虚拟化技术,可以大大提高虚拟机的显示性能,使得虚拟机具备了进行专业图形计算和渲染的能力;同时,也对虚拟显示终端方案的处理能力提出了更高要求。In the desktop cloud, the display effect of the virtual machine desktop is directly related to the user experience. The use of graphics virtualization technology can greatly improve the display performance of the virtual machine, so that the virtual machine has the ability to perform professional graphics calculation and rendering; The processing capacity of the virtual display terminal solution puts forward higher requirements.
其中,配置并使用高性能虚拟显卡的虚拟机中,主要存在两个图形显示设备,一个是基本VGA(Video Graphics Array,视频图形阵列)设备,另一个是高性能显卡的VGA设备。在实际应用中,基本VGA设备只能进行基本的2D图形渲染;高性能显卡的VGA设备不仅可以进行2D和3D(3-Dimension,三维)渲染,还提供了硬件加速、实现平滑字体和窗口动画等特效,大大改善了用户的使用体验。Among them, in a virtual machine configured and using a high-performance virtual graphics card, there are mainly two graphics display devices, one is a basic VGA (Video Graphics Array, video graphics array) device, and the other is a VGA device with a high-performance graphics card. In practical applications, basic VGA devices can only perform basic 2D graphics rendering; VGA devices with high-performance graphics cards can not only perform 2D and 3D (3-Dimension) rendering, but also provide hardware acceleration, smooth fonts and window animations. And other special effects, greatly improving the user experience.
此时,当用户使用客户端显示软件连接虚拟机时,客户端显示的内容就是上述两种VGA设备提供的。按照传输协议来划分,终端显示方案主要有基于VNC(Virtual Network Computing,虚拟网络计算)协议的方案、基于SPICE(Simple Protocol for Independent Computing Environment,独立计算环境简单协议)协议的方案、基于RDP(Remote Desktop Protocol,远程桌面协议)协议的方案和基于Citrix和VMware的私有协议方案,其中,基于VNC协议的方案和基于SPICE协议的方案只支持基本VGA设备,不支持高性能虚拟显卡, 也就是说,由于基本VGA设备对应的驱动程序为开源的,所以基于VNC协议和基于SPICE协议的传输服务可以从基本VGA设备获取其处理后的图像数据,但是由于高性能虚拟显卡的驱动程序是非开源的,所以基于VNC协议和基于SPICE协议的传输服务不能直接从高性能虚拟显卡的VGA设备获取其处理后的图像数据,并且基于VNC协议的方案只能支持较低分辨率桌面图像;而基于RDP协议的方案则不支持显卡硬件加速,只能用于Windows虚拟机上;以及,基于Citrix和VMware的私有协议方案非公开,价格较高,不便于在实际应用中实施和推广。At this time, when the user uses the client display software to connect to the virtual machine, the content displayed by the client is provided by the above two VGA devices. According to the transmission protocol, terminal display solutions mainly include solutions based on the VNC (Virtual Network Computing) protocol, solutions based on the SPICE (Simple Protocol for Independent Computing Environment, Simple Protocol for Independent Computing Environment) protocol, and solutions based on the RDP (Remote Network Computing) protocol. Desktop Protocol (Remote Desktop Protocol) protocol solutions and private protocol solutions based on Citrix and VMware. Among them, solutions based on VNC protocol and solutions based on SPICE protocol only support basic VGA devices and do not support high-performance virtual graphics cards, that is, Since the driver corresponding to the basic VGA device is open source, the transmission service based on the VNC protocol and the SPICE protocol can obtain the processed image data from the basic VGA device. However, since the driver of the high-performance virtual graphics card is not open source, Transmission services based on the VNC protocol and the SPICE protocol cannot directly obtain the processed image data from the VGA device of the high-performance virtual graphics card, and the solution based on the VNC protocol can only support lower resolution desktop images; while the solution based on the RDP protocol It does not support graphics hardware acceleration, and can only be used on Windows virtual machines; and, the private protocol scheme based on Citrix and VMware is non-public, the price is high, and it is not convenient to implement and promote in practical applications.
针对上述问题,本申请实施例提供了虚拟机的桌面图像数据的传输方法和装置及电子设备,支持显卡硬件加速,可以实现高分辨率桌面图像数据的传输,从而提高了用户的体验度。In response to the foregoing problems, the embodiments of the present application provide a method and device for transmitting desktop image data of a virtual machine, and electronic equipment, which supports graphics card hardware acceleration, and can realize the transmission of high-resolution desktop image data, thereby improving user experience.
为便于对本实施例进行理解,下面首先对本申请实施例提供的一种虚拟机的桌面图像数据的传输方法进行详细介绍。In order to facilitate the understanding of this embodiment, a method for transmitting desktop image data of a virtual machine provided in an embodiment of the present application will be introduced in detail below.
在一种可能的实施方式中,本申请实施例提供了一种虚拟机的桌面图像数据的传输方法,图1为本申请实施例提供的一种虚拟机的桌面图像数据的传输方法的流程图,执行主体为服务器,其中,服务器中设置有虚拟机;虚拟机中注册有PCI(Peripheral Component Interconnect,外设部件互连标准)设备,虚拟机通过预设的传输服务与客户端通信,如图1所示,该方法包括以下步骤:In a possible implementation manner, an embodiment of the present application provides a method for transmitting desktop image data of a virtual machine. FIG. 1 is a flowchart of a method for transmitting desktop image data of a virtual machine provided by an embodiment of this application. , The executive body is the server, where a virtual machine is set in the server; PCI (Peripheral Component Interconnect) devices are registered in the virtual machine, and the virtual machine communicates with the client through a preset transmission service, as shown in the figure As shown in 1, the method includes the following steps:
步骤S102,在虚拟机中按照预设的时间间隔抓取经预设虚拟显卡渲染处理后的虚拟机的桌面图像数据;Step S102: Grab the desktop image data of the virtual machine that has been rendered by the preset virtual graphics card at a preset time interval in the virtual machine;
步骤S104,将桌面图像数据存储至PCI设备中预设的数据缓冲区;Step S104, storing the desktop image data in a data buffer preset in the PCI device;
其中,上述虚拟机通常是配置有高性能虚拟显卡的,虚拟机中一般存在两个图形显示设备,即,其中一个是基本VGA设备,另一个高性能显卡的VGA设备,而本申请实施例中上述预设虚拟显卡则通常是指高性能虚拟显卡,经该高性能虚拟显卡渲染处理后的虚拟机的桌面图像数据则保存至上述PCI设备中预设的数据缓冲区。Among them, the above-mentioned virtual machine is usually configured with a high-performance virtual graphics card. Generally, there are two graphics display devices in the virtual machine, that is, one is a basic VGA device and the other is a VGA device with a high-performance graphics card. The above-mentioned preset virtual graphics card usually refers to a high-performance virtual graphics card, and the desktop image data of the virtual machine after rendering processing of the high-performance virtual graphics card is saved to the preset data buffer in the above-mentioned PCI device.
进一步,上述桌面图像抓取过程,通常是通过桌面图像抓取控件实现的,桌面图像抓取控件作为系统服务,可以在虚拟机开机后自动运行,因此,当 监测到虚拟机开机自动运行之后,可以通过预设的桌面图像抓取控件,按照预设的时间间隔抓取经预设虚拟显卡渲染处理后的虚拟机的桌面图像数据。Further, the above-mentioned desktop image capture process is usually implemented through a desktop image capture control. As a system service, the desktop image capture control can run automatically after the virtual machine is powered on. Therefore, when it is detected that the virtual machine runs automatically after it is powered on, The desktop image data of the virtual machine that has been rendered by the preset virtual graphics card can be captured at a preset time interval through a preset desktop image capture control.
高性能虚拟显卡的驱动程序是否为开源并不影响桌面图像抓取控件执行抓取操作,因此,通过桌面图像抓取控件可以实现对预设虚拟显卡渲染处理后的虚拟机的桌面图像数据的抓取。Whether the driver of the high-performance virtual graphics card is open source does not affect the desktop image capture control to perform the capture operation. Therefore, the desktop image capture control can be used to capture the desktop image data of the virtual machine after the preset virtual graphics card rendering process. Pick.
上述预设时间间隔可以根据桌面图像数据的渲染速度、桌面图像数据显示的实时性要求等因素设置,在此不做具体限定。The aforementioned preset time interval can be set according to factors such as the rendering speed of the desktop image data, the real-time requirements of the desktop image data display, and so on, which is not specifically limited here.
步骤S106,如果监测到客户端发送的连接请求,获取数据缓冲区中存储的桌面图像数据;Step S106, if the connection request sent by the client is monitored, the desktop image data stored in the data buffer is obtained;
此时,如果服务器监测到客户端发送的连接请求,则从PCI设备中预设的数据缓冲区获取存储的桌面图像数据,以便服务器通过预设的传输服务将桌面图像数据发送至客户端。At this time, if the server detects the connection request sent by the client, it obtains the stored desktop image data from the preset data buffer in the PCI device, so that the server sends the desktop image data to the client through the preset transmission service.
其中,如果服务器监测到客户端发送的连接请求,则从PCI设备中预设的数据缓冲区获取存储的最新的桌面图像数据,以便客户端显示的桌面图像数据与虚拟机的桌面图像数据尽可能保持同步。Among them, if the server detects the connection request sent by the client, it will obtain the latest stored desktop image data from the data buffer preset in the PCI device, so that the desktop image data displayed by the client and the desktop image data of the virtual machine are as close as possible. Stay in sync.
步骤S108,将桌面图像数据发送至客户端,以使客户端显示桌面图像数据。Step S108: Send the desktop image data to the client, so that the client displays the desktop image data.
本申请实施例提供了虚拟机的桌面图像数据的传输方法,能够在虚拟机中按照预设的时间间隔抓取经预设虚拟显卡渲染处理后的虚拟机的桌面图像数据,并将桌面图像数据存储至PCI设备中预设的数据缓冲区;如果监测到客户端发送的连接请求,获取数据缓冲区中存储的桌面图像数据;将桌面图像数据发送至客户端,以使客户端显示桌面图像数据;其中,用于存储经预设虚拟显卡渲染处理后的桌面图像数据的PCI设备是预先在虚拟机中注册的,通过抓取操作可以实现对预设虚拟显卡渲染处理后的虚拟机的高分辨率桌面图像数据的获取,抓取到的桌面图像数据存储至PCI设备中预设的数据缓冲区,进而该PCI设备可以作为桌面图像数据传输服务的数据来源,因此,可以通过抓取经预设虚拟显卡渲染处理后的虚拟机的桌面图像数据以及该PCI设备实现对高性能虚拟显卡渲染的图像数据进行存储,并传输至客户端处,实现与客户端进行高分辨率桌面图像数据的传输,不仅提高了客户端的显示 效果,也提高了用户的体验度。The embodiment of the present application provides a method for transmitting desktop image data of a virtual machine, which can capture the desktop image data of the virtual machine that has been rendered by a preset virtual graphics card at a preset time interval in the virtual machine, and combine the desktop image data Stored in the data buffer preset in the PCI device; if the connection request sent by the client is monitored, obtain the desktop image data stored in the data buffer; send the desktop image data to the client so that the client can display the desktop image data ; Among them, the PCI device used to store the desktop image data after the preset virtual graphics card rendering process is pre-registered in the virtual machine, and the high resolution of the virtual machine after the preset virtual graphics card rendering process can be realized through the grab operation Rate desktop image data acquisition, the captured desktop image data is stored in the preset data buffer in the PCI device, and the PCI device can be used as the data source of the desktop image data transmission service. Therefore, the captured desktop image data can be preset The desktop image data of the virtual machine after the virtual graphics card rendering process and the PCI device realizes the storage of the image data rendered by the high-performance virtual graphics card and transmits it to the client to realize the transmission of high-resolution desktop image data with the client. It not only improves the display effect of the client, but also improves the user experience.
在一种实施方式中,本申请实施例中的虚拟机通常包括KVM(Kernel-based Virtual Machine,基于内核的虚拟机)虚拟机,该虚拟机通过预设的传输服务与客户端通信,这里传输服务为基于SPICE协议,或者VNC协议的传输服务,因此,上述使用KVM技术的虚拟机,包含其图形桌面的桌面图像数据在经过高性能虚拟显卡的渲染处理后,被预设的桌面图像抓取控件抓取到,存储于PCI设备中预设的数据缓冲区,进而可以通过SPICE等终端软件显示给用户,从而解决了相关技术中基于SPICE协议,或者VNC协议的传输服务无法直接获取高性能虚拟显卡渲染处理的图像数据的问题。而高性能虚拟显卡的VGA设备不仅可以进行2D、3D渲染,而且还提供了硬件加速,可以实现平滑字体,窗口动画等特效,大大改善用户的使用体验,当用户通过客户端显示桌面图像数据时,用户看到的图像则可以是经过硬件加速渲染的,因此使用体验有明显改善。In an implementation manner, the virtual machine in the embodiment of the present application usually includes a KVM (Kernel-based Virtual Machine, kernel-based virtual machine) virtual machine, which communicates with the client through a preset transmission service, where the transmission The service is a transmission service based on the SPICE protocol or the VNC protocol. Therefore, the desktop image data of the above-mentioned virtual machine using KVM technology, including its graphics desktop, is captured by the preset desktop image after the rendering processing of the high-performance virtual graphics card The control grabs it and stores it in the preset data buffer of the PCI device, which can then be displayed to the user through terminal software such as SPICE, thus solving the problem that the transmission service based on the SPICE protocol or the VNC protocol in related technologies cannot directly obtain high-performance virtual The problem of the image data processed by the graphics card rendering. The VGA device with high-performance virtual graphics card can not only perform 2D and 3D rendering, but also provides hardware acceleration, which can realize special effects such as smooth fonts and window animations, which greatly improves the user experience. When the user displays desktop image data through the client , The image that the user sees can be rendered through hardware acceleration, so the user experience is significantly improved.
进一步,上述PCI设备通常是在虚拟机上添加的图像缓冲设备,客户端的显示软件从该图像缓冲设备中获取到桌面图像数据之后,最终呈现给用户。因此,本申请实施例中还包括PCI设备的注册过程,在一些实施方式中,具体地,在图1的基础上,本申请实施例还提供了另一种虚拟机的桌面图像数据的发送方法的流程图,如图2所示,该方法包括以下步骤:Further, the above-mentioned PCI device is usually an image buffer device added to the virtual machine, and the display software of the client terminal obtains the desktop image data from the image buffer device, and finally presents it to the user. Therefore, the embodiment of the present application also includes the registration process of the PCI device. In some embodiments, specifically, on the basis of FIG. 1, the embodiment of the present application also provides another method for sending desktop image data of a virtual machine. As shown in Figure 2, the method includes the following steps:
步骤S202,如果监测到虚拟机的启动信号,加载PCI设备的驱动程序,以在虚拟机中注册PCI设备;Step S202, if the start signal of the virtual machine is detected, the driver of the PCI device is loaded to register the PCI device in the virtual machine;
其中,当监测到虚拟机的启动信号时,服务器加载PCI设备的驱动程序,以在虚拟机中注册PCI设备,该PCI设备主要作用是在虚拟机中提供一个足够大的设备内存,作为数据缓冲区,用来存放抓取到的桌面图像数据。Among them, when the start signal of the virtual machine is monitored, the server loads the driver of the PCI device to register the PCI device in the virtual machine. The main function of the PCI device is to provide a large enough device memory in the virtual machine as a data buffer Area, used to store the captured desktop image data.
步骤S204,划分PCI设备的内存区,并将PCI设备的内存区映射至虚拟机的操作系统中,以提供PCI设备的数据缓冲区;Step S204: Divide the memory area of the PCI device, and map the memory area of the PCI device to the operating system of the virtual machine to provide a data buffer of the PCI device;
虚拟机中注册PCI设备之后,还可以为PCI设备划分PCI设备的内存区,作为数据缓冲区,从而用来存放抓取到的桌面图像数据。当虚拟机启动后,在虚拟机内的设备信息中可以看到新添加的PCI设备;然后加载PCI设备的驱动程序,此时,PCI设备就能够被虚拟机中的操作系统识别,从而PCI设备 正常工作。这里,驱动程序的主要功能是将PCI设备的内存区映射到虚拟机的操作系统中,从而提供相应的访问机制,以便提供PCI设备的数据缓冲区。After registering the PCI device in the virtual machine, the memory area of the PCI device can also be divided for the PCI device as a data buffer to store the captured desktop image data. When the virtual machine is started, the newly added PCI device can be seen in the device information in the virtual machine; then the driver of the PCI device is loaded, at this time, the PCI device can be recognized by the operating system in the virtual machine, so that the PCI device normal work. Here, the main function of the driver is to map the memory area of the PCI device to the operating system of the virtual machine, so as to provide a corresponding access mechanism to provide the data buffer of the PCI device.
此外,数据缓冲区的大小和桌面图像数据的分辨率有关,分辨率越大,数据缓冲区也就越大,因此,本申请实施例中通过PCI设备的数据缓冲区可以实现高分辨率桌面图像数据的存储以及传输。In addition, the size of the data buffer is related to the resolution of the desktop image data. The larger the resolution, the larger the data buffer. Therefore, in this embodiment of the application, the high-resolution desktop image can be realized through the data buffer of the PCI device. Data storage and transmission.
步骤S206,在虚拟机中按照预设的时间间隔抓取经预设虚拟显卡渲染处理后的虚拟机的桌面图像数据;Step S206: Grab the desktop image data of the virtual machine that has been rendered by the preset virtual graphics card at a preset time interval in the virtual machine;
步骤S208,将桌面图像数据存储至PCI设备中预设的数据缓冲区;Step S208, storing the desktop image data in a data buffer preset in the PCI device;
步骤S210,将虚拟机中传输服务的数据来源切换至PCI设备的数据缓冲区;Step S210: Switch the data source of the transmission service in the virtual machine to the data buffer of the PCI device;
这里,虚拟机进程会启动预设的传输服务,以监听与客户端通信的端口,此时,虚拟机还会将传输服务的数据来源切换至PCI设备的数据缓冲区,即将传输服务的数据来源由基本VGA设备的缓冲区切换至PCI设备的数据缓冲区,从而实现从PCI设备的数据缓冲区获取桌面图像数据。Here, the virtual machine process will start the preset transmission service to monitor the port communicating with the client. At this time, the virtual machine will also switch the data source of the transmission service to the data buffer of the PCI device, which is the data source of the transmission service. Switch from the buffer of the basic VGA device to the data buffer of the PCI device, so as to obtain desktop image data from the data buffer of the PCI device.
步骤S212,如果监测到客户端发送的连接请求,获取数据缓冲区中存储的桌面图像数据;Step S212, if the connection request sent by the client is monitored, the desktop image data stored in the data buffer is obtained;
步骤S214,将桌面图像数据发送至客户端,以使客户端显示桌面图像数据。Step S214: Send the desktop image data to the client, so that the client displays the desktop image data.
综上,在本申请实施例中,主要包括以下过程,以实现虚拟机的桌面图像数据的传输目的:In summary, in the embodiments of the present application, the following processes are mainly included to achieve the purpose of transmitting the desktop image data of the virtual machine:
1)为虚拟机添加一个PCI设备。该设备作为图像缓冲设备,主要作用是提供一个足够大的设备内存,作为数据缓冲区,用来存放抓取到的桌面图像数据;1) Add a PCI device to the virtual machine. As an image buffer device, the main function of this device is to provide a large enough device memory as a data buffer to store the captured desktop image data;
2)在虚拟机中运行桌面图像抓取控件,实时抓取经过预设虚拟显卡渲染处理后的桌面图像数据,并通过设备驱动,将桌面图像数据存入上述PCI设备的数据缓冲区;2) Run the desktop image capture control in the virtual machine, capture the desktop image data after the preset virtual graphics card rendering processing in real time, and store the desktop image data into the data buffer of the above PCI device through the device driver;
3)修改虚拟机的传输服务的数据来源,将数据来源修改为上述已添加的PCI设备的数据缓冲区。3) Modify the data source of the transmission service of the virtual machine, and modify the data source to the data buffer of the PCI device that has been added above.
在上述实施方式的基础上,本申请实施例还提供了另一种虚拟机的桌面 图像数据的传输方法,如图3所示的另一种虚拟机的桌面图像数据的传输方法的流程图,该方法的执行主体为客户端,该客户端通过预设的传输服务与虚拟机通信,如图3所示,该方法包括以下步骤:On the basis of the foregoing embodiments, the embodiment of the present application also provides another method for transmitting desktop image data of a virtual machine, as shown in FIG. 3 is a flowchart of another method for transmitting desktop image data of a virtual machine. The execution body of the method is a client, and the client communicates with a virtual machine through a preset transmission service. As shown in FIG. 3, the method includes the following steps:
步骤S302,向虚拟机发送连接请求;Step S302, sending a connection request to the virtual machine;
其中,上述虚拟机中注册有PCI设备,PCI设备中预设的数据缓冲区中存储有经预设虚拟显卡渲染处理后的虚拟机的桌面图像数据;客户端为运行有SPICE软件,或者VNC软件的客户端。Among them, the above-mentioned virtual machine is registered with a PCI device, and the preset data buffer in the PCI device stores the desktop image data of the virtual machine after the preset virtual graphics card rendering processing; the client is running SPICE software or VNC software Client.
步骤S304,接收虚拟机发送的桌面图像数据,并将桌面图像数据通过图形用户界面进行显示。Step S304: Receive desktop image data sent by the virtual machine, and display the desktop image data through a graphical user interface.
本申请实施例提供的虚拟机的桌面图像数据的传输方法,包括:在客户端处,向虚拟机发送连接请求;其中,虚拟机中注册有PCI设备,PCI设备中预设的数据缓冲区中存储有桌面图像数据;接收虚拟机发送的桌面图像数据,并将桌面图像数据通过图形用户界面进行显示。本申请支持显卡硬件加速,可以实现高分辨率桌面图像数据的传输,从而提高了用户的体验度。The method for transmitting the desktop image data of the virtual machine provided by the embodiment of the present application includes: sending a connection request to the virtual machine at the client; wherein, the PCI device is registered in the virtual machine, and the data buffer in the PCI device is preset The desktop image data is stored; the desktop image data sent by the virtual machine is received, and the desktop image data is displayed through a graphical user interface. This application supports graphics card hardware acceleration, which can realize the transmission of high-resolution desktop image data, thereby improving user experience.
为了便于理解,在上述实施例的基础上,图4提供了一种虚拟机的桌面图像数据的传输方法的信令图,应用于服务器和客户端,其中,服务器中设置有虚拟机,虚拟机中注册有PCI设备,虚拟机通过预设的传输服务与客户端通信。如图4所示,包括以下步骤:For ease of understanding, on the basis of the above-mentioned embodiment, FIG. 4 provides a signaling diagram of a method for transmitting desktop image data of a virtual machine, which is applied to a server and a client. Among them, the server is provided with a virtual machine. PCI devices are registered in the virtual machine, and the virtual machine communicates with the client through a preset transmission service. As shown in Figure 4, it includes the following steps:
步骤S402,在虚拟机中按照预设的时间间隔抓取经预设虚拟显卡渲染处理后虚拟机的桌面图像数据,并将桌面图像数据存储至PCI设备中预设的数据缓冲区;Step S402: Grab the desktop image data of the virtual machine after rendering processing of the preset virtual graphics card in the virtual machine at a preset time interval, and store the desktop image data in a preset data buffer in the PCI device;
步骤S404,客户端向虚拟机发送连接请求;Step S404, the client sends a connection request to the virtual machine;
步骤S406,虚拟机获取数据缓冲区中存储的桌面图像数据;Step S406, the virtual machine obtains the desktop image data stored in the data buffer;
步骤S408,虚拟机将桌面图像数据发送至客户端;Step S408, the virtual machine sends the desktop image data to the client;
步骤S410,客户端将桌面图像数据通过图形用户界面进行显示。In step S410, the client terminal displays the desktop image data through a graphical user interface.
为了便于理解,这里举例说明。如图5所示,服务器中设置有虚拟机,虚拟机中注册有PCI设备,虚拟机通过预设的传输服务与客户端通信。当虚拟机启动时,虚拟机中预设的桌面图像抓取控件按照预设的时间间隔抓取虚拟机的桌面图像数据,这里桌面图像数据为经显卡即高性能显示的VGA设备 进行图像渲染之后的桌面数据;并将桌面图像数据存储至PCI设备中预设的数据缓冲区,当客户端向虚拟机发送连接请求时,虚拟机获取数据缓冲区中存储的桌面图像数据,并将桌面图像数据通过预设的传输服务发送至客户端,以使客户端显示桌面图像数据;其中,虚拟机还将传输服务的数据来源从标准VGA设备切换至PCI设备的数据缓冲区,以便于从数据缓冲区获取桌面图像数据,从而实现高分辨率桌面图像数据的传输。其中,标准VGA设备即为上述基本VGA设备。此外,这里虚拟机为KVM虚拟机,还可以持续的获取KVM技术的相关优化和改进,以及,支持硬件加速,可以实现桌面特性、运行3D绘图工具和游戏等,从而满足了用户的多种需求,提高了客户的体验度。For ease of understanding, an example is given here. As shown in Figure 5, a virtual machine is set in the server, a PCI device is registered in the virtual machine, and the virtual machine communicates with the client through a preset transmission service. When the virtual machine is started, the preset desktop image capture control in the virtual machine captures the desktop image data of the virtual machine at a preset time interval, where the desktop image data is after image rendering by the graphics card, that is, the high-performance display VGA device The desktop data; and the desktop image data is stored in the data buffer preset in the PCI device. When the client sends a connection request to the virtual machine, the virtual machine obtains the desktop image data stored in the data buffer and stores the desktop image data Send to the client through the preset transmission service, so that the client can display the desktop image data; among them, the virtual machine also switches the data source of the transmission service from the standard VGA device to the data buffer of the PCI device to facilitate the transfer from the data buffer Obtain desktop image data, so as to realize the transmission of high-resolution desktop image data. Among them, the standard VGA device is the above-mentioned basic VGA device. In addition, the virtual machine here is a KVM virtual machine, which can continue to obtain related optimizations and improvements of KVM technology, and supports hardware acceleration, which can realize desktop features, run 3D drawing tools and games, etc., thereby satisfying various needs of users , Improve the customer experience.
在上述实施例的基础上,本申请实施例还提供了一种虚拟机的桌面图像数据的传输装置,设置于服务器,其中,服务器中设置有虚拟机;虚拟机中注册有PCI设备,虚拟机通过预设的传输服务与客户端通信。图6为本申请实施例提供的一种虚拟机的桌面图像数据的传输装置的示意图,如图6所示,该装置包括:On the basis of the above-mentioned embodiment, the embodiment of the present application also provides a device for transmitting desktop image data of a virtual machine, which is set in a server, wherein the server is provided with a virtual machine; the virtual machine is registered with PCI equipment, and the virtual machine Communicate with clients through preset transmission services. FIG. 6 is a schematic diagram of a device for transmitting desktop image data of a virtual machine provided by an embodiment of the application. As shown in FIG. 6, the device includes:
抓取模块10,设置为在虚拟机中按照预设的时间间隔抓取经预设虚拟显卡渲染处理后的虚拟机的桌面图像数据;The grabbing module 10 is configured to grab the desktop image data of the virtual machine that has been rendered by the preset virtual graphics card at a preset time interval in the virtual machine;
存储模块20,设置为将桌面图像数据存储至PCI设备中预设的数据缓冲区;The storage module 20 is configured to store desktop image data in a data buffer preset in the PCI device;
获取模块30,设置为如果监测到客户端发送的连接请求,获取数据缓冲区中存储的桌面图像数据;The obtaining module 30 is configured to obtain the desktop image data stored in the data buffer if the connection request sent by the client is monitored;
第一发送模块40,设置为将桌面图像数据发送至客户端,以使客户端显示桌面图像数据。The first sending module 40 is configured to send desktop image data to the client, so that the client displays the desktop image data.
进一步的,本申请实施例还提供了另一种虚拟机的桌面图像数据的传输装置,设置于客户端,客户端通过预设的传输服务与虚拟机通信。图7为本申请实施例提供的另一种虚拟机的桌面图像数据的传输装置的示意图,如图7所示,该装置包括:Further, the embodiment of the present application also provides another device for transmitting desktop image data of a virtual machine, which is set in a client, and the client communicates with the virtual machine through a preset transmission service. FIG. 7 is a schematic diagram of another device for transmitting desktop image data of a virtual machine provided by an embodiment of the application. As shown in FIG. 7, the device includes:
第二发送模块50,设置为向虚拟机发送连接请求;其中,虚拟机中注册有PCI设备,PCI设备中预设的数据缓冲区中存储有经预设虚拟显卡渲染处理后的虚拟机的桌面图像数据;The second sending module 50 is configured to send a connection request to a virtual machine; wherein, a PCI device is registered in the virtual machine, and a preset data buffer in the PCI device stores the desktop of the virtual machine that has been rendered by a preset virtual graphics card Image data
接收模块60,设置为接收虚拟机发送的桌面图像数据,并将桌面图像数据通过图形用户界面进行显示。The receiving module 60 is configured to receive desktop image data sent by the virtual machine, and display the desktop image data through a graphical user interface.
本申请实施例提供的虚拟机的桌面图像数据的传输装置,能够在虚拟机中按照预设的时间间隔抓取经预设虚拟显卡渲染处理后的虚拟机的桌面图像数据,并将桌面图像数据存储至PCI设备中预设的数据缓冲区;如果监测到客户端发送的连接请求,获取数据缓冲区中存储的桌面图像数据;将桌面图像数据发送至客户端,以使客户端显示桌面图像数据;其中,用于存储经预设虚拟显卡渲染处理后的桌面图像数据的PCI设备是预先在虚拟机中注册的,通过抓取操作可以实现对预设虚拟显卡渲染处理后的虚拟机的高分辨率桌面图像数据的获取,抓取到的桌面图像数据存储至PCI设备中预设的数据缓冲区,进而该PCI设备可以作为桌面图像数据传输服务的数据来源,因此,可以通过抓取经预设虚拟显卡渲染处理后的虚拟机的桌面图像数据以及该PCI设备实现对高性能虚拟显卡渲染的图像数据进行存储,并传输至客户端处,实现与客户端进行高分辨率桌面图像数据的传输,不仅提高了客户端的显示效果,也提高了用户的体验度。The device for transmitting the desktop image data of the virtual machine provided by the embodiment of the present application can capture the desktop image data of the virtual machine that has been rendered by the preset virtual graphics card at a preset time interval in the virtual machine, and combine the desktop image data Stored in the data buffer preset in the PCI device; if the connection request sent by the client is monitored, obtain the desktop image data stored in the data buffer; send the desktop image data to the client so that the client can display the desktop image data ; Among them, the PCI device used to store the desktop image data after the preset virtual graphics card rendering process is pre-registered in the virtual machine, and the high resolution of the virtual machine after the preset virtual graphics card rendering process can be realized through the grab operation Rate desktop image data acquisition, the captured desktop image data is stored in the preset data buffer in the PCI device, and the PCI device can be used as the data source of the desktop image data transmission service. Therefore, the captured desktop image data can be preset The desktop image data of the virtual machine after the virtual graphics card rendering process and the PCI device realizes the storage of the image data rendered by the high-performance virtual graphics card and transmits it to the client to realize the transmission of high-resolution desktop image data with the client. It not only improves the display effect of the client, but also improves the user experience.
本申请实施例还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述实施例提供的虚拟机的桌面图像数据的传输方法的步骤。An embodiment of the present application also provides an electronic device, including a memory, a processor, and a computer program stored on the memory and capable of running on the processor. The processor executes the computer program to implement the desktop image data of the virtual machine provided in the above embodiment. The steps of the transmission method.
本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器运行时执行上述实施例的虚拟机的桌面图像数据的传输方法的步骤。The embodiments of the present application also provide a computer-readable storage medium on which a computer program is stored. When the computer program is run by a processor, the steps of the method for transmitting the desktop image data of the virtual machine in the above-mentioned embodiment are executed.
本申请实施例所提供的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。The computer program product provided by the embodiment of the present application includes a computer-readable storage medium storing program code. The instructions included in the program code can be used to execute the method described in the previous method embodiment. For specific implementation, please refer to the method embodiment , I won’t repeat it here.
工业实用性:Industrial applicability:
本申请实施例提供了虚拟机的桌面图像数据的传输方法和装置及电子设备,能够在虚拟机中按照预设的时间间隔抓取经预设虚拟显卡渲染处理后的虚拟机的桌面图像数据,并将桌面图像数据存储至PCI设备中预设的数据缓冲区;如果监测到客户端发送的连接请求,获取数据缓冲区中存储的桌面图 像数据;将桌面图像数据发送至客户端,以使客户端显示桌面图像数据;其中,用于存储经预设虚拟显卡渲染处理后的桌面图像数据的PCI设备是预先在虚拟机中注册的,通过抓取操作可以实现对预设虚拟显卡渲染处理后的虚拟机的高分辨率桌面图像数据的获取,抓取到的桌面图像数据存储至PCI设备中预设的数据缓冲区,进而该PCI设备可以作为桌面图像数据传输服务的数据来源,因此,可以通过抓取经预设虚拟显卡渲染处理后的虚拟机的桌面图像数据以及该PCI设备实现对高性能虚拟显卡渲染的图像数据进行存储,并传输至客户端处,实现与客户端进行高分辨率桌面图像数据的传输,不仅提高了客户端的显示效果,也提高了用户的体验度。The embodiments of the present application provide a method and device for transmitting desktop image data of a virtual machine, and electronic equipment, which can capture the desktop image data of the virtual machine that has been rendered by a preset virtual graphics card at a preset time interval in the virtual machine. The desktop image data is stored in the data buffer preset in the PCI device; if the connection request sent by the client is monitored, the desktop image data stored in the data buffer is obtained; the desktop image data is sent to the client so that the client The desktop image data is displayed on the end; among them, the PCI device used to store the desktop image data after the preset virtual graphics card rendering process is pre-registered in the virtual machine, and the preset virtual graphics card rendering process can be realized through the grab operation. The high-resolution desktop image data of the virtual machine is acquired, and the captured desktop image data is stored in the preset data buffer in the PCI device, and the PCI device can be used as the data source of the desktop image data transmission service. Grab the desktop image data of the virtual machine rendered by the preset virtual graphics card and the PCI device realizes the storage of the image data rendered by the high-performance virtual graphics card, and transmits it to the client to realize high-resolution desktops with the client The transmission of image data not only improves the display effect of the client, but also improves the user experience.
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。Those skilled in the art can clearly understand that, for the convenience and conciseness of the description, the specific working process of the device described above can refer to the corresponding process in the foregoing method embodiment, which will not be repeated here.
另外,在本申请实施例的描述中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本申请中的具体含义。In addition, in the description of the embodiments of the present application, unless otherwise clearly specified and limited, the terms "installation", "connection", and "connection" should be understood in a broad sense, for example, it may be a fixed connection or a detachable connection. , Or integrally connected; it can be a mechanical connection or an electrical connection; it can be directly connected or indirectly connected through an intermediate medium, and it can be the internal communication between two components. For those of ordinary skill in the art, the specific meaning of the above-mentioned terms in this application can be understood under specific circumstances.
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对相关技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。If the function is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a non-volatile computer readable storage medium executable by a processor. Based on this understanding, the technical solution of this application essentially or the part that contributes to the related technology or the part of the technical solution can be embodied in the form of a software product. The computer software product is stored in a storage medium, including several The instructions are used to make a computer device (which may be a personal computer, a server, or a network device, etc.) execute all or part of the steps of the methods described in the various embodiments of the present application. The aforementioned storage media include: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), magnetic disks or optical disks and other media that can store program codes. .
在本申请的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图 所示的方位或位置关系,仅是为了便于描述本申请和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本申请的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。In the description of this application, it should be noted that the terms "center", "upper", "lower", "left", "right", "vertical", "horizontal", "inner", "outer", etc. The indicated orientation or positional relationship is based on the orientation or positional relationship shown in the drawings, and is only for the convenience of describing the application and simplifying the description, and does not indicate or imply that the pointed device or element must have a specific orientation or a specific orientation. The structure and operation cannot therefore be understood as a limitation of this application. In addition, the terms "first", "second", and "third" are only used for descriptive purposes, and cannot be understood as indicating or implying relative importance.
最后应说明的是:以上所述实施例,仅为本申请的具体实施方式,用以说明本申请的技术方案,而非对其限制,本申请的保护范围并不局限于此,尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本申请实施例技术方案的精神和范围,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。Finally, it should be noted that the above-mentioned embodiments are only specific implementations of this application, which are used to illustrate the technical solution of this application, rather than limit it. The scope of protection of this application is not limited to this, although referring to the foregoing The embodiments describe the application in detail, and those of ordinary skill in the art should understand that any person skilled in the art can still modify the technical solutions described in the foregoing embodiments within the technical scope disclosed in this application. Or it can be easily conceived of changes, or equivalent replacements of some of the technical features; and these modifications, changes or replacements do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of this application, and should be covered in this application Within the scope of protection. Therefore, the protection scope of this application shall be subject to the protection scope of the claims.
以上所述仅为本申请的较佳实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。The above are only preferred embodiments of this application, and are not intended to limit this application. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of this application shall be included in the protection of this application. Within the range.

Claims (12)

  1. 一种虚拟机的桌面图像数据的传输方法,虚拟机中注册有PCI设备,所述虚拟机通过预设的传输服务与客户端通信,所述方法包括:A method for transmitting desktop image data of a virtual machine, a PCI device is registered in the virtual machine, and the virtual machine communicates with a client through a preset transmission service, and the method includes:
    在所述虚拟机中按照预设的时间间隔抓取经预设虚拟显卡渲染处理后的所述虚拟机的桌面图像数据;Capturing, in the virtual machine, the desktop image data of the virtual machine that has been rendered by a preset virtual graphics card at a preset time interval;
    将所述桌面图像数据存储至所述PCI设备中预设的数据缓冲区;Storing the desktop image data in a data buffer preset in the PCI device;
    如果监测到所述客户端发送的连接请求,获取所述数据缓冲区中存储的所述桌面图像数据;If the connection request sent by the client is monitored, acquiring the desktop image data stored in the data buffer;
    将所述桌面图像数据发送至所述客户端,以使所述客户端显示所述桌面图像数据。The desktop image data is sent to the client, so that the client displays the desktop image data.
  2. 根据权利要求1所述的虚拟机的桌面图像数据的传输方法,其中,所述方法还包括:The method for transmitting desktop image data of a virtual machine according to claim 1, wherein the method further comprises:
    如果监测到所述虚拟机的启动信号,加载所述PCI设备的驱动程序,以在所述虚拟机中注册所述PCI设备;以及,If the start signal of the virtual machine is detected, load the driver of the PCI device to register the PCI device in the virtual machine; and,
    划分所述PCI设备的内存区,并将所述PCI设备的内存区映射至所述虚拟机的操作系统中,以提供所述PCI设备的数据缓冲区。The memory area of the PCI device is divided, and the memory area of the PCI device is mapped to the operating system of the virtual machine to provide a data buffer area of the PCI device.
  3. 根据权利要求2所述的虚拟机的桌面图像数据的传输方法,其中,在所述将所述PCI设备的内存区映射至所述虚拟机的操作系统中的步骤之后,所述方法还包括:The method for transmitting desktop image data of a virtual machine according to claim 2, wherein, after the step of mapping the memory area of the PCI device to the operating system of the virtual machine, the method further comprises:
    将所述虚拟机中所述传输服务的数据来源切换至所述PCI设备的数据缓冲区,以便于从所述数据缓冲区获取所述桌面图像数据。The data source of the transmission service in the virtual machine is switched to the data buffer of the PCI device, so as to obtain the desktop image data from the data buffer.
  4. 根据权利要求1所述的虚拟机的桌面图像数据的传输方法,其中,所述虚拟机中按照预设的时间间隔抓取经预设虚拟显卡渲染处理后的所述虚拟机的桌面图像数据的步骤包括:The method for transmitting desktop image data of a virtual machine according to claim 1, wherein the virtual machine captures the desktop image data of the virtual machine after a preset virtual graphics card rendering process according to a preset time interval. The steps include:
    当监测到所述虚拟机开机自动运行之后,通过预设的桌面图像抓取控件按照预设的时间间隔抓取经预设虚拟显卡渲染处理后的所述虚拟机的桌面图像数据。When it is detected that the virtual machine starts to run automatically, the desktop image data of the virtual machine that has been rendered by the preset virtual graphics card is captured at a preset time interval through a preset desktop image capture control.
  5. 根据权利要求1~4任一项所述的虚拟机的桌面图像数据的传输方法,其中,所述虚拟机为KVM虚拟机。The method for transmitting desktop image data of a virtual machine according to any one of claims 1 to 4, wherein the virtual machine is a KVM virtual machine.
  6. 根据权利要求1~4任一项所述的虚拟机的桌面图像数据的传输方法,其中,所述传输服务为基于SPICE协议,或者VNC协议的传输服务。The method for transmitting desktop image data of a virtual machine according to any one of claims 1 to 4, wherein the transmission service is a transmission service based on the SPICE protocol or the VNC protocol.
  7. 一种虚拟机的桌面图像数据的传输方法,应用于客户端,所述客户端通过预设的传输服务与虚拟机通信,所述方法包括:A method for transmitting desktop image data of a virtual machine is applied to a client, and the client communicates with the virtual machine through a preset transmission service. The method includes:
    向所述虚拟机发送连接请求;其中,所述虚拟机中注册有PCI设备,所述PCI设备中预设的数据缓冲区中存储有经预设虚拟显卡渲染处理后的所述虚拟机的桌面图像数据;Send a connection request to the virtual machine; wherein a PCI device is registered in the virtual machine, and a preset data buffer in the PCI device stores a desktop of the virtual machine that has been rendered by a preset virtual graphics card Image data
    接收所述虚拟机发送的所述桌面图像数据,并将所述桌面图像数据通过图形用户界面进行显示。Receiving the desktop image data sent by the virtual machine, and displaying the desktop image data through a graphical user interface.
  8. 根据权利要求7所述的虚拟机的桌面图像数据的传输方法,其中,所述客户端为运行有SPICE软件,或者VNC软件的客户端。The method for transmitting desktop image data of a virtual machine according to claim 7, wherein the client is a client running SPICE software or VNC software.
  9. 一种虚拟机的桌面图像数据的传输装置,虚拟机中注册有PCI设备,所述虚拟机通过预设的传输服务与客户端通信,所述装置包括:A device for transmitting desktop image data of a virtual machine, a PCI device is registered in the virtual machine, and the virtual machine communicates with a client through a preset transmission service, and the device includes:
    抓取模块,设置为在所述虚拟机中按照预设的时间间隔抓取经预设虚拟显卡渲染处理后的所述虚拟机的桌面图像数据;A grabbing module, configured to grab the desktop image data of the virtual machine that has been rendered by a preset virtual graphics card at a preset time interval in the virtual machine;
    存储模块,设置为将所述桌面图像数据存储至所述PCI设备中预设的数据缓冲区;A storage module, configured to store the desktop image data in a data buffer preset in the PCI device;
    获取模块,设置为如果监测到所述客户端发送的连接请求,获取所述数据缓冲区中存储的所述桌面图像数据;An obtaining module, configured to obtain the desktop image data stored in the data buffer if the connection request sent by the client is monitored;
    第一发送模块,设置为将所述桌面图像数据发送至所述客户端,以使所述客户端显示所述桌面图像数据。The first sending module is configured to send the desktop image data to the client, so that the client displays the desktop image data.
  10. 一种虚拟机的桌面图像数据的传输装置,设置于客户端,所述客户端通过预设的传输服务与虚拟机通信,所述装置包括:A device for transmitting desktop image data of a virtual machine is provided in a client, and the client communicates with the virtual machine through a preset transmission service, and the device includes:
    第二发送模块,设置为向所述虚拟机发送连接请求;其中,所述虚拟机中注册有PCI设备,所述PCI设备中预设的数据缓冲区中存储有经预设虚拟显卡渲染处理后的所述虚拟机的桌面图像数据;The second sending module is configured to send a connection request to the virtual machine; wherein, a PCI device is registered in the virtual machine, and a preset data buffer in the PCI device stores a preset virtual graphics card rendering process Desktop image data of the virtual machine;
    接收模块,设置为接收所述虚拟机发送的所述桌面图像数据,并将所述桌面图像数据通过图形用户界面进行显示。The receiving module is configured to receive the desktop image data sent by the virtual machine, and display the desktop image data through a graphical user interface.
  11. 一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所 述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述权利要求1~6或7~8任一项所述的虚拟机的桌面图像数据的传输方法的步骤。An electronic device, comprising a memory, a processor, and a computer program stored on the memory and capable of running on the processor. The processor implements the above claims 1 to 6 or 7 when the computer program is executed. 8. Steps of any one of the methods for transmitting desktop image data of a virtual machine.
  12. 一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行上述权利要求1~6或7~8任一项所述的虚拟机的桌面图像数据的传输方法的步骤。A computer-readable storage medium having a computer program stored on the computer-readable storage medium, and when the computer program is run by a processor, the virtual machine according to any one of claims 1 to 6 or 7 to 8 is executed. The steps of the desktop image data transfer method.
PCT/CN2021/092709 2020-05-14 2021-05-10 Method and apparatus for transmitting desktop image data of virtual machine, and electronic device WO2021228032A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202010410975.7A CN113672318A (en) 2020-05-14 2020-05-14 Method and device for transmitting desktop image data of virtual machine and electronic equipment
CN202010410975.7 2020-05-14

Publications (1)

Publication Number Publication Date
WO2021228032A1 true WO2021228032A1 (en) 2021-11-18

Family

ID=78525284

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2021/092709 WO2021228032A1 (en) 2020-05-14 2021-05-10 Method and apparatus for transmitting desktop image data of virtual machine, and electronic device

Country Status (2)

Country Link
CN (1) CN113672318A (en)
WO (1) WO2021228032A1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114296877A (en) * 2021-12-28 2022-04-08 上海贝锐信息科技股份有限公司 Method, device and storage medium for realizing image display and transmission without display
CN114327722A (en) * 2021-12-28 2022-04-12 武汉噢易云计算股份有限公司 Mobile terminal performance optimization method, device, equipment and readable storage medium
CN115865908A (en) * 2022-12-05 2023-03-28 北京火山引擎科技有限公司 Remote desktop system startup control method and related equipment
WO2023179348A1 (en) * 2022-03-23 2023-09-28 中兴通讯股份有限公司 Data transmission method, cloud desktop virtual machine, cloud terminal, and readable storage medium

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114253648B (en) * 2021-12-24 2024-02-09 武汉噢易云计算股份有限公司 Remote application virtualization method and device
CN114253649B (en) * 2021-12-24 2024-04-09 武汉噢易云计算股份有限公司 Image rendering method, device, equipment and readable storage medium
CN114675914B (en) * 2022-02-11 2024-04-09 深信服科技股份有限公司 Image transmission method and device of virtual desktop, electronic equipment and storage medium
CN118748731B (en) * 2024-07-29 2025-01-28 四川广信天下传媒有限责任公司 Adaptive display method and display system for outdoor large screens

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103139634A (en) * 2011-11-30 2013-06-05 国云科技股份有限公司 Cloud terminal virtual desktop video playing method
CN104660687A (en) * 2015-02-02 2015-05-27 上海视聪网络信息技术有限公司 Realization method and system for virtual desktop display
KR20150069821A (en) * 2013-12-16 2015-06-24 아주대학교산학협력단 Multi-pc system based on virtual desktop technology

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9547513B2 (en) * 2015-06-17 2017-01-17 VNware, Inc. Provisioning virtual desktops with stub virtual disks
CN106873927A (en) * 2015-12-11 2017-06-20 成都长天信息技术有限公司 A kind of long-range three-dimensional desktop image transfer method based on KVM platforms
CN107145340B (en) * 2017-03-22 2020-10-27 深信服科技股份有限公司 Virtual desktop image transmission method and device

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103139634A (en) * 2011-11-30 2013-06-05 国云科技股份有限公司 Cloud terminal virtual desktop video playing method
KR20150069821A (en) * 2013-12-16 2015-06-24 아주대학교산학협력단 Multi-pc system based on virtual desktop technology
CN104660687A (en) * 2015-02-02 2015-05-27 上海视聪网络信息技术有限公司 Realization method and system for virtual desktop display

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114296877A (en) * 2021-12-28 2022-04-08 上海贝锐信息科技股份有限公司 Method, device and storage medium for realizing image display and transmission without display
CN114327722A (en) * 2021-12-28 2022-04-12 武汉噢易云计算股份有限公司 Mobile terminal performance optimization method, device, equipment and readable storage medium
WO2023179348A1 (en) * 2022-03-23 2023-09-28 中兴通讯股份有限公司 Data transmission method, cloud desktop virtual machine, cloud terminal, and readable storage medium
CN115865908A (en) * 2022-12-05 2023-03-28 北京火山引擎科技有限公司 Remote desktop system startup control method and related equipment

Also Published As

Publication number Publication date
CN113672318A (en) 2021-11-19

Similar Documents

Publication Publication Date Title
WO2021228032A1 (en) Method and apparatus for transmitting desktop image data of virtual machine, and electronic device
CN103460670B (en) Method and system for conducting a remote desktop session using an HTTP handler and a remote desktop client common interface
EP2649532B1 (en) Methods and systems for remote desktop session redrawing via http headers
CN103430123B (en) For carrying out the method and system of remote desktop session via HTML
CN103701807B (en) Data transmission method for uplink under a kind of VDI environment and device
US10237327B2 (en) Methods and systems for accessing and controlling a remote desktop of a remote machine in real time by a web browser at a client device via HTTP API utilizing a transcoding server
EP2248101B1 (en) Graphics remoting architecture
EP2649533B1 (en) Methods and systems for facilitating a remote desktop session utilizing long polling
US8762544B2 (en) Selectively communicating data of a peripheral device to plural sending computers
US11017013B2 (en) Image cache collaboration between clients in remote desktop environments
US10062141B2 (en) Server-based fast remote display on client devices
CA2920050C (en) Image display method and apparatus
CN113254130B (en) Method for adaptively adjusting resolution of cloud desktop
EP2905945A1 (en) Inter-terminal image sharing method, terminal device and communication system
US20120235924A1 (en) Display systems, methods, and apparatus
CN108897596A (en) A kind of graphical interfaces transmission method and device
US20140297718A1 (en) Apparatus and method for transmitting image of multi-user
US20150186095A1 (en) Inter-terminal image sharing method, terminal device, and communications system
CN119127374A (en) Image rendering method based on SPICE protocol and virtual GPU
TW201005546A (en) System and method for using virtual IP addresses in a multi-user server system
CN113965640B (en) Message processing method and device
CN116366521A (en) Flow table rule statistics method and device for data packet of network card
CN113726872A (en) Method, device, equipment and medium for filtering promotion information
CN112612980B (en) Picture service method, apparatus, device, storage medium and computer program product
CN113114737B (en) Information sending method and device and server

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21802915

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21802915

Country of ref document: EP

Kind code of ref document: A1