WO2022068671A1 - 云桌面的显示方法和系统 - Google Patents
云桌面的显示方法和系统 Download PDFInfo
- Publication number
- WO2022068671A1 WO2022068671A1 PCT/CN2021/119951 CN2021119951W WO2022068671A1 WO 2022068671 A1 WO2022068671 A1 WO 2022068671A1 CN 2021119951 W CN2021119951 W CN 2021119951W WO 2022068671 A1 WO2022068671 A1 WO 2022068671A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- cloud desktop
- client
- graphics card
- virtual machine
- virtual
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 111
- 238000012545 processing Methods 0.000 claims abstract description 26
- 230000008569 process Effects 0.000 claims description 16
- 238000004590 computer program Methods 0.000 claims description 14
- 230000000875 corresponding effect Effects 0.000 description 8
- 238000009877 rendering Methods 0.000 description 7
- 230000008859 change Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000013024 troubleshooting Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
- G06F9/452—Remote windowing, e.g. X-Window System, desktop virtualisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45579—I/O management, e.g. providing access to device drivers or storage
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45595—Network integration; Enabling network access in virtual machine instances
Definitions
- the embodiments of the present application relate to the field of communications, and in particular, to a method and system for displaying a cloud desktop.
- the basic principle of cloud desktop is to virtualize the desktop of the computer through virtualization technology, so that any device can access the Our personal desktop system on the network, the remote terminal device and the server perform desktop graphics transmission through the remote desktop protocol.
- common cloud desktop connection methods and usage scenarios include the following: Scenario 1: User Connect directly to the desktop to use the cloud desktop.
- Scenario 2 The user connects to the cloud desktop through the host where the virtualization is located.
- Scenario 3 There is an abnormality in the direct connection to the cloud desktop, and the direct connection mode cannot work. It is used when the user directly connects to the cloud desktop, completes desktop rendering and provides desktop images to remote users. The other graphics card is used when the administrator handles the fault when the virtual desktop fails or when the user connects to the cloud desktop through the host, depending on the usage scenario.
- Activating different graphics cards; using two virtual graphics cards to deal with different scenarios there are disadvantages of slow graphics card switching or failure of graphics card switching, occupying a lot of system resources, increasing system complexity, and a large amount of code and difficult to maintain.
- the embodiments of the present application provide a method and system for displaying a cloud desktop, so as to at least to a certain extent solve the problem of slow switching or graphics card switching failure in the process of realizing cloud desktop display by multiple virtual graphics cards in some cases, and occupying The problem of a lot of system resources.
- a method for displaying a cloud desktop includes: using a virtual machine platform to create a virtual graphics card for a virtual machine, wherein the virtual graphics card uses a display driver on the virtual machine Drive; obtain the connection mode of the client connecting to the cloud desktop through the display driver, and drive the virtual graphics card to perform display processing on the cloud desktop according to the connection mode, so as to display the processed desktop on the client
- the connection method includes at least one of the following: a method in which the client directly connects to the cloud desktop, or a connection method in which the client connects to the cloud desktop through a cloud desktop host.
- a cloud desktop display system including: a virtual machine platform, and a virtual machine, wherein the virtual machine platform is configured to create a virtual graphics card for the virtual machine, Wherein, the virtual graphics card is driven by a display driver on the virtual machine; the virtual machine is also set to obtain the connection method of the client connecting to the cloud desktop through the display driver, and according to the connection method Drive the virtual graphics card to perform display processing on the cloud desktop according to the connection mode, so as to display the processed cloud desktop on the client, the connection mode includes at least one of the following: a mode in which the client is directly connected to the cloud desktop , or a connection method in which the client connects to the cloud desktop through the cloud desktop host.
- a computer-readable storage medium is also provided, and a computer program is stored in the computer-readable storage medium, wherein the computer program is configured to execute any one of the above methods when running steps in the examples.
- an electronic device comprising a memory and a processor, wherein the memory stores a computer program, and the processor is configured to run the computer program to execute any one of the above Steps in Method Examples.
- FIG. 1 is a flowchart of a method for displaying a cloud desktop according to an embodiment of the present application
- FIG. 2 is a flowchart of a display method when a client is directly connected to a cloud desktop according to an embodiment of the present application
- FIG. 3 is a flowchart of a display method when a client is connected to a cloud desktop through a cloud desktop host according to an embodiment of the present application
- FIG. 4 is a flowchart of a method for processing when a client directly connects to a cloud desktop and fails according to an embodiment of the present application
- FIG. 5 is a work flow diagram of a virtual graphics card receiving an instruction sent by a virtual machine platform according to an embodiment of the present application
- FIG. 6 is a work flow diagram of a virtual graphics card when the client directly connects to the cloud desktop and fails according to an embodiment of the present application
- FIG. 7 is a schematic structural diagram of a display system of a cloud desktop according to an embodiment of the present application.
- FIG. 8 is a structural block diagram of a display system of a cloud desktop according to an embodiment of the present application.
- the solutions provided by the embodiments of the present application relate to a virtual graphics card technology in the field of virtualized cloud desktops.
- cloud desktops the cloud desktops described in this application run as virtual machines, and virtual machines can also be used to represent cloud desktops.
- Commonly used cloud desktop connection methods and usage scenarios include: : Scenario 1: The user uses the cloud desktop by connecting to the IP address of the cloud desktop itself; Scenario 2: The user connects to the cloud desktop through the IP address of the backend server where the cloud desktop is located (hereinafter referred to as the cloud desktop host); Scenario 3: Connect directly through the network The cloud desktop is abnormal, and the direct connection mode cannot work. You need to locate and troubleshoot the fault by connecting to the cloud desktop host.
- the network architecture includes: a virtual machine and a virtual machine platform.
- the virtual machine is used to create a virtual machine for a graphics card driver through a virtual driver.
- a graphics card wherein the virtual graphics card is driven by a display driver on the virtual machine; it is also used to obtain a connection mode of the client connecting to the cloud desktop through the display driver, and drive the virtual graphics card according to the connection mode according to the The connection mode performs display processing on the cloud desktop to display the processed cloud desktop on the client.
- the embodiment of the present application provides a method for displaying a cloud desktop running on the above-mentioned virtual machine, using one virtual graphics card to handle the different usage scenarios described above; avoiding technical defects caused by repeated switching of multiple virtual graphics cards.
- this embodiment uses a virtualization platform to virtualize a graphics card for the virtual machine, and the graphics card driver inside the virtual machine drives the virtual graphics card to provide desktop images for different scenarios at the same time.
- the specific implementation method is as follows:
- Step S110 using the virtual machine platform to create a virtual graphics card for the virtual machine, wherein the virtual graphics card is driven by a display driver on the virtual machine;
- the virtual machine platform can create a virtual graphics card for the virtual machine, drive it through the display driver on the virtual machine, and provide the relevant hardware information of the virtual graphics card to the cloud desktop operating system, so that the cloud desktop operating system can access the cloud desktop operating system.
- the virtual graphics card is recognized as a physical display adapter.
- the virtual graphics card can use physical hardware such as computer CPU or server to perform corresponding graphics processing work, and provide the processed data to the cloud desktop operating system, and then store the processed data in the virtual system.
- the storage space such as the video memory of the graphics card or the main memory of the virtual machine, it can be read by the cloud desktop operating system or other connected systems.
- Step S120 Obtain the connection method of the client connecting to the cloud desktop through the display driver, and drive the virtual graphics card to perform display processing on the cloud desktop according to the connection method, so as to display the processed desktop on the client.
- the connection method includes at least one of the following: a method in which the client directly connects to the cloud desktop, or a connection method in which the client connects to the cloud desktop through a cloud desktop host.
- the connection method of the client connecting to the cloud desktop can be obtained through the graphics card driver on the virtual machine that drives the virtual graphics card, thereby distinguishing the client directly connected to the cloud desktop. and the client connects to the cloud desktop through the cloud desktop host, and then drives the virtual graphics card to display and process the cloud desktop according to the connection method according to the obtained connection method, so as to display the processed cloud desktop on the client. Therefore, at least to a certain extent, the problem of slow switching or graphics card switching failure and occupying a lot of system resources can be solved in the process of realizing cloud desktop display with multiple virtual graphics cards in some cases, so as to avoid increasing system resource occupation. Under the premise of system complexity, it avoids the problem of graphics card switching and improves the display processing speed of the cloud desktop.
- step S120 the virtual machine platform receives the cloud desktop request of the cloud desktop operating system, forwards the request to the virtual graphics card, and then identifies the client directly connected to the cloud desktop operating system according to the input and output control interface of the virtual graphics card, or the client
- the client connects to the cloud desktop through the cloud desktop host, and then processes the image information of the cloud desktop system based on the connection method and returns it to the client. Since only one virtual graphics card is needed, there is no graphics card switching problem, but the output to the host is increased when needed.
- connection method of the client connecting to the cloud desktop is obtained through the display driver, wherein the connection method may include: receiving, at the display driver, an instruction sent by the input and output control interface of the virtual graphics card In the case of information, it is determined that the client uses a connection method directly connected to the cloud desktop; in the case that the display driver receives the target mouse instruction sent by the cloud desktop host, it is determined that the client uses It is the connection method of connecting the cloud desktop through the cloud desktop host.
- the virtual graphics card recognizes that the connection method of the client is directly connected to the cloud desktop through the input and output control interface.
- Output desktop images and other information only provide images for the client, and at the same time inform the host-side program that the client-side program is currently in a connection mode where the client-side directly connects to the cloud desktop, and the host-side program does not work.
- the target mouse instruction can be constructed and then sent to the graphics card driver in the cloud desktop operating system, and the display driver receives the cloud desktop host. In the case of the target mouse instruction sent, it is determined that the client uses a connection method of connecting to the cloud desktop through the cloud desktop host, and the host-side program will periodically request the cloud desktop for image information of the cloud desktop.
- the method further includes: when the client is directly connected to the cloud desktop, and the cloud desktop occurs In the case of failure, it is detected whether there is a target object connected to the cloud desktop through the cloud desktop host.
- the method further includes: when detecting that there is a target object connected to the cloud desktop through the cloud desktop host, using The display driver drives the virtual graphics card to perform display processing on the cloud desktop, so as to display the processed cloud desktop on the client, and the target object handles the fault according to the processed cloud desktop.
- driving the virtual graphics card to perform display processing on the cloud desktop according to the connection method includes: when the client adopts a connection method of directly connecting with the cloud desktop Next, drive the virtual graphics card to render the image of the cloud desktop to be displayed, and output the rendered image to the memory of the virtual machine, so that the virtual machine can render the rendered image from the memory.
- the image is encoded, and the encoded image is sent to the client.
- driving the virtual graphics card to perform display processing on the cloud desktop according to the connection method according to the connection method includes: when the client connects to the cloud desktop through a cloud desktop host, driving the virtual graphics card to render the image of the cloud desktop to be displayed, and outputting the rendered image to the memory of the virtual machine, so that the cloud desktop host can render the rendered image from the memory Encoding is performed, and the encoded image is sent to the client.
- Step S210 determine that the client adopts a connection mode of directly connecting with the cloud desktop
- Step S220 Notifying the virtual graphics card to switch the working mode, and after the switching, the working mode of the virtual graphics card is the working mode corresponding to the client's direct connection with the cloud desktop;
- Step S230 driving the virtual graphics card to render the image of the cloud desktop to be displayed; then outputting the rendered image to the memory of the virtual machine;
- Step S240 the virtual machine encodes the rendered image from the memory
- Step S250 Send the encoded image package to the client.
- the image information of the image of the cloud desktop is obtained.
- the information such as the changed area is output to the shared memory of the virtual machine (equivalent to the memory of the virtual machine in the above-mentioned embodiment), and then the cloud desktop operating system reads the image information from the shared memory for encoding.
- the remote desktop protocol is encapsulated and sent to the client (equivalent to the client in the above embodiment) for the user to use. Repeating steps S210 to S250 can complete the work by directly connecting the client to the cloud desktop.
- Step S310 the graphics card driver determines that the client uses a connection method of connecting to the cloud desktop through the cloud desktop host;
- Step S320 the cloud desktop host notifies the virtual graphics card to switch the working mode, and the working mode of the virtual graphics card after the switching is the working mode corresponding to the connection between the client and the cloud desktop through the cloud desktop host;
- Step S330 the cloud desktop host notifies the graphics card driver to output the image of the cloud desktop to the cloud desktop host;
- Step S340 the virtual machine drives the virtual graphics card to render the image of the cloud desktop to be displayed; then outputs the rendered image to the memory of the virtual machine; and the cloud desktop host reads the image from the memory The rendered image, that is, the graphics card driver outputs the rendered image to the cloud desktop host;
- Step S350 the host protocol program in the cloud desktop host encodes the rendered image
- Step S360 Send the encoded image package to the client.
- the image information of the image of the cloud desktop is obtained.
- the host will periodically read the image information from the video memory of the virtual graphics card, that is, the cloud desktop image and the changing area of the image.
- the time is determined based on the preset refresh rate, and is encoded by the host side;
- the package is packaged and sent to the client, and steps S310 to S330 are repeated, and the client can connect to the cloud desktop through the cloud desktop host to complete the work.
- the client adopts a connection mode of directly connecting with the cloud desktop, and the cloud desktop fails, it is detected whether there is a target object connected to the cloud desktop through the cloud desktop host.
- Step S410 determine that the client adopts a connection mode of directly connecting with the cloud desktop
- Step S420 when the cloud desktop cannot be used normally, the client reports
- Step S430 the client connects to the cloud desktop through the cloud desktop host
- Step S440 The graphics card driver determines that the client uses a connection method of connecting to the cloud desktop through the cloud desktop host, and the cloud desktop host notifies the virtual graphics card to switch the working mode. After the switching, the working mode of the virtual graphics card is that the client connects to the cloud desktop through the cloud desktop host. The working mode corresponding to the desktop connection;
- Step S450 The cloud desktop host notifies the graphics card driver to output the image of the cloud desktop to the cloud desktop host; the virtual machine drives the virtual graphics card to render the image of the cloud desktop to be displayed; and then outputs the rendered image to the virtual machine.
- the cloud desktop host reads the rendered image from the memory, that is, the graphics card driver outputs the rendered image to the cloud desktop host;
- Step S460 the host protocol program in the cloud desktop host encodes the rendered image
- Step S470 Send the encoded image package to the client.
- the desktop host sends the target mouse command to the cloud desktop operating system; the graphics card driver of the virtual graphics card determines that the usage scenario at this time needs to switch the working mode according to the target mouse command.
- the graphics card driver controls the virtual graphics card to complete the rendering task and change the desktop image and image changes
- the area is copied to the video memory of the virtual graphics card; the cloud desktop host parses the desktop image and the changed area of the image from the video memory of the virtual graphics card, and then sends it to the cloud desktop host to encode the parsed image information.
- the remote desktop protocol is encapsulated and sent to the administrator to locate and handle the fault. At this time, the switching process of the working mode of the graphics card does not require the participation of a third party, and is automatically completed by the graphics card driver.
- a method for displaying a cloud desktop provided by this embodiment, as shown in FIG. 5 , further includes the virtual graphics card receiving an instruction sent by the virtual machine platform, and performing corresponding actions according to the received instruction, which may include the following steps:
- Step S510 the virtual graphics card receives an instruction sent by the virtual machine platform
- Step S520 Determine whether the instruction received by the virtual graphics card is a mouse position instruction, and if the mouse position instruction is received, the information such as mouse visibility and coordinates are transmitted to the protocol program in the cloud desktop through the shared memory, and the mouse information is synchronously transmitted to the host side Protocol procedure; otherwise, go to the next step.
- Step S530 judging whether the instruction received by the virtual graphics card is a mouse pointer shape instruction, if the mouse pointer shape instruction is received, the image data of the mouse shape is transmitted to the protocol program in the cloud desktop through the shared memory, and the mouse shape information is transmitted to the host synchronously side protocol procedure; otherwise, proceed to the next step.
- Step S540 judging whether the command received by the virtual graphics card is a resolution adding command, if the adding resolution command is received (the virtual graphics card supports adding any resolution), the display driver adds a specified resolution inside and reports it to the operating system, so that the operating system supports The newly added resolution; otherwise, go to the next step.
- Step S550 judging whether the instruction received by the virtual graphics card is a resolution modification instruction, if the resolution modification instruction is received, the display driver modifies the cloud desktop resolution to a specified value, and transmits the current resolution system information to the host-side program through the video memory ; otherwise, go to the next step.
- Step S560 Determine whether the instruction received by the virtual graphics card is a drawing instruction. If the drawing instruction is received, the display driver completes the drawing internally, and transmits the drawn image data to the protocol program in the cloud desktop through the shared memory, and simultaneously sends the drawn image The data is passed to the host-side protocol program through the video memory; otherwise, the next step is performed.
- Step S570 go back to step 510 .
- the workflow of the virtual graphics card may include the following steps:
- Step S610 the virtual graphics card receives a mouse instruction
- Step S620 Detect in the mouse command whether the client is connected through the cloud desktop host
- Step S630 If the client is connected to the cloud desktop operating system through the cloud desktop host, the working mode is automatically switched;
- Step S640 Output the image information to the video memory for the cloud desktop host to read.
- the virtual machine platform is used to create a virtual graphics card for the virtual machine, and the connection method of the client connecting to the cloud desktop can be obtained through the graphics card driver on the virtual machine that drives the virtual graphics card, so that the client can be directly connected to the cloud desktop. and the client connects to the cloud desktop through the cloud desktop host, and then drives the virtual graphics card to display and process the cloud desktop according to the connection method according to the obtained connection method, so as to display the processed cloud desktop on the client. Therefore, the problem of slow switching between two graphics cards or failure of switching between two graphics cards in the original cloud desktop system can be solved at least to a certain extent, and the problem of occupying a lot of system resources and a large amount of code is difficult to maintain, and has the following beneficial effects:
- the kernel address space, interrupts and other system resources of the virtual machine platform occupy less, which reduces the load of the virtual machine;
- the cloud desktop needs to be After the graphics card switching is completed, the administrator can view the cloud desktop image through the cloud desktop host connection. If the graphics card switching fails or the switching module is abnormal, the administrator cannot enter the cloud desktop, and only needs a virtual graphics card for the cloud desktop display processing. In the scenario, the virtual graphics card can automatically switch the working mode to output the cloud desktop image to the cloud desktop host, which is convenient for the administrator to deal with the fault;
- a single virtual graphics card can also support multi-display display.
- a cloud desktop display system is also provided, and the system is used to implement the above-mentioned embodiments and exemplary implementations, and what has been described will not be repeated.
- the term "module” may be a combination of software and/or hardware that implements a predetermined function.
- the apparatus described in the following embodiments is preferably implemented in software, implementations in hardware, or a combination of software and hardware, are also possible and contemplated.
- the display system of the cloud desktop includes a virtual machine platform and a virtual machine, wherein the virtual machine platform is configured to create a virtual graphics card for the virtual machine, wherein the virtual graphics card passes through the The display driver on the virtual machine is driven; the virtual machine is set to obtain the connection method of the client connecting to the cloud desktop through the display driver, and drive the virtual graphics card according to the connection method according to the connection method Perform display processing on the cloud desktop to display the processed cloud desktop on the client, and the connection method includes at least one of the following: the client is directly connected to the cloud desktop, or the client is connected through the cloud desktop host. A connection method for connecting to the cloud desktop.
- the virtual machine platform can create a virtual graphics card for the virtual machine, drive it through the display driver on the virtual machine, and provide the relevant hardware information of the virtual graphics card to the cloud desktop operating system, so that the cloud desktop operating system can be accessed. Recognize the virtual graphics card as a physical display adapter, so that the virtual graphics card can use the computer CPU or server and other physical hardware to perform corresponding graphics processing work, and provide the processed data to the cloud desktop operating system, and then store the processed data. In the storage space such as the video memory of the virtual graphics card or the main memory of the virtual machine, it can be read by the cloud desktop operating system or other connected systems.
- the virtual machine is further configured to determine, when the display driver receives the instruction information sent by the input and output control interface of the virtual graphics card, that the client uses a direct connection to the cloud desktop.
- the connection mode of the connection when the display driver receives the target mouse instruction sent by the cloud desktop host, it is determined that the client adopts the connection mode of connecting the cloud desktop through the cloud desktop host.
- the virtual machine receives the instruction information sent by the I/O control interface of the virtual graphics card through the display driver or accepts the target mouse instruction sent by the cloud desktop host, and then based on the instruction information sent by the I/O control interface of the virtual graphics card or the target mouse
- the instruction determines the connection method between the client and the cloud desktop, and switches to the working mode corresponding to the two working scenarios of the client directly connecting to the cloud desktop or the client connecting to the cloud desktop through the cloud desktop host based on the obtained connection method.
- the display driver receives the instruction information sent by the input and output control interface of the virtual graphics card, it is determined that the client uses a connection method directly connected to the cloud desktop; after the virtual graphics card completes the rendering task, the cloud desktop is obtained.
- the image information of the image of the desktop the image information includes information such as the image and the change area of the image, and then output the information such as the image and the change area of the image to the shared memory of the virtual machine (equivalent to the memory of the virtual machine in the above embodiment), Then, the cloud desktop operating system reads the image information from the shared memory for encoding.
- the encoding result is encapsulated according to the remote desktop protocol and sent to the client (equivalent to the client in the above embodiment) for the user to use;
- the driver receives the target mouse instruction sent by the cloud desktop host, it is determined that the client uses a connection method of connecting the cloud desktop through the cloud desktop host; after the virtual graphics card completes the rendering task each time, the image of the cloud desktop is obtained.
- the image information includes the image and the change area of the image, and then output the image and the change area of the image to the video memory, and the host will periodically read the image information from the video memory of the virtual graphics card, that is, the cloud desktop image and Information such as the changing area of the image, the time here is determined based on the preset refresh rate, and is encoded by the host side; after the encoding is completed, the encoding result is encapsulated and sent to the client.
- the virtual machine is also used to detect whether there is a target object through the cloud desktop host and the cloud desktop host when the client is directly connected to the cloud desktop and the cloud desktop fails.
- the cloud desktop connection is also used to detect whether there is a target object through the cloud desktop host and the cloud desktop host when the client is directly connected to the cloud desktop and the cloud desktop fails.
- the virtual machine detects that the target object is connected to the cloud desktop through the cloud desktop host, the virtual machine drives the virtual graphics card to perform display processing on the cloud desktop through the display driver, so as to display the processed desktop on the client.
- the cloud desktop, and the target object processes the fault according to the processed cloud desktop.
- the virtual machine detects whether there is a target object through the cloud desktop host Connected to the cloud desktop, the target object here can be the user, or the management and maintenance personnel of the cloud desktop; if the virtual machine detects that the target object is connected to the cloud desktop through the cloud desktop host, the display driver When the program receives the target mouse instruction, the display driver drives the virtual graphics card to render the image of the cloud desktop to be displayed, and outputs the rendered image to the memory of the virtual machine, so that the cloud desktop host can be downloaded from the virtual machine.
- the rendered image is encoded in the memory, and the encoded image is sent to the client.
- the display system of the cloud desktop includes:
- the graphics card driver module 22 is used to identify the connection mode between the client and the cloud desktop, and drive the virtual graphics card to complete the rendering task of the operating system in the cloud desktop, and then output image information to the virtual memory of the virtual machine;
- the graphics card driver module 22 determines that the client is connected to the cloud desktop through the cloud desktop host based on the received target mouse instruction; or, the graphics card driver module 22 determines the client by reading the input information sent by the cloud desktop operating system to the virtual graphics card Connect directly to the virtual machine. After obtaining the connection mode of the user, the graphics card driver module 22 switches the virtual graphics card to a corresponding working mode, and provides a cloud desktop image for the remote client.
- the information sending and receiving module 24 is configured to receive the input information of the client, and send the cloud desktop image to the client; or, send the image information to the host.
- the information transceiver module 24 is further configured to receive data request information from the cloud desktop host, where the data request information includes information such as the cloud desktop image and its change area requested by the cloud desktop host from the virtual graphics card memory.
- the information transceiver module 24 is responsible for the forwarding of network messages, including sending the encoding result of the virtual machine to the client, sending the request of the client to the cloud desktop operating system, sending the data request of the host to the graphics card driver of the virtual graphics card, and, to the cloud.
- the desktop host sends image information from the virtual graphics card memory.
- the display system of the cloud desktop further includes:
- the cloud desktop encoding module is used to read and encode image information in the shared memory at regular intervals when the client is directly connected to the cloud desktop, and then send the encoding to the information transceiver module 24 after encoding.
- the input module is responsible for inputting the user's keyboard and mouse messages.
- the graphics card driver module 22 determines that when the client is connected to the cloud desktop through the cloud desktop host, drives the virtual graphics card to render the image of the cloud desktop to be displayed, and renders the rendered image. output to the memory of the virtual machine, so that the cloud desktop host encodes the rendered image from the memory, and sends the encoded image to the client.
- the cloud desktop host includes a graphics card interaction control module, which is used to notify the graphics card driver module 22 whether to output information such as desktop images and changing areas to the video memory of the virtual graphics card; it is also used to parse information such as desktop images and changing areas from the video memory of the virtual graphics card.
- the host encoding module is used to compress and encode information such as desktop images and changing areas, and send the encoding results to the network module;
- the network encoding module is used for forwarding network messages, including encoding results.
- Sending to the client and forwarding the input of the client exemplarily, it also includes a host input module, which is used for the input of the user's keyboard and mouse messages.
- the above modules can be implemented by software or hardware, and the latter can be implemented in the following ways, but not limited to this: the above modules are all located in the same processor; or, the above modules can be combined in any combination The forms are located in different processors.
- Embodiments of the present application further provide a computer-readable storage medium, where a computer program is stored in the computer-readable storage medium, wherein the computer program is configured to execute the steps in any one of the above method embodiments when running.
- the above-mentioned computer-readable storage medium may include, but is not limited to, a USB flash drive, a read-only memory (Read-Only Memory, referred to as ROM for short), and a random access memory (Random Access Memory, referred to as RAM for short) , mobile hard disk, magnetic disk or CD-ROM and other media that can store computer programs.
- ROM Read-Only Memory
- RAM Random Access Memory
- the above-mentioned storage medium may be configured to store program codes for executing the following steps:
- the connection method includes at least one of the following: a method in which the client directly connects to the cloud desktop, or a connection method in which the client connects to the cloud desktop through a cloud desktop host.
- Embodiments of the present application further provide an electronic device, including a memory and a processor, where a computer program is stored in the memory, and the processor is configured to run the computer program to execute the steps in any one of the above method embodiments.
- the above-mentioned processor may be configured to execute the following steps through a computer program:
- the connection method includes at least one of the following: a method in which the client directly connects to the cloud desktop, or a connection method in which the client connects to the cloud desktop through a cloud desktop host.
- the above-mentioned electronic device may further include a transmission device and an input-output device, wherein the transmission device is connected to the above-mentioned processor, and the input-output device is connected to the above-mentioned processor.
- a virtual graphics card is created for the virtual machine by using the virtual machine platform, and the connection method of the client connecting to the cloud desktop can be obtained through the graphics card driver on the virtual machine that drives the virtual graphics card, it can be distinguished that the client is directly connected to the cloud desktop. and the client connects to the cloud desktop through the cloud desktop host, and then drives the virtual graphics card to display and process the cloud desktop according to the connection method according to the obtained connection method, so as to display the processed cloud desktop on the client. Therefore, at least to a certain extent, the problem of slow switching or graphics card switching failure and occupying a lot of system resources in the process of realizing cloud desktop display with multiple virtual graphics cards in some cases can be solved, so that the system resource occupation is not increased. Under the premise of system complexity, it avoids the problem of graphics card switching and improves the display processing speed of the cloud desktop.
- modules or steps of the present application can be implemented by a general-purpose computing device, and they can be centralized on a single computing device, or distributed in a network composed of multiple computing devices
- they can be implemented in program code executable by a computing device, so that they can be stored in a storage device and executed by the computing device, and in some cases, can be performed in a different order than shown here.
- the described steps, or they are respectively made into individual integrated circuit modules, or a plurality of modules or steps in them are made into a single integrated circuit module to realize.
- the present application is not limited to any particular combination of hardware and software.
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Digital Computer Display Output (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
一种云桌面的显示方法和系统,该云桌面的显示方法包括:利用虚拟机平台为虚拟机创建一个虚拟显卡(S110),其中,所述虚拟显卡通过所述虚拟机上的显示驱动程序进行驱动;通过所述显示驱动程序获取客户端连接云桌面的连接方式,并根据所述连接方式驱动所述虚拟显卡根据所述连接方式对云桌面进行显示处理(S120),以在客户端上显示处理后的云桌面,所述连接方式包括以下至少之一:所述客户端直接与云桌面连接的方式,或所述客户端通过云桌面主机连接所述云桌面的连接方式。
Description
相关申请的交叉引用
本申请基于申请号为202011066250.7、申请日为2020年09月30日的中国专利申请提出,并要求该中国专利申请的优先权,该中国专利申请的全部内容在此引入本申请作为参考。
本申请实施例涉及通信领域,尤其涉及一种云桌面的显示方法和系统。
随着云计算、虚拟等技术的发展,云桌面用户越来越多;云桌面的基本原理是通过虚拟化技术将计算机的桌面进行虚拟化,从而使任何设备,在任何地点,任何时间访问在网络上属于我们个人的桌面系统,远程终端设备与服务器通过远程桌面协议进行桌面图形传输。
在常见的云桌面系统(如vmware、思杰等)中,一般存在两个虚拟显卡,来满足不同场景的使用需求,目前常见的云桌面连接方式及使用场景包括以下几种:场景1:用户直接连接到桌面内部使用云桌面,场景2:用户通过虚拟化所在主机连接云桌面使用,场景3:直接连接云桌面出现异常,直连模式不能工作,要通过主机连接定位排除故障;其中一个显卡是用户直连云桌面时使用,完成桌面渲染并向远端用户提供桌面图像,另外一个显卡是在虚拟桌面出现故障时管理人员处理故障时使用或用户通过主机连接云桌面时使用,根据使用场景激活不同的显卡;使用两个虚拟显卡,处理不同的场景,存在显卡切换慢或显卡切换失败、占用系统资源多、增加系统复杂性及代码量大难维护的弊端。
针对在一些情况下,多个虚拟显卡来实现云桌面的显示过程中,存在切换慢或显卡切换失败,且占用系统资源多的问题,尚未提出有效地解决方案。
发明内容
本申请实施例提供了一种云桌面的显示方法和系统,以至少在一定程度上解决在一些情况下多个虚拟显卡来实现云桌面的显示过程中,存在切换慢或显卡切换失败,且占用系统资源多的问题。
根据本申请的一个实施例,提供了一种云桌面的显示方法,该方法包括:利用虚拟机平台为虚拟机创建一个虚拟显卡,其中,所述虚拟显卡通过所述虚拟机上的显示驱动程序进行驱动;通过所述显示驱动程序获取客户端连接云桌面的连接方式,并根据所述连接方式驱动所述虚拟显卡根据所述连接方式对云桌面进行显示处理,以在客户端上显示处理后的云桌面,所述连接方式包括以下至少之一:所述客户端直接与云桌面连接的方式,或所述客户端通过云桌面主机连接所述云桌面的连接方式。
根据本申请的另一个实施例,还提供了一种云桌面的显示系统,包括:虚拟机平台,虚拟机,其中,所述虚拟机平台,被设置为为所述虚拟机创建一个虚拟显卡,其中,所述虚拟显卡通过所述虚拟机上的显示驱动程序进行驱动;所述虚拟机,还被设置为通过所述显示驱 动程序获取客户端连接云桌面的连接方式,并根据所述连接方式驱动所述虚拟显卡根据所述连接方式对云桌面进行显示处理,以在客户端上显示处理后的云桌面,所述连接方式包括以下至少之一:所述客户端直接与云桌面连接的方式,或所述客户端通过云桌面主机连接所述云桌面的连接方式。
根据本申请的又一个实施例,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
根据本申请的又一个实施例,还提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。
图1是根据本申请实施例的云桌面的显示方法的流程图;
图2是根据本申请实施例的客户端直接与云桌面连接时显示方法的流程图;
图3是根据本申请实施例的客户端通过云桌面主机与云桌面连接时显示方法的流程图;
图4是根据本申请实施例的客户端直接与云桌面连接出现故障时处理方法的流程图;
图5是根据本申请实施例的虚拟显卡接收虚拟机平台发送的指令的工作流程图;
图6是根据本申请实施例的客户端直接与云桌面连接出现故障时虚拟显卡的工作流程图;
图7是根据本申请实施例的云桌面的显示系统的结构示意图;
图8是根据本申请实施例的云桌面的显示系统的结构框图。
下文中将参考附图并结合实施例来详细说明本申请的实施例。
本申请实施例提供的方案涉及虚拟化云桌面领域中虚拟显卡技术。随着云计算、虚拟等技术的发展,云桌面(本申请所述云桌面以虚拟机方式运行,也可用虚拟机表示云桌面)用户越来越多,常用的云桌面连接方式及使用场景有:场景1:用户通过网络连接云桌面本身的IP地址使用云桌面;场景2:用户通过连接云桌面所在后台服务器(以下简称云桌面主机)IP地址连接云桌面使用;场景3:直接通过网络连接云桌面出现异常,直连模式不能工作,要通过云桌面主机连接定位排除故障。
本申请实施例可以运行于图7所示的网络架构上,如图7所示,该网络架构包括:虚拟机和虚拟机平台两部分,虚拟机用于通过虚拟驱动为显卡驱动程序创建一个虚拟显卡,其中,虚拟显卡通过所述虚拟机上的显示驱动程序进行驱动;还用于通过显示驱动程序获取客户端连接云桌面的连接方式,并根据所述连接方式驱动所述虚拟显卡根据所述连接方式对云桌面进行显示处理,以在客户端上显示处理后的云桌面。
本申请实施例提供了一种运行于上述虚拟机的云桌面的显示方法,使用一个虚拟显卡处理上文所述的不同使用场景;避免了多个虚拟显卡反复切换所引发的技术缺陷。
示例性地,本实施例通过虚拟化平台为虚拟机虚拟一个显卡,虚拟机内部的显卡驱动程序驱动此虚拟显卡同时为不同使用的场景提供桌面图像,云桌面的现实方法的流程图如图1所示,具体实现方法如下:
步骤S110:利用虚拟机平台为虚拟机创建一个虚拟显卡,其中,所述虚拟显卡通过所述虚拟机上的显示驱动程序进行驱动;
本步骤中,虚拟机平台可以为虚拟机创建一个虚拟显卡,通过虚拟机上的显示驱动程序进行驱动,将虚拟显卡的相关硬件信息提供给云桌面操作系统,使得云桌面操作系统接入能够将虚拟显卡识别为实体的显示适配器,这样,虚拟显卡可以利用计算机CPU或服务器等实体硬件进行相应的图形处理工作,并将处理后的数据提供给云桌面操作系统,然后将处理后的数据存在虚拟显卡的显存或者虚拟机的主存等存储空间中,供云桌面操作系统或者其它接入的系统读取。
步骤S120:通过所述显示驱动程序获取客户端连接云桌面的连接方式,并根据所述连接方式驱动所述虚拟显卡根据所述连接方式对云桌面进行显示处理,以在客户端上显示处理后的云桌面,所述连接方式包括以下至少之一:所述客户端直接与云桌面连接的方式,或所述客户端通过云桌面主机连接所述云桌面的连接方式。
通过上述步骤,由于利用虚拟机平台为虚拟机创建一个虚拟显卡,可以通过驱动该虚拟显卡的虚拟机上的显卡驱动获取客户端连接云桌面的连接方式,从而区分客户端直接与云桌面连接的方式,和客户端通过云桌面主机连接云桌面的连接方式,然后根据获取的连接方式驱动虚拟显卡根据连接方式对云桌面进行显示处理,实现在客户端上显示处理后的云桌面。因此,可以至少在一定程度上解决了在一些情况下多个虚拟显卡来实现云桌面的显示过程中,存在切换慢或显卡切换失败,且占用系统资源多的问题,达到在不增加系统资源占用和系统复杂性的前提下,避免显卡切换的问题,提高云桌面的显示处理速度的效果。
在步骤S120中,虚拟机平台接收云桌面操作系统的云桌面请求,并将该请求转发至虚拟显卡,然后根据该虚拟显卡的输入输出控制接口识别客户端直接与云桌面操作系统连接,或者客户端通过云桌面主机连接所述云桌面,然后基于连接方式处理云桌面系统的图像信息并返回至客户端,由于只需要一个虚拟显卡,不存在显卡的切换问题,只是在需要时增加向主机输出图像的过程,也就没有切换显卡调整分辨率的过程,提高了云桌面操作系统的处理速度;一方面云桌面内核地址空间、中断等系统资源占用更少,降低了云桌面系统负荷,另一方面减少虚拟化平台内存资源消耗;
在一示例中,通过所述显示驱动程序获取客户端连接云桌面的连接方式,其中,所述连接方式可以包括:在所述显示驱动程序接收到所述虚拟显卡的输入输出控制接口发送的指示信息的情况下,确定所述客户端采用的是直接与云桌面连接的连接方式;在所述显示驱动程序接收到所述云桌面主机发送的目标鼠标指令的情况下,确定所述客户端采用的是通过云桌面主机连接所述云桌面的连接方式。
在本示例中,客户端直接与云桌面连接时,虚拟显卡通过输入输出控制接口识别客户端的连接方式为直接与云桌面连接的连接方式,虚拟显卡得知当前的连接方式后,不向主机侧输出桌面图像等信息,只为客户端提供图像,同时通知主机侧程序当前处于客户端直接与云桌面连接的连接方式,主机侧程序不工作。客户端采用的是通过云桌面主机连接所述云桌面的连接方式时,可以通过构造目标鼠标指令,然后发送至云桌面操作系统内的显卡驱动程序,在显示驱动程序接收到所述云桌面主机发送的目标鼠标指令的情况下,确定所述客户端采用的是通过云桌面主机连接所述云桌面的连接方式,此时主机侧程序会定时向云桌面请求云桌面的图像信息。
在一示例性实施例中,利用虚拟机平台为虚拟机创建一个虚拟显卡之后,所述方法还包括:在所述客户端采用的是直接与云桌面连接的连接方式,且所述云桌面发生故障的情况下,检测是否存在目标对象通过所述云桌面主机与所述云桌面连接。
在一示例性实施例中,利用虚拟机平台为虚拟机创建一个虚拟显卡之后,所述方法还包括:在检测到存在目标对象通过所述云桌面主机与所述云桌面连接的情况下,通过所述显示驱动程序驱动所述虚拟显卡对云桌面进行显示处理,以在客户端上显示处理后的云桌面,以及所述目标对象根据所述处理后的云桌面处理所述故障。
在一示例性实施例中,根据所述连接方式驱动所述虚拟显卡根据所述连接方式对云桌面进行显示处理,包括:在所述客户端采用的是直接与云桌面连接的连接方式的情况下,驱动所述虚拟显卡对待显示的云桌面的图像进行渲染,并将渲染后的图像输出至所述虚拟机的内存中,以使所述虚拟机从所述内存中对所述渲染后的图像进行编码,将编码后的图像发送至所述客户端。
在一示例性实施例中,根据所述连接方式驱动所述虚拟显卡根据所述连接方式对云桌面进行显示处理,包括:在所述客户端通过云桌面主机连接所述云桌面的情况下,驱动所述虚拟显卡对待显示的云桌面的图像进行渲染,并将渲染后的图像输出至所述虚拟机的内存中,以使所述云桌面主机从所述内存中对所述渲染后的图像进行编码,将编码后的图像发送至所述客户端。
在一示例中,如图2所示,在所述客户端直接与云桌面连接的连接方式的情况下,包括以下步骤:
步骤S210:确定客户端采用的是直接与云桌面连接的连接方式;
步骤S220:通知虚拟显卡切换工作模式,切换后虚拟显卡的工作模式为客户端直接与云桌面连接对应的工作模式;
步骤S230:驱动所述虚拟显卡对待显示的云桌面的图像进行渲染;然后将渲染后的图像输出至所述虚拟机的内存中;
步骤S240:所述虚拟机从所述内存中对所述渲染后的图像进行编码;
步骤S250:将编码后的图像封装发送至所述客户端。
在本示例中,客户端直接与云桌面连接时,虚拟显卡每次完成渲染任务后,得到云桌面的图像的图像信息,图像信息包括图像和图像的变化区域等信息,然后将图像和图像的变化区域等信息输出到虚拟机的共享内存(相当于上述实施例的虚拟机的内存)中,然后由云桌面操作系统从共享内存中读取图像信息进行编码,编码完成后,将编码结果按照远程桌面协议封装起来发送到客户端(相当于上述实施例的客户端)供用户使用,重复步骤S210至步骤S250即可完成客户端直接与云桌面连接进行工作。
在一示例中,如图3所示,在所述客户端通过云桌面主机连接所述云桌面的情况下,包括以下步骤:
步骤S310:显卡驱动程序确定客户端采用的是通过云桌面主机与云桌面连接的连接方式;
步骤S320:云桌面主机通知虚拟显卡切换工作模式,切换后虚拟显卡的工作模式为客户端通过云桌面主机与云桌面连接对应的工作模式;
步骤S330:云桌面主机通知显卡驱动程序向云桌面主机输出云桌面的图像;
步骤S340:虚拟机驱动所述虚拟显卡对待显示的云桌面的图像进行渲染;然后将渲染后 的图像输出至所述虚拟机的内存中;以及,云桌面主机从所述内存中读取所述渲染后的图像,即显卡驱动程序将渲染后的图像输出至云桌面主机;
步骤S350:云桌面主机内的主机协议程序对渲染后的图像进行编码;
步骤S360:将编码后的图像封装发送至所述客户端。
在本示例中,虚拟显卡每次完成渲染任务后,得到云桌面的图像的图像信息,图像信息包括图像和图像的变化区域等信息,然后将图像和图像的变化区域等信息输出到显存中,主机会定时从虚拟显卡的显存中读取图像信息,即云桌面图像和图像的变化区域等信息,这里的时间基于预先设置的刷新率决定,并由主机侧进行编码;编码完成后将编码结果封装并发送到客户端,重复步骤S310至S330,即可完成客户端通过云桌面主机连接所述云桌面进行工作。
本实施例提供的一种云桌面的显示方法,还包括:
在客户端采用的是直接与云桌面连接的连接方式,且云桌面发生故障的情况下,检测是否存在目标对象通过云桌面主机与所述云桌面连接。
在一示例中,如图4所示,若客户端与云桌面连接时发生故障,可以包括以下处理步骤:
步骤S410:确定客户端采用的是直接与云桌面连接的连接方式;
步骤S420:在云桌面无法正常使用时,客户端进行上报;
步骤S430:客户端通过云桌面主机与云桌面连接;
步骤S440:显卡驱动程序确定客户端采用的是通过云桌面主机与云桌面连接的连接方式,云桌面主机通知虚拟显卡切换工作模式,切换后虚拟显卡的工作模式为客户端通过云桌面主机与云桌面连接对应的工作模式;
步骤S450:云桌面主机通知显卡驱动程序向云桌面主机输出云桌面的图像;虚拟机驱动所述虚拟显卡对待显示的云桌面的图像进行渲染;然后将渲染后的图像输出至所述虚拟机的内存中;以及,云桌面主机从所述内存中读取所述渲染后的图像,即显卡驱动程序将渲染后的图像输出至云桌面主机;
步骤S460:云桌面主机内的主机协议程序对渲染后的图像进行编码;
步骤S470:将编码后的图像封装发送至所述客户端。
在上述步骤中,若客户端与云桌面连接时发生故障,如黑屏、卡机等,导致用户无法正常使用云桌面操作系统,此时用户可以通过主机连接云桌面操作系统处理故障,即通过云桌面主机发送目标鼠标指令到云桌面操作系统;虚拟显卡的显卡驱动程序根据目标鼠标指令判断此时的使用场景需要切换工作模式,显卡驱动程序控制虚拟显卡完成渲染任务后将桌面图像和图像的变化区域拷贝到虚拟显卡的显存中;云桌面主机从虚拟显卡的显存中解析出桌面图像和图像的变化区域,然后发送至云桌面主机对解析出的图像信息进行编码,编码完成后将编码结果按照远程桌面协议封装起来发送给管理员,即可定位处理故障,此时显卡工作模式的切换过程不需要第三方参与,由显卡驱动自动完成。
本实施例提供的一种云桌面的显示方法,如图5所示,还包括虚拟显卡接收虚拟机平台发送的指令,并根据接收到的指令作出相应的动作,可以包括以下步骤:
步骤S510:虚拟显卡接收虚拟机平台发送的指令;
步骤S520:判断虚拟显卡接收的指令是否为鼠标位置指令,若接收鼠标位置指令,则将鼠标可见性、坐标等信息通过共享内存传递给云桌面内协议程序,并将鼠标信息同步传递给 主机侧协议程序;否则,执行下一步。
步骤S530:判断虚拟显卡接收的指令是否为鼠标指针形状指令,若接收鼠标指针形状指令,则将鼠标形状的图像数据通过共享内存传递给云桌面内协议程序,并将鼠标形状信息同步传递给主机侧协议程序;否则,执行下一步。
步骤S540:判断虚拟显卡接收的指令是否为添加分辨率指令,若接收添加分辨率指令(虚拟显卡支持添加任意分辨率),则显示驱动程序内部添加指定分辨率并上报操作系统,使操作系统支持新添加的分辨率;否则,执行下一步。
步骤S550:判断虚拟显卡接收的指令是否为修改分辨率指令,若接收修改分辨率指令,则显示驱动程序将云桌面分辨率修改到指定值,并将当前分辨统率信息通过显存传递给主机侧程序;否则,执行下一步。
步骤S560:判断虚拟显卡接收的指令是否为绘图指令,若接收绘图指令,显示驱动程序内部完成绘图,并将绘制好的图像数据通过共享内存传递给云桌面内协议程序,同时将绘制好的图像数据通过显存传递给主机侧协议程序;否则,执行下一步。
步骤S570:回到步骤510。
需要说明的是,上述步骤S520至步骤S560之间的执行顺序可以根据实际工作场景任意切换,且若客户端直接与云桌面操作系统连接,主机侧不工作,云桌面操作系统不向主机侧发送任何数据。
示例性地,如图6所示,当客户端直接与云桌面操作系统连接时,若发生故障,虚拟显卡的工作流程可以包括以下步骤:
步骤S610:虚拟显卡接收鼠标指令;
步骤S620:在鼠标指令中检测客户端是否通过云桌面主机连接;
步骤S630:若客户端通过云桌面主机与云桌面操作系统连接,则自动切换工作模式;
步骤S640:将图像信息输出至显存中供云桌面主机读取。
通过上述步骤,由于利用虚拟机平台为虚拟机创建一个虚拟显卡,且可以通过驱动该虚拟显卡的虚拟机上的显卡驱动获取客户端连接云桌面的连接方式,从而区分客户端直接与云桌面连接的方式,和客户端通过云桌面主机连接云桌面的连接方式,然后根据获取的连接方式驱动虚拟显卡根据连接方式对云桌面进行显示处理,实现在客户端上显示处理后的云桌面。因此,可以至少在一定程度上解决原有的云桌面系统中两个显卡之间切换慢或切换失败,且占用系统资源多,代码量大难维护的问题,具有如下有益效果:
1、只需要一个虚拟显卡进行云桌面显示处理,不存在显卡切换的问题,只是在需要时增加向云桌面主机输出图像的过程,也就没有切换显卡调整分辨率的过程,所以云桌面的显示速度更快,过程更友好;
2、虚拟机平台的内核地址空间、中断等系统资源占用更少,降低了虚拟机的负荷;
3、由于只存在一个虚拟显卡,减少了虚拟机平台的内存资源消耗;
4、使云桌面的显示系统更简单和易维护,对用户更友好;
5、方便故障处理,客户端与云桌面直接连接的情况下有时会遇到故障,如看不到桌面图像,此时需要管理员定位、处理故障,在原来多显卡场景下,需要云桌面内先完成显卡切换,管理员才可以通过云桌面主机连接看到云桌面图像,如果显卡切换失败或者切换模块异常,管理员则无法进入云桌面,只需要一个虚拟显卡进行云桌面显示处理后,故障场景下虚拟显 卡可自动切换工作模式向云桌面主机输出云桌面图像,方便管理员处理故障;
6、单一的虚拟显卡也可以支持多显示屏显示。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说在一些情况下做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
在本实施例中还提供了一种云桌面的显示系统,该系统用于实现上述实施例及示例性实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
如图7所示,该云桌面的显示系统包括虚拟机平台和虚拟机,其中,所述虚拟机平台,被设置为为所述虚拟机创建一个虚拟显卡,其中,所述虚拟显卡通过所述虚拟机上的显示驱动程序进行驱动;所述虚拟机,被设置为通过所述显示驱动程序获取客户端连接云桌面的连接方式,并根据所述连接方式驱动所述虚拟显卡根据所述连接方式对云桌面进行显示处理,以在客户端上显示处理后的云桌面,所述连接方式包括以下至少之一:所述客户端直接与云桌面连接的方式,或所述客户端通过云桌面主机连接所述云桌面的连接方式。
需要说明的是,虚拟机平台可以为虚拟机创建一个虚拟显卡,通过虚拟机上的显示驱动程序进行驱动,将虚拟显卡的相关硬件信息提供给云桌面操作系统,使得云桌面操作系统接入能够将虚拟显卡识别为实体的显示适配器,这样,虚拟显卡可以利用计算机CPU或服务器等实体硬件进行相应的图形处理工作,并将处理后的数据提供给云桌面操作系统,然后将处理后的数据存在虚拟显卡的显存或者虚拟机的主存等存储空间中,供云桌面操作系统或者其它接入的系统读取。
在一示例中,所述虚拟机还被设置为在所述显示驱动程序接收到所述虚拟显卡的输入输出控制接口发送的指示信息的情况下,确定所述客户端采用的是直接与云桌面连接的连接方式;在所述显示驱动程序接收到所述云桌面主机发送的目标鼠标指令的情况下,确定所述客户端采用的是通过云桌面主机连接所述云桌面的连接方式。
在本示例中,虚拟机通过显示驱动程序接收虚拟显卡的输入输出控制接口发送的指示信息或接受云桌面主机发送的目标鼠标指令,然后基于虚拟显卡的输入输出控制接口发送的指示信息或目标鼠标指令判断客户端与云桌面的连接方式,并基于获得的连接方式切换至客户端直接连接至云桌面或客户端通过云桌面主机连接云桌面两种工作场景对应的工作方式。
需要说明的是,在显示驱动程序接收到虚拟显卡的输入输出控制接口发送的指示信息时,确定客户端采用的是直接与云桌面连接的连接方式;虚拟显卡每次完成渲染任务后,得到云桌面的图像的图像信息,图像信息包括图像和图像的变化区域等信息,然后将图像和图像的变化区域等信息输出到虚拟机的共享内存(相当于上述实施例的虚拟机的内存)中,然后由云桌面操作系统从共享内存中读取图像信息进行编码,编码完成后,将编码结果按照远程桌面协议封装起来发送到客户端(相当于上述实施例的客户端)供用户使用;在显示驱动程序接收到云桌面主机发送的目标鼠标指令的情况下,确定客户端采用的是通过云桌面主机连接 所述云桌面的连接方式;在虚拟显卡每次完成渲染任务后,得到云桌面的图像的图像信息,图像信息包括图像和图像的变化区域等信息,然后将图像和图像的变化区域等信息输出到显存中,主机会定时从虚拟显卡的显存中读取图像信息,即云桌面图像和图像的变化区域等信息,这里的时间基于预先设置的刷新率决定,并由主机侧进行编码;编码完成后将编码结果封装并发送到客户端。
在一示例中,虚拟机还用于在所述客户端采用的是直接与云桌面连接的连接方式,且所述云桌面发生故障的情况下,检测是否存在目标对象通过所述云桌面主机与所述云桌面连接。
虚拟机在检测到存在目标对象通过所述云桌面主机与所述云桌面连接的情况下,通过所述显示驱动程序驱动所述虚拟显卡对云桌面进行显示处理,以在客户端上显示处理后的云桌面,以及所述目标对象根据所述处理后的云桌面处理所述故障。
在本实施例中,在客户端采用的是直接与云桌面连接的情况下,如果云桌面出现故障,导致客户端不能正常与云桌面连接,虚拟机会检测是否存在目标对象通过所述云桌面主机与所述云桌面连接,这里的目标对象可以是用户,也可以是云桌面的管理和维护人员;若虚拟机检测到存在目标对象通过所述云桌面主机与所述云桌面连接,即显示驱动程序接收到目标鼠标指令,则显示驱动程序驱动所述虚拟显卡对待显示的云桌面的图像进行渲染,并将渲染后的图像输出至所述虚拟机的内存中,以使所述云桌面主机从所述内存中对所述渲染后的图像进行编码,将编码后的图像发送至所述客户端。
其中,如图8所示,该云桌面的显示系统包括:
显卡驱动模块22,用于识别客户端与云桌面的连接方式,并驱动虚拟显卡完成云桌面内操作系统的渲染任务,然后输出图像信息至虚拟机的虚拟内存中;
具体地,显卡驱动模块22基于接收的目标鼠标指令,判定客户端通过云桌面主机与云桌面连接;或,显卡驱动模块22通过读取云桌面操作系统发送至虚拟显卡的输入信息,判定客户端直接与虚拟机连接。显卡驱动模块22得到用户的连接方式后,切换虚拟显卡至相应的工作模式,为远程客户端提供云桌面图像。
以及,信息收发模块24,用于接收客户端的输入信息,并将云桌面图像发送至客户端;或者,将图像信息发送至主机。
具体地,信息收发模块24还用于接收云桌面主机的数据请求信息,该数据请求信息包括云桌面主机向虚拟显卡显存请求的云桌面图像及其变化区域等信息。信息收发模块24负责网络消息的转发,包括将虚拟机编码结果发送至客户端,将客户端的请求发送至云桌面操作系统,将主机的数据请求发送至虚拟显卡的显卡驱动程序,以及,向云桌面主机发送虚拟显卡显存中的图像信息。
在一示例中,该云桌面的显示系统还包括:
云桌面编码模块,用于在客户端直接与云桌面连接时,每隔一定时间读取共享内存中的图像信息并进行编码,编码完成后发送至信息收发模块24。
输入模块,用于负责用户键盘鼠标消息的输入。
在一示例中,显卡驱动模块22基于接收的目标鼠标指令,判定客户端通过云桌面主机与云桌面连接时,驱动所述虚拟显卡对待显示的云桌面的图像进行渲染,并将渲染后的图像输出至所述虚拟机的内存中,以使所述云桌面主机从所述内存中对所述渲染后的图像进行编码,将编码后的图像发送至所述客户端。其中,云桌面主机包括显卡交互控制模块,用于通知显 卡驱动模块22是否向虚拟显卡的显存输出桌面图像及变化区域等信息;还用于从虚拟显卡显存中解析出桌面图像及变化区域等信息,并发送到主机编码模块;主机编码模块用于对桌面图像及变化区域等信息用于进行压缩编码,并将编码结果送给网络模块;网络编码模块用于网络消息的转发,包括将编码结果发送到客户端和将客户端的输入进行转发,示例性地,还包括主机输入模块,用于用户键盘鼠标消息的输入。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
本申请的实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
在一个示例性实施例中,上述计算机可读存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
示例性地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的程序代码:
S1,利用虚拟机平台为虚拟机创建一个虚拟显卡,其中,所述虚拟显卡通过所述虚拟机上的显示驱动程序进行驱动;
S2,通过所述显示驱动程序获取客户端连接云桌面的连接方式,并根据所述连接方式驱动所述虚拟显卡根据所述连接方式对云桌面进行显示处理,以在客户端上显示处理后的云桌面,所述连接方式包括以下至少之一:所述客户端直接与云桌面连接的方式,或所述客户端通过云桌面主机连接所述云桌面的连接方式。
本申请的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
示例性地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,利用虚拟机平台为虚拟机创建一个虚拟显卡,其中,所述虚拟显卡通过所述虚拟机上的显示驱动程序进行驱动;
S2,通过所述显示驱动程序获取客户端连接云桌面的连接方式,并根据所述连接方式驱动所述虚拟显卡根据所述连接方式对云桌面进行显示处理,以在客户端上显示处理后的云桌面,所述连接方式包括以下至少之一:所述客户端直接与云桌面连接的方式,或所述客户端通过云桌面主机连接所述云桌面的连接方式。
在一个示例性实施例中,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
本实施例中的具体示例可以参考上述实施例及示例性实施方式中所描述的示例,本实施例在此不再赘述。
通过本申请,由于利用虚拟机平台为虚拟机创建一个虚拟显卡,且可以通过驱动该虚拟显卡的虚拟机上的显卡驱动获取客户端连接云桌面的连接方式,从而区分客户端直接与云桌面连接的方式,和客户端通过云桌面主机连接云桌面的连接方式,然后根据获取的连接方式驱动虚拟显卡根据连接方式对云桌面进行显示处理,实现在客户端上显示处理后的云桌面。因此,可以至少在一定程度上解决了在一些情况下多个虚拟显卡来实现云桌面的显示过程中, 存在切换慢或显卡切换失败,且占用系统资源多的问题,达到在不增加系统资源占用和系统复杂性的前提下,避免显卡切换的问题,提高云桌面的显示处理速度的效果。
显然,本领域的技术人员应该明白,上述的本申请的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本申请不限制于任何特定的硬件和软件结合。
以上所述仅为本申请的示例性实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (10)
- 一种云桌面的显示方法,包括:利用虚拟机平台为虚拟机创建一个虚拟显卡,其中,所述虚拟显卡通过所述虚拟机上的显示驱动程序进行驱动;通过所述显示驱动程序获取客户端连接云桌面的连接方式,并根据所述连接方式驱动所述虚拟显卡根据所述连接方式对云桌面进行显示处理,以在客户端上显示处理后的云桌面,所述连接方式包括以下至少之一:所述客户端直接与云桌面连接的方式,或所述客户端通过云桌面主机连接所述云桌面的连接方式。
- 根据权利要求1所述的方法,其中,通过所述显示驱动程序获取客户端连接云桌面的连接方式,包括:在所述显示驱动程序接收到所述虚拟显卡的输入输出控制接口发送的指示信息的情况下,确定所述客户端采用的是直接与云桌面连接的连接方式;在所述显示驱动程序接收到所述云桌面主机发送的目标鼠标指令的情况下,确定所述客户端采用的是通过云桌面主机连接所述云桌面的连接方式。
- 根据权利要求1所述的方法,其中,利用虚拟机平台为虚拟机创建一个虚拟显卡之后,所述方法还包括:在所述客户端采用的是直接与云桌面连接的连接方式,且所述云桌面发生故障的情况下,检测是否存在目标对象通过所述云桌面主机与所述云桌面连接。
- 根据权利要求1所述的方法,其中,利用虚拟机平台为虚拟机创建一个虚拟显卡之后,所述方法还包括:在检测到存在目标对象通过所述云桌面主机与所述云桌面连接的情况下,通过所述显示驱动程序驱动所述虚拟显卡对云桌面进行显示处理,以在客户端上显示处理后的云桌面,以及所述目标对象根据所述处理后的云桌面处理所述故障。
- 根据权利要求1所述的方法,其中,根据所述连接方式驱动所述虚拟显卡根据所述连接方式对云桌面进行显示处理,包括:在所述客户端采用的是直接与云桌面连接的连接方式的情况下,驱动所述虚拟显卡对待显示的云桌面的图像进行渲染,并将渲染后的图像输出至所述虚拟机的内存中,以使所述虚拟机从所述内存中对所述渲染后的图像进行编码,将编码后的图像发送至所述客户端。
- 根据权利要求1所述的方法,其中,根据所述连接方式驱动所述虚拟显卡根据所述连接方式对云桌面进行显示处理,包括:在所述客户端通过云桌面主机连接所述云桌面的情况下,驱动所述虚拟显卡对待显示的云桌面的图像进行渲染,并将渲染后的图像输出至所述虚拟机的内存中,以使所述云桌面主机从所述内存中对所述渲染后的图像进行编码,将编码后的图像发送至所述客户端。
- 一种云桌面的显示系统,包括:虚拟机平台,虚拟机,其中,所述虚拟机平台,被设置为为所述虚拟机创建一个虚拟显卡,其中,所述虚拟显卡通过所述虚拟机上的显示驱动程序进行驱动;所述虚拟机,被设置为通过所述显示驱动程序获取客户端连接云桌面的连接方式,并根 据所述连接方式驱动所述虚拟显卡根据所述连接方式对云桌面进行显示处理,以在客户端上显示处理后的云桌面,所述连接方式包括以下至少之一:所述客户端直接与云桌面连接的方式,或所述客户端通过云桌面主机连接所述云桌面的连接方式。
- 根据权利要求7所述的系统,其中,所述虚拟机,还被设置为在所述显示驱动程序接收到所述虚拟显卡的输入输出控制接口发送的指示信息的情况下,确定所述客户端采用的是直接与云桌面连接的连接方式;在所述显示驱动程序接收到所述云桌面主机发送的目标鼠标指令的情况下,确定所述客户端采用的是通过云桌面主机连接所述云桌面的连接方式。
- 一种计算机可读存储介质,其中,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被处理器执行时实现所述权利要求1至6任一项中所述的方法的步骤。
- 一种电子装置,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其中,所述处理器执行所述计算机程序时实现所述权利要求1至6任一项中所述的方法的步骤。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020237014359A KR20230074802A (ko) | 2020-09-30 | 2021-09-23 | 클라우드 데스크탑의 디스플레이 방법 및 시스템 |
US18/247,136 US20230410245A1 (en) | 2020-09-30 | 2021-09-23 | Cloud desktop display method and system |
EP21874332.6A EP4220377A4 (en) | 2020-09-30 | 2021-09-23 | METHOD AND SYSTEM FOR DISPLAYING A CLOUD DESKTOP |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011066250.7 | 2020-09-30 | ||
CN202011066250.7A CN114327318A (zh) | 2020-09-30 | 2020-09-30 | 云桌面的显示方法和系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2022068671A1 true WO2022068671A1 (zh) | 2022-04-07 |
Family
ID=80949592
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2021/119951 WO2022068671A1 (zh) | 2020-09-30 | 2021-09-23 | 云桌面的显示方法和系统 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20230410245A1 (zh) |
EP (1) | EP4220377A4 (zh) |
KR (1) | KR20230074802A (zh) |
CN (1) | CN114327318A (zh) |
WO (1) | WO2022068671A1 (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114756334A (zh) * | 2022-06-14 | 2022-07-15 | 海马云(天津)信息技术有限公司 | 服务器与基于服务器的图形渲染方法 |
CN115052043A (zh) * | 2022-06-14 | 2022-09-13 | 北京淳中科技股份有限公司 | 一种云桌面的视频传输方法、电子设备、装置及介质 |
CN116015852A (zh) * | 2022-12-26 | 2023-04-25 | 国网江苏省电力有限公司扬州供电分公司 | 一种基于国家电网信息的虚拟云桌面安全管理方法 |
WO2024061180A1 (zh) * | 2022-09-19 | 2024-03-28 | 杭州阿里云飞天信息技术有限公司 | 云桌面系统与云桌面显示方法、终端设备及存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101154166A (zh) * | 2006-09-25 | 2008-04-02 | 联想(北京)有限公司 | 一种虚拟机系统及其显卡访问方法 |
US9485290B1 (en) * | 2013-03-14 | 2016-11-01 | Parallels IP Holdings GmbH | Method and system for controlling local display and remote virtual desktop from a mobile device |
US10147115B1 (en) * | 2012-03-28 | 2018-12-04 | Vmware, Inc. | Displaying supplemental messages including advertisements or security notifications in a virtual desktop environment |
CN109712060A (zh) * | 2018-12-04 | 2019-05-03 | 成都雨云科技有限公司 | 一种基于gpu容器技术的云桌面显卡共享方法及系统 |
CN109819201A (zh) * | 2019-03-08 | 2019-05-28 | 厦门亿联网络技术股份有限公司 | 一种会议用辅流数据传输方法、显示方法、会议系统及外围设备 |
CN110647375A (zh) * | 2019-09-23 | 2020-01-03 | 天津卓朗科技发展有限公司 | 云桌面的图像渲染方法、装置和云服务器 |
CN111310155A (zh) * | 2019-11-28 | 2020-06-19 | 苏宁金融科技(南京)有限公司 | 一种用于滑块验证码自动识别的系统架构及实现方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107341020A (zh) * | 2017-07-12 | 2017-11-10 | 浙江键石信息科技有限公司 | 显卡虚拟化的实现方法及装置、桌面云系统及终端设备 |
-
2020
- 2020-09-30 CN CN202011066250.7A patent/CN114327318A/zh active Pending
-
2021
- 2021-09-23 US US18/247,136 patent/US20230410245A1/en active Pending
- 2021-09-23 WO PCT/CN2021/119951 patent/WO2022068671A1/zh unknown
- 2021-09-23 KR KR1020237014359A patent/KR20230074802A/ko unknown
- 2021-09-23 EP EP21874332.6A patent/EP4220377A4/en active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101154166A (zh) * | 2006-09-25 | 2008-04-02 | 联想(北京)有限公司 | 一种虚拟机系统及其显卡访问方法 |
US10147115B1 (en) * | 2012-03-28 | 2018-12-04 | Vmware, Inc. | Displaying supplemental messages including advertisements or security notifications in a virtual desktop environment |
US9485290B1 (en) * | 2013-03-14 | 2016-11-01 | Parallels IP Holdings GmbH | Method and system for controlling local display and remote virtual desktop from a mobile device |
CN109712060A (zh) * | 2018-12-04 | 2019-05-03 | 成都雨云科技有限公司 | 一种基于gpu容器技术的云桌面显卡共享方法及系统 |
CN109819201A (zh) * | 2019-03-08 | 2019-05-28 | 厦门亿联网络技术股份有限公司 | 一种会议用辅流数据传输方法、显示方法、会议系统及外围设备 |
CN110647375A (zh) * | 2019-09-23 | 2020-01-03 | 天津卓朗科技发展有限公司 | 云桌面的图像渲染方法、装置和云服务器 |
CN111310155A (zh) * | 2019-11-28 | 2020-06-19 | 苏宁金融科技(南京)有限公司 | 一种用于滑块验证码自动识别的系统架构及实现方法 |
Non-Patent Citations (1)
Title |
---|
See also references of EP4220377A4 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114756334A (zh) * | 2022-06-14 | 2022-07-15 | 海马云(天津)信息技术有限公司 | 服务器与基于服务器的图形渲染方法 |
CN115052043A (zh) * | 2022-06-14 | 2022-09-13 | 北京淳中科技股份有限公司 | 一种云桌面的视频传输方法、电子设备、装置及介质 |
CN114756334B (zh) * | 2022-06-14 | 2022-09-30 | 海马云(天津)信息技术有限公司 | 服务器与基于服务器的图形渲染方法 |
CN115052043B (zh) * | 2022-06-14 | 2024-03-29 | 北京淳中科技股份有限公司 | 一种云桌面的视频传输方法、电子设备、装置及介质 |
WO2024061180A1 (zh) * | 2022-09-19 | 2024-03-28 | 杭州阿里云飞天信息技术有限公司 | 云桌面系统与云桌面显示方法、终端设备及存储介质 |
CN116015852A (zh) * | 2022-12-26 | 2023-04-25 | 国网江苏省电力有限公司扬州供电分公司 | 一种基于国家电网信息的虚拟云桌面安全管理方法 |
Also Published As
Publication number | Publication date |
---|---|
EP4220377A1 (en) | 2023-08-02 |
KR20230074802A (ko) | 2023-05-31 |
EP4220377A4 (en) | 2024-03-27 |
US20230410245A1 (en) | 2023-12-21 |
CN114327318A (zh) | 2022-04-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2022068671A1 (zh) | 云桌面的显示方法和系统 | |
US11007435B2 (en) | Interactive interface for enabling and disabling input method | |
US8924564B2 (en) | Migration of client-side virtual machine system resources | |
CN111488196B (zh) | 渲染方法及装置、存储介质、处理器 | |
CN112486609B (zh) | 一种基于云桌面的虚拟显卡实现方法和装置 | |
US20240037060A1 (en) | Computing device, virtualization acceleration device, remote control method and storage medium | |
WO2015096516A1 (zh) | 一种vdi环境下的数据发送方法和装置 | |
US12026421B2 (en) | Screen sharing method, apparatus, and device, and storage medium | |
US20190325562A1 (en) | Window rendering method and terminal | |
US11868799B2 (en) | Command information transmission method, system, and apparatus, and readable storage medium | |
WO2019119315A1 (zh) | 基于多操作系统的输入处理方法、装置及电子设备 | |
US20240307767A1 (en) | Cloud Data Processing | |
CN110458748A (zh) | 数据传输方法、服务器及客户端 | |
CN114748873B (zh) | 界面渲染方法、装置、设备和存储介质 | |
US9286088B2 (en) | User interface for interaction with virtual machine | |
CN114691286A (zh) | 服务器系统、虚拟机创建方法及装置 | |
US11249771B2 (en) | Terminal input invocation | |
CN110442389B (zh) | 一种多桌面环境共享使用gpu的方法 | |
US9460481B2 (en) | Systems and methods for processing desktop graphics for remote display | |
US20230216731A1 (en) | Method and system for monitoring switch on basis of bmc, and device and medium | |
EP4418101A1 (en) | Data transmission system and method, service system, device, and storage medium | |
CN113452948B (zh) | 会议终端的控制方法、装置、设备及存储介质 | |
CN109634721B (zh) | 一种虚拟机与主机的启动通信方法及相关装置 | |
CN113835816A (zh) | 一种虚拟机桌面显示方法、装置、设备及可读存储介质 | |
CN109167808B (zh) | 一种数据处理方法、装置和系统 |
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: 21874332 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 20237014359 Country of ref document: KR Kind code of ref document: A |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
ENP | Entry into the national phase |
Ref document number: 2021874332 Country of ref document: EP Effective date: 20230427 |