Operating system switching method and device and electronic equipment

By switching GPU virtualization drivers between nodes in a cloud desktop environment, the problem that the cloud desktop environment can only support specific operating systems is solved, and multi-operation system support is realized, improving user experience and reducing operation and maintenance costs.

CN119225821APending Publication Date: 2024-12-31ZTE CORP
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202310793892.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-06-29
Publication Date
2024-12-31

AI Technical Summary

Technical Problem

The existing cloud desktop environment can only support a desktop operating system that is adapted to a specific version of GPU virtualization driver, and cannot meet the user's multiple operating system needs in different usage scenarios, affecting the user experience.

Method used

By switching GPU virtualization drivers between different computing nodes through management nodes, switching between different operating systems is achieved, supporting multiple different versions or types of operating systems, using the cloud desktop management platform to initiate driver switching commands, and install them on the target computing node. Adapted target GPU drivers to enable operating system switching.

Benefits of technology

The same cloud desktop environment supports multiple operating systems at the same time, meets the user's usage needs in different scenarios, improves user experience, reduces the environmental operation and maintenance costs, and expands the scope of application of cloud desktop GPU virtualization.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119225821A_ABST
    Figure CN119225821A_ABST
Patent Text Reader

Abstract

The embodiment of the invention provides an operating system switching method, electronic equipment and a computer readable medium. The method comprises the steps that a management node receives a drive switching command initiated based on a cloud desktop management platform; switching among different computing nodes according to the drive switching command, and configuring different operating systems and physical GPUs adapted to the operating systems on the different computing nodes respectively.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of computer technology, and in particular to a method, device and electronic device for switching an operating system. Background Art

[0002] In the related technology, when deploying cloud desktops, etc., usually a cloud desktop host can only install one version of the graphics processing unit (GPU) virtualization driver, so that a cloud desktop environment can only support one desktop operating system that is compatible with this version of the GPU virtualization driver, thereby failing to meet the user's requirements for different desktop operating systems in different usage scenarios, affecting the user experience. Summary of the invention

[0003] The purpose of the embodiments of the present application is to provide a method, device and electronic device for switching operating systems, which can meet the user's needs for using different desktop operating systems in different scenarios and improve the user experience.

[0004] To solve the above technical problems, the embodiments of the present application are implemented through the following aspects.

[0005] In a first aspect, an embodiment of the present application provides an operating system switching method, which is applied to a management node, and the method includes: receiving a driver switching command initiated based on a cloud desktop management platform; switching between different computing nodes according to the driver switching command, wherein different computing nodes are respectively configured with different operating systems and physical GPUs adapted to the operating systems.

[0006] In a second aspect, an embodiment of the present application provides an operating system switching method, which is applied to a target computing node, and the method includes: receiving a switching request sent by a management node, the switching request carrying a target GPU driver; installing and running the target GPU driver; wherein the target GPU driver is adapted to a target operating system deployed on the target computing node, the target computing node belongs to multiple different computing nodes, and different computing nodes are respectively configured with different operating systems and physical GPUs adapted to the operating system.

[0007] In a third aspect, an embodiment of the present application provides an electronic device, comprising: a memory, a processor, and computer executable instructions stored in the memory and executable on the processor, wherein the computer executable instructions, when executed by the processor, implement the steps of executing the method described in the first aspect or the second aspect.

[0008] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium, which is used to store computer-executable instructions. When the computer-executable instructions are executed by a processor, the steps of the method described in the first aspect or the second aspect are implemented.

[0009] In the embodiment of the present application, by receiving a driver switching command initiated based on a cloud desktop management platform, switching is performed between different computing nodes according to the driver switching command, wherein different computing nodes are respectively configured with different operating systems and physical GPUs adapted to the operating systems. Thus, a cloud desktop environment can simultaneously support multiple operating systems of different versions or types, solving the problem in the related art that a cloud desktop environment can only support one desktop operating system adapted to the GPU virtualization driver of that version, meeting the user's needs for using different desktop operating systems in different scenarios, and improving the user experience. BRIEF DESCRIPTION OF THE DRAWINGS

[0010] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments recorded in the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative labor.

[0011] Figure 1 A schematic diagram showing the structure of a communication network provided in an embodiment of the present application is shown.

[0012] Figure 2 One of the flowcharts of the method for switching operating systems provided in an embodiment of the present application is shown.

[0013] Figure 3 A second flowchart of the method for switching operating systems provided in an embodiment of the present application is shown.

[0014] Figure 4 A third flowchart of the method for switching operating systems provided in an embodiment of the present application is shown.

[0015] Figure 5 One of the structural schematic diagrams of the switching device of the operating system provided in the embodiment of the present application is shown.

[0016] Figure 6 A second structural schematic diagram of the operating system switching device provided in an embodiment of the present application is shown.

[0017] Figure 7 A schematic diagram of the hardware structure of an electronic device for executing the operating system switching method provided in an embodiment of the present application. DETAILED DESCRIPTION

[0018] In order to enable those skilled in the art to better understand the technical solutions in this application, the technical solutions in the embodiments of this application will be clearly and completely described below in conjunction with the drawings in the embodiments of this application. Obviously, the described embodiments are only part of the embodiments of this application, not all of them. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without creative work should fall within the scope of protection of this application.

[0019] For the related technology, the server side can only select one driver version (such as GPUU driver version) when the environment is deployed, and is limited by the driver version. For example, each driver version only supports one type of cloud desktop operating system. In addition, each cloud desktop manufacturer can only adapt and support the corresponding desktop operating system according to the driver support list provided by the graphics card manufacturer. As a result, the related technology cannot achieve downward or upward compatibility with different operating systems in a cloud desktop environment, and some operating systems that cannot be adapted need to be discarded.

[0020] In this regard, the present application provides an operating system switching method, an electronic device and a computer-readable medium, which can switch between different computing nodes through a management node to achieve the purpose of simultaneously supporting multiple versions or types of operating systems in the same cloud desktop environment, thereby meeting the user's needs for using different operating systems in different scenarios and improving the user experience.

[0021] like Figure 1 As shown, it is an architecture diagram of a communication system for implementing the technical solution of the present application provided by an embodiment of the present application. The system may include but is not limited to a cloud desktop management platform (usmartview), a management node (also referred to as a virtualization management center (Virtualization Management Center, VMC), also referred to as a management node server), multiple computing nodes (also referred to as computing node servers or hosts), and an authorization server (License server).

[0022] The cloud desktop management platform, as an operation and maintenance portal, can have built-in different versions of GPU virtualization drivers. For example, users can set different versions of virtual GPU (vGPU) drivers for different computing nodes on the cloud desktop management platform page. It can be understood that each virtual GPU driver is obtained by virtualizing the physical GPU drivers configured on different computing nodes. For example, in the cloud desktop scenario, the GPU driver (or graphics card) in the computing node can be virtualized into a virtual GPU driver and provided to the desktop operating system for use.

[0023] Management node, responsible for virtualization management, such as providing the function of switching the GPU virtualization driver version of the computing node.

[0024] Computing nodes are responsible for providing computing resources and GPU resources to run virtual machines, such as GPU virtualization functions that can support different desktop operating systems. In this application, different computing nodes can be configured with different operating systems (such as win7, win10, kylin, UOS, etc.) and physical GPUs (or hardware GPUs) that are compatible with the operating systems.

[0025] The authorization server is used to provide authorization requests with vGPU. For example, the authorization server can load different vGPU drivers according to the GRID license version included in the authorization request. For example, GPU virtualization requires the desktop operating system to obtain the authorization license from the authorization server before it can load the GRID driver normally.

[0026] A cloud desktop operating system is a cloud desktop using a vGPU. In this application, each computing node may correspond to a cloud desktop operating system (e.g. Figure 1 Windows 7 desktop, Windows 10 desktop, Kylin / UOS desktop, etc. shown). Optionally, in this application, the cloud desktop operating system and the corresponding computing node can be deployed on one physical node or on different physical nodes respectively, without limitation.

[0027] It is worth noting that the GPU mentioned in the context of this application is relative to the central processing unit (CPU) in the computer system. As people's demand for graphics is increasing, especially in home systems and game enthusiasts, and traditional CPUs cannot meet the current situation, it is necessary to provide a core processor dedicated to processing graphics. As the "heart" of the hardware graphics card, the GPU is equivalent to the role of the CPU in the computer system.

[0028] In addition, the aforementioned communication system is only an example. In actual application, the communication system may include Figure 1 This application does not limit the number of network units to more or less.

[0029] In this case, based on the information provided by this application Figure 1 The communication system shown in the embodiment of the present application also provides a Figure 2The method 200 for switching an operating system shown in the figure can be executed by a management node. In other words, the method 200 can be executed by software or hardware installed in the management node. The management node includes but is not limited to: a single server, a server cluster, a cloud server or a cloud server cluster, etc. Figure 2 As shown, the method 200 may include the following steps.

[0030] S210, receiving a driver switching command initiated by a cloud desktop management platform.

[0031] There are many ways to initiate the drive switching command, for example: Figure 1 As shown, when the cloud desktop management platform can display multiple different versions of GPU virtual drivers, the driver switching command can be initiated by the user based on one of the different versions of the GPU virtual drivers according to the needs, wherein the GPU virtual driver is obtained by virtualizing the physical GPU (also referred to as the physical GPU driver). In this embodiment, the GPU virtual driver corresponds to the physical GPU driver one by one.

[0032] It is worth noting that the cloud desktop management platform and the management node can be deployed on the same physical node, or the cloud desktop management platform and the management node can be deployed on different physical nodes, which is not limited here.

[0033] S220: Switch between different computing nodes according to the drive switching command.

[0034] Among them, different computing nodes are respectively configured with different operating systems and physical GPUs adapted to the operating systems. Therefore, by switching between different computing nodes, switching between different operating systems can be achieved, thereby achieving the purpose of a cloud desktop environment being able to simultaneously support multiple different versions or types of operating systems, solving the problem in the related technology that a cloud desktop environment can only support one desktop operating system adapted to this version of the GPU virtualization driver, meeting the user's needs for using different desktop operating systems in different scenarios, and improving the user experience.

[0035] Based on this, in one implementation, when the management node switches between different computing nodes according to the driver switching command, it can determine the target GPU driver (the target GPU driver corresponds to one of multiple different versions of GPU virtual drivers) according to the driver switching command, and then send a switching request to the target computing node, and the switching request carries the target GPU driver. The target computing node belongs to the different computing nodes and is deployed with a target operating system, and the target GPU driver is adapted to the target operating system.

[0036] Correspondingly, when the target computing node receives the switching request sent by the management node, it can install and run the target GPU driver, so that the target computing node can run the target operating system based on the target GPU driver, thereby achieving the purpose of switching the operating system. It can be understood that the target GPU driver is adapted to the target operating system deployed on the target computing node, and the target computing node belongs to multiple different computing nodes, and different computing nodes are respectively configured with different operating systems and physical GPUs adapted to the operating system.

[0037] In one implementation, before installing and running the target GPU driver, the target computing node may first determine whether the target GPU driver is consistent with the GPU driver already installed on the target computing node. If the target GPU driver is inconsistent with the GPU driver already installed on the computing node, the installed GPU driver may be uninstalled, and the steps of installing and running the target GPU driver may be performed to achieve smooth installation of the target GPU driver. Otherwise, the target GPU driver is ignored, that is, the target operating system is directly run based on the installed target GPU driver. Thus, the GPU driver installation process can be avoided, and the operating system switching efficiency can be greatly improved.

[0038] In one implementation, if a virtual machine running the target operating system (i.e., cloud desktop operating system) is deployed on the target computing node, then the target computing node can also obtain a virtual machine driver (such as a GRID driver) after determining that the target GPU driver has been installed, and install the virtual machine driver in the virtual machine through a virtual machine agent to achieve the purpose of running the target operating system based on the virtual machine. It can be understood that a virtual GPU driver corresponding to the cloud desktop operating system can be deployed in the virtual machine.

[0039] Among them, before executing the step of installing the virtual machine driver in the virtual machine through the virtual machine agent, the target computing node may also first determine the type of the target operating system running in the virtual machine. If it is determined that the type of the target operating system is compatible with the virtual machine driver, the installed virtual machine driver is uninstalled.

[0040] Of course, in the scenario where a virtual machine is configured on the target computing node to run a cloud desktop operating system (corresponding to the aforementioned target operating system), in order to improve the reliability of the virtual GPU operation, in this application, the cloud desktop operating system can also obtain authorization from the authorization server to load the virtual machine driver. In one implementation, the authorization server can support authorization management of virtual machine drivers corresponding to multiple different cloud desktop operating systems.

[0041] In the embodiment of the present application, by switching the GPU virtualization driver through the management node, the same GPU cloud desktop environment can be upwardly or downwardly compatible with different operating system versions or types, so that the same cloud desktop environment can simultaneously support multiple operating systems of different versions or types, thereby meeting the user's needs for different operating systems in different scenarios and improving the user experience.

[0042] In addition, based on the operating system switching solution provided by this application, customers with multiple operating system requirements do not need to build multiple environments, reducing costs and improving the efficiency of environmental operation and maintenance; and this application reuses the existing communication architecture and adopts a flexible desktop system switching method, which can meet more customer usage scenarios and expand the customer group and scope of application of cloud desktop GPU virtualization.

[0043] Based on the description of the switching method 200 of the aforementioned operating system, as shown in FIG. Figure 3 As shown, a switching solution for an operating system is provided by an exemplary embodiment of the present application, and its implementation process is as follows.

[0044] S301, assuming that the cloud desktop platform displays multiple different versions of GPU virtual drivers, when the user needs to switch the operating system, a driver switching command can be initiated based on the target GPU virtual driver among the multiple GPU virtual drivers displayed on the cloud desktop management platform.

[0045] S302: The management node receives and responds to the driver switching command, and determines a target GPU driver according to the driver switching command.

[0046] S303: The management node sends a signal carrying the target GPU driver switching request to the target computing node.

[0047] S304, when the target computing node receives the switching request, it determines whether the target GPU driver carried in the switching request is consistent with the installed GPU driver. If they are consistent, the process ends and the target operating system can be directly run; if they are inconsistent, execute S305.

[0048] S305, the target computing node uninstalls the installed GPU driver (such as . / NVIDIA-Linux-x86_64-***-vgpu-kvm.run--uninstall), and after uninstalling the installed GPU driver, installs the target GPU driver, such as (1) chmod+xNVDIA-Linux-x86_64-***-vgpu-kvm.run; (2). / NVDIA-Linux-x86_64-***-vgpu-kvm.run.

[0049] S306: The target computing node installs a virtual machine driver (ie, a GRID driver) into the virtual machine through a virtual machine agent.

[0050] S307: Determine the type of the target operating system running in the virtual machine.

[0051] S308, install the GRID driver according to the type of the target operating system. For example, if it is a Windows operating system (also called a Windows virtual machine), uninstall the installed GRID driver (such as msiexec.exe / X{***} / qb) and install a new GRID driver (such as msiexec / i***_grid_64bit_international.exe / qb).

[0052] If it is a Linux operating system (also called a Linux virtual machine), uninstall the installed GRID driver (such as . / NVDIA-Linux-x86_64-***-grid.Run--uninstall), and install a new GRID driver (such as . / NVDIA-Linux-x86_64-***-grid.Run).

[0053] S309, the target computing node is registered to the authorization server through the virtual machine. It can be understood that different versions of operating systems such as Windows and Linux can share the same authorization server, so the process ends and the target operating system can be directly run.

[0054] It can be understood that the implementation process of the aforementioned S301-S309 can refer to the relevant description in the aforementioned method embodiment 200. In order to avoid repetition, it will not be repeated here. However, it should be noted that the desktop operating system provided in this application may include but is not limited to the aforementioned S301-S309, and may include more or fewer steps than the aforementioned S301-S309.

[0055] The present application embodiment provides a Figure 4 The method 400 for switching the operating system shown in the figure can be executed by the target computing node. In other words, the method 400 can be executed by software or hardware installed in the target computing node. The target computing node includes but is not limited to: a single server, a server cluster, a cloud server or a cloud server cluster, etc. Figure 2 As shown, the method 400 may include the following steps.

[0056] S410, receiving a switching request sent by a management node, wherein the switching request carries a target GPU driver;

[0057] S420: Install and run the target GPU driver.

[0058] The target GPU driver is adapted to the target operating system deployed on the target computing node, the target computing node belongs to a plurality of different computing nodes, and different computing nodes are respectively configured with different operating systems and physical GPUs adapted to the operating systems.

[0059] Optionally, the method also includes: determining whether the target GPU driver is consistent with the GPU driver already installed on the target computing node; if the target GPU driver is inconsistent with the GPU driver already installed on the computing node, uninstalling the installed GPU driver, and executing the steps of installing and running the target GPU driver.

[0060] Optionally, a virtual machine running the target operating system is deployed on the target computing node, and the method further includes: obtaining a virtual machine driver when it is determined that the target GPU driver is installed; and installing the virtual machine driver in the virtual machine through a virtual machine agent.

[0061] Optionally, the method also includes: determining the type of the target operating system running in the virtual machine; when determining that the type of the target operating system is compatible with the virtual machine driver, uninstalling the installed virtual machine driver, and executing the step of installing the virtual machine driver in the virtual machine through the virtual machine agent.

[0062] It can be understood that each implementation method in the present method embodiment 400 has the same or corresponding technical features as the aforementioned method embodiment 200. Therefore, the implementation process of each implementation method in the present method embodiment 400 can refer to the relevant description in the aforementioned method embodiment 200, and achieve the same or corresponding technical features. To avoid repetition, it will not be repeated here.

[0063] Figure 5 A structural schematic diagram of an operating system switching device 500 provided in an embodiment of the present application is shown, and the device 500 includes: a receiving module 510, used to receive a driver switching command initiated based on a cloud desktop management platform; a switching module 520, used to switch between different computing nodes according to the driver switching command, wherein different computing nodes are respectively configured with different operating systems and physical GPUs adapted to the operating systems.

[0064] Optionally, the cloud desktop management platform displays multiple different versions of GPU virtual drivers, and the GPU virtual driver is obtained by virtualizing the physical GPU driver.

[0065] Optionally, the switching module 520 switches between different computing nodes according to the driver switching command, including: determining a target GPU driver according to the driver switching command, the target GPU driver corresponding to one of multiple different versions of GPU virtual drivers; sending a switching request to a target computing node, the switching request carrying the target GPU driver; wherein the target computing node belongs to the different computing nodes and is deployed with a target operating system, and the target GPU driver is adapted to the target operating system.

[0066] Optionally, the cloud desktop management platform and the management node are deployed on the same physical node, or the cloud desktop management platform and the management node are deployed on different physical nodes.

[0067] Figure 6 A structural schematic diagram of an operating system switching device 600 provided in an embodiment of the present application is shown, and the device 600 is applied to a target computing node, and the device 600 includes: a receiving module 610, used to receive a switching request sent by a management node, and the switching request carries a target GPU driver; an installation module 620, used to install and run the target GPU driver; wherein the target GPU driver is adapted to the target operating system deployed on the target computing node, and the target computing node belongs to a plurality of different computing nodes, and different computing nodes are respectively configured with different operating systems and physical GPUs adapted to the operating system.

[0068] Optionally, the device 600 also includes a determination module, used to determine whether the target GPU driver is consistent with the GPU driver already installed on the target computing node; and if the target GPU driver is inconsistent with the GPU driver already installed on the computing node, uninstalling the installed GPU driver, and executing the steps of installing and running the target GPU driver through the installation module.

[0069] Optionally, a virtual machine running the target operating system is deployed on the target computing node, and the determination module is further used to obtain a virtual machine driver when the target GPU driver is installed; and to install the virtual machine driver in the virtual machine through a virtual machine agent.

[0070] Optionally, the determination module is also used to determine the type of the target operating system running in the virtual machine; and when it is determined that the type of the target operating system is compatible with the virtual machine driver, uninstall the installed virtual machine driver and execute the step of installing the virtual machine driver in the virtual machine through the virtual machine agent.

[0071] The devices 500-600 provided in the embodiments of the present application can execute the methods described in the foregoing method embodiments and realize the functions and beneficial effects of the methods described in the foregoing method embodiments, which will not be described in detail here.

[0072] Figure 7 A schematic diagram of the hardware structure of an electronic device that implements the embodiment of the present application is shown. Referring to the figure, at the hardware level, the electronic device includes a processor, and optionally, an internal bus, a network interface, and a memory. Among them, the memory may include a memory, such as a high-speed random access memory (Random-Access Memory, RAM), and may also include a non-volatile memory (non-volatile memory), such as at least one disk storage, etc. Of course, the electronic device may also include hardware required for other services.

[0073] The processor, the network interface and the memory may be interconnected through an internal bus, which may be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus, etc. The bus may be divided into an address bus, a data bus, a control bus, etc. For ease of representation, only one bidirectional arrow is used in the figure, but it does not mean that there is only one bus or one type of bus.

[0074] The memory is used to store the program. Specifically, the program may include a program code, and the program code includes a computer operation instruction. The memory may include a memory and a non-volatile memory, and provides instructions and data to the processor.

[0075] The processor reads the corresponding computer program from the non-volatile memory into the memory and then runs it, forming a device for locating the specified user at the logical level. The processor executes the program stored in the memory and is specifically used to execute: Figure 2-Figure 4 The method disclosed in the illustrated embodiment realizes the functions and beneficial effects of each method described in the foregoing method embodiments, which will not be described in detail here.

[0076] The above application Figure 2-Figure 4The method disclosed in the illustrated embodiment can be applied to a processor or implemented by a processor. The processor may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method can be completed by an integrated logic circuit of hardware in the processor or an instruction in the form of software. The above processor can be a general-purpose processor, including a central processing unit (CPU), a network processor (NP), etc.; it can also be a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components. The methods, steps and logic block diagrams disclosed in the embodiments of the present application can be implemented or executed. The general-purpose processor can be a microprocessor or the processor can also be any conventional processor, etc. The steps of the method disclosed in the embodiments of the present application can be directly embodied as a hardware decoding processor for execution, or a combination of hardware and software modules in the decoding processor for execution. The software module can be located in a storage medium mature in the art such as a random access memory, a flash memory, a read-only memory, a programmable read-only memory, or an electrically erasable programmable memory, a register, etc. The storage medium is located in the memory, and the processor reads the information in the memory and completes the steps of the above method in combination with its hardware.

[0077] The electronic device can also execute the methods described in the foregoing method embodiments, and realize the functions and beneficial effects of the methods described in the foregoing method embodiments, which will not be repeated here.

[0078] Of course, in addition to software implementation methods, the electronic device of the present application does not exclude other implementation methods, such as logic devices or a combination of software and hardware, etc. That is to say, the execution subject of the following processing flow is not limited to each logic unit, but can also be hardware or logic devices.

[0079] The embodiment of the present application also provides a computer-readable storage medium, wherein the computer-readable medium stores one or more programs, and when the one or more programs are executed by an electronic device including a plurality of application programs, the electronic device executes Figure 2-Figure 4 The method disclosed in the illustrated embodiment realizes the functions and beneficial effects of each method described in the foregoing method embodiments, which will not be described in detail here.

[0080] The computer-readable storage medium includes a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk, etc.

[0081] Furthermore, an embodiment of the present application also provides a computer program product, the computer program product comprising a computer program stored on a non-transitory computer-readable storage medium, the computer program comprising program instructions, and when the program instructions are executed by a computer, the following process is implemented: Figure 2-Figure 4 The method disclosed in the illustrated embodiment realizes the functions and beneficial effects of each method described in the foregoing method embodiments, which will not be described in detail here.

[0082] In short, the above description is only a preferred embodiment of the present application and is not intended to limit the protection scope of the present application. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application shall be included in the protection scope of the present application.

[0083] The systems, devices, modules or units described in the above embodiments may be implemented by computer chips or entities, or by products with certain functions. A typical implementation device is a computer. Specifically, the computer may be, for example, a personal computer, a laptop computer, a cellular phone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or a combination of any of these devices.

[0084] Computer readable media include permanent and non-permanent, removable and non-removable media that can be implemented by any method or technology to store information. Information can be computer readable instructions, data structures, program modules or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disk read-only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices or any other non-transmission media that can be used to store information that can be accessed by a computing device. As defined herein, computer readable media does not include temporary computer readable media (transitory media), such as modulated data signals and carrier waves.

[0085] It should also be noted that the terms "include", "comprises" or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, commodity or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, commodity or device. In the absence of more restrictions, the elements defined by the sentence "comprises a ..." do not exclude the existence of other identical elements in the process, method, commodity or device including the elements.

[0086] Each embodiment in this specification is described in a progressive manner, and the same or similar parts between the embodiments can be referred to each other, and each embodiment focuses on the differences from other embodiments. In particular, for the system embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiment.

Claims

1. A method for switching an operating system, characterized in that: Applied to a management node, the method comprises: Receive a driver switching command initiated by the cloud desktop management platform; The driver switches between different computing nodes according to the driver switching command, wherein different computing nodes are respectively configured with different operating systems and physical GPUs adapted to the operating systems.

2. The method according to claim 1, characterized in that The cloud desktop management platform displays multiple different versions of GPU virtual drivers, and the GPU virtual driver is obtained by virtualizing the physical GPU driver.

3. The method according to claim 2, characterized in that Switching between different computing nodes according to the driver switching command includes: Determine a target GPU driver according to the driver switching command, wherein the target GPU driver corresponds to one of a plurality of different versions of GPU virtual drivers; Sending a switching request to a target computing node, wherein the switching request carries the target GPU driver; The target computing node belongs to the different computing nodes and is deployed with a target operating system, and the target GPU driver is adapted to the target operating system.

4. The method according to any one of claims 1 to 3, characterized in that The cloud desktop management platform and the management node are deployed on the same physical node, or the cloud desktop management platform and the management node are deployed on different physical nodes.

5. A method for switching an operating system, characterized in that: Applied to a target computing node, the method comprises: Receive a switching request sent by the management node, wherein the switching request carries a target GPU driver; Install and run the target GPU driver; The target GPU driver is adapted to the target operating system deployed on the target computing node, the target computing node belongs to a plurality of different computing nodes, and different computing nodes are respectively configured with different operating systems and physical GPUs adapted to the operating systems.

6. The method according to claim 5, characterized in that The method further comprises: Determine whether the target GPU driver is consistent with the GPU driver already installed on the target computing node; In the case that the target GPU driver is inconsistent with the GPU driver already installed on the computing node, the installed GPU driver is uninstalled, and the steps of installing and running the target GPU driver are performed.

7. The method according to claim 5, characterized in that A virtual machine running the target operating system is deployed on the target computing node, and the method further includes: When it is determined that the target GPU driver is installed, obtaining a virtual machine driver; The virtual machine driver is installed in the virtual machine through a virtual machine agent.

8. The method according to claim 7, characterized in that The method further comprises: Determining the type of the target operating system running in the virtual machine; When it is determined that the type of the target operating system is compatible with the virtual machine driver, the installed virtual machine driver is uninstalled, and the step of installing the virtual machine driver in the virtual machine through the virtual machine agent is performed.

9. An electronic device, characterized in that: include: processor; as well as A memory arranged to store computer executable instructions which, when executed, cause the processor to perform the steps of the method of any one of claims 1 to 8.

10. A computer-readable medium, characterized in that The computer-readable medium stores one or more programs, which, when executed by an electronic device including a plurality of application programs, enable the electronic device to perform the steps of the method according to any one of claims 1 to 8.