A virtual machine processing method and device, electronic equipment and storage medium

CN116149792BActive Publication Date: 2026-09-15SHENZHEN WEIKE SOFTWARE TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202310172166.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-02-21
Publication Date
2026-09-15
Estimated Expiration
2043-02-21

AI Technical Summary

Technical Problem

[0003]但是,在有些情况下,无法给用户分配虚拟机,这时用户只能长时间等待,无法进行上述事项,体验不佳,有待改进

Benefits of technology

[0018] The technical solution of this invention, in response to a virtual machine operation request sent by a user terminal, determines a snapshot identifier, wherein the target snapshot represented by the snapshot identifier is used to virtualize the virtual machine requesting operation; for the physical machine corresponding to the virtual machine, if the physical machine resources are occupied, target multimedia data is determined according to the snapshot identifier, wherein the target multimedia data is obtained by operating the target virtual machine virtualized based on the target snapshot; the target multimedia data is returned to the user terminal so that the user terminal can display the target multimedia data. The technical solution of this invention, in the absence of idle physical machine resources, allows the user terminal to display the target multimedia data, thereby eliminating the need for prolonged waiting and enabling the user to browse the target multimedia data through the user terminal, thus optimizing the user's operation experience when idle physical machine resources are unavailable.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116149792B_ABST
    Figure CN116149792B_ABST
Patent Text Reader

Abstract

Embodiments of the present application disclose a virtual machine processing method and device, electronic equipment and storage medium. The method comprises: in response to a virtual machine real operation request sent by a user terminal, determining a snapshot identifier, wherein the target snapshot represented by the snapshot identifier is used to virtualize a real operation virtual machine for requesting real operation; for the physical machine corresponding to the real operation virtual machine, in the case that the physical machine resource of the physical machine is in an occupied state, determining target multimedia data according to the snapshot identifier, wherein the target multimedia data is obtained by real operation on the target virtual machine virtualized based on the target snapshot; and returning the target multimedia data to the user terminal to enable the user terminal to display the target multimedia data. The technical solution of the embodiments of the present application enables the user terminal to display the target multimedia data for virtual machine real operation in the case that there is no idle physical machine resource, so that the user does not need to be in a waiting state for a long time, and can browse the target multimedia data through the user terminal, thereby optimizing the real operation experience of the user in the case that there is no idle physical machine resource.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of computer technology, and in particular to a virtual machine processing method, apparatus, electronic device and storage medium. Background Technology

[0002] Currently, users can perform practical tasks using the assigned virtual machines. For example, users can practice virtual machine operations using the cloud desktop service provided by the assigned virtual machine.

[0003] However, in some cases, it is impossible to allocate a virtual machine to a user. In such cases, the user can only wait for a long time and cannot perform the above-mentioned tasks, resulting in a poor experience that needs to be improved. Summary of the Invention

[0004] This invention provides a virtual machine processing method, apparatus, electronic device, and storage medium. By enabling users to view target multimedia data in virtual machine operation on a user terminal when there are no idle physical machine resources, users can browse the target multimedia data on their user terminal without having to wait for a long time, thereby optimizing the user's operation experience when there are no idle physical machine resources.

[0005] According to one aspect of the present invention, a virtual machine processing method is provided, which may include:

[0006] In response to a virtual machine practice request sent by a user terminal, a snapshot identifier is determined, wherein the target snapshot represented by the snapshot identifier is used to virtualize the practice virtual machine for which the practice is requested.

[0007] For the physical machine corresponding to the virtual machine, when the physical machine resources are occupied, the target multimedia data is determined according to the snapshot identifier. The target multimedia data is obtained by performing operations on the target virtual machine virtualized based on the target snapshot.

[0008] The target multimedia data is returned to the user terminal so that the user terminal can display the target multimedia data.

[0009] According to another aspect of the present invention, a virtual machine processing apparatus is provided, which may include:

[0010] The snapshot identifier determination module is used to determine the snapshot identifier in response to the virtual machine operation request sent by the user terminal, wherein the target snapshot represented by the snapshot identifier is used to virtualize the operation virtual machine for which the operation is requested.

[0011] The target multimedia data determination module is used to determine the target multimedia data based on the snapshot identifier for the physical machine corresponding to the virtual machine being operated, when the physical machine resources of the physical machine are occupied. The target multimedia data is obtained by operating the target virtual machine virtualized based on the target snapshot.

[0012] The target multimedia data display module is used to return the target multimedia data to the user terminal so that the user terminal can display the target multimedia data.

[0013] According to another aspect of the present invention, an electronic device is provided, which may include:

[0014] At least one processor; and

[0015] A memory that is communicatively connected to at least one processor; wherein,

[0016] The memory stores a computer program that can be executed by at least one processor, such that when the at least one processor executes the program, it implements the virtual machine processing method provided in any embodiment of the present invention.

[0017] According to another aspect of the present invention, a computer-readable storage medium is provided having computer instructions stored thereon for causing a processor to execute and implement the virtual machine processing method provided in any embodiment of the present invention.

[0018] The technical solution of this invention, in response to a virtual machine operation request sent by a user terminal, determines a snapshot identifier, wherein the target snapshot represented by the snapshot identifier is used to virtualize the virtual machine requesting operation; for the physical machine corresponding to the virtual machine, if the physical machine resources are occupied, target multimedia data is determined according to the snapshot identifier, wherein the target multimedia data is obtained by operating the target virtual machine virtualized based on the target snapshot; the target multimedia data is returned to the user terminal so that the user terminal can display the target multimedia data. The technical solution of this invention, in the absence of idle physical machine resources, allows the user terminal to display the target multimedia data, thereby eliminating the need for prolonged waiting and enabling the user to browse the target multimedia data through the user terminal, thus optimizing the user's operation experience when idle physical machine resources are unavailable.

[0019] It should be understood that the description in this section is not intended to identify key or important features of the embodiments of the present invention, nor is it intended to limit the scope of the invention. Other features of the invention will become readily apparent from the following description. Attached Figure Description

[0020] To more clearly illustrate the technical solutions in the embodiments of the present invention, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0021] Figure 1 This is a flowchart of a virtual machine processing method provided in Embodiment 1 of the present invention;

[0022] Figure 2 This is a flowchart of a virtual machine processing method provided in Embodiment 2 of the present invention;

[0023] Figure 3 This is a schematic diagram of an optional example of a virtual machine processing method provided in Embodiment 2 of the present invention;

[0024] Figure 4 This is a structural block diagram of the virtual machine processing device provided in Embodiment 3 of the present invention;

[0025] Figure 5 This is a schematic diagram of the structure of an electronic device that implements the virtual machine processing method of this invention. Detailed Implementation

[0026] To enable those skilled in the art to better understand the present invention, the technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings of the embodiments of the present invention. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort should fall within the scope of protection of the present invention.

[0027] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this invention are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that embodiments of the invention described herein can be implemented in orders other than those illustrated or described herein. The same applies to "target," "original," etc., and will not be repeated here. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.

[0028] Example 1

[0029] Figure 1 This is a flowchart of a virtual machine processing method provided in Embodiment 1 of the present invention. This embodiment is applicable to virtual machine processing scenarios. The method can be executed by the virtual machine processing device provided in this embodiment of the present invention. The device can be implemented by software and / or hardware, and can be integrated into an electronic device, which can be various user terminals or servers.

[0030] See Figure 1 The method of this invention specifically includes the following steps:

[0031] S110. In response to the virtual machine practice request sent by the user terminal, determine the snapshot identifier, wherein the target snapshot represented by the snapshot identifier is used to virtualize the practice virtual machine for which the practice is requested.

[0032] The user terminal can be a mobile phone, computer, or tablet. A virtual machine practice request can be understood as a request to perform practice on a virtual machine; for example, a virtual machine practice request can be a request from a cloud desktop on the user terminal in response to a user's operation of virtual buttons on the cloud desktop. Practice can be understood as real-time operation on a virtual machine, for example, real-time practice by the user using software and / or practice exercises installed on the virtual machine. A target snapshot can be understood as a snapshot of the virtual machine requesting practice; the target snapshot can be a snapshot pre-installed with the software and / or practice exercises required by the user, and can be used to virtualize a virtual machine with the software and / or practice exercises required by the user installed. A snapshot identifier can be understood as an identifier corresponding to the target snapshot; the snapshot identifier can be, for example, numbers and / or letters, etc. In this embodiment of the invention, the display format of the snapshot identifier is not specifically limited. A practice virtual machine can be understood as a virtual machine that allows the user to perform practice.

[0033] It is important to note that a snapshot is a fully usable copy of a specified set of data, including an image of the corresponding data at a certain point in time (the time the copy begins). In embodiments of the invention, for example, a snapshot can be created for a virtual machine with the software and / or practical exercises installed as the target snapshot. As another example, if there are at least one virtual machine with different software and / or practical exercises installed, at least one different snapshot can be created for each different software and / or practical exercise, and these at least one different snapshot can be used as at least one candidate snapshot; each candidate snapshot can have a corresponding snapshot identifier, so that the target snapshot can be determined from the at least one candidate snapshot based on the snapshot identifier.

[0034] In this embodiment of the invention, a snapshot identifier can be determined in response to a virtual machine practice request sent by a user terminal. For example, the virtual machine practice request may correspond to or represent relevant information about the target practice questions that the user needs to practice. The snapshot identifier corresponding to the target practice questions is determined based on the relevant information about the target practice questions that the user needs to practice. The target snapshot represented by the snapshot identifier is pre-loaded with the target practice questions.

[0035] S120. For the physical machine corresponding to the virtual machine, when the physical machine resources are occupied, the target multimedia data is determined according to the snapshot identifier. The target multimedia data is obtained by performing operations on the target virtual machine virtualized based on the target snapshot.

[0036] In this invention, a physical machine can be understood as a physical computer capable of virtualizing virtual machines; a physical machine can virtualize at least one virtual machine; in this embodiment, the number of physical machines can be at least one. Target multimedia data can be understood as multimedia data obtained by performing operations on a target virtual machine virtualized based on a target snapshot, such as live video, recorded video, screenshots of the operation, or recorded explanations of the operation performed on the target virtual machine virtualized based on the target snapshot; in this embodiment, the content and type of the target multimedia data are not specifically limited. A target virtual machine can be understood as a virtual machine virtualized based on a target snapshot, and for example, a virtual machine virtualized based on a target snapshot by a user other than the current user.

[0037] In this embodiment of the invention, the physical machine resources being occupied can be a situation where the occupancy of at least one of the physical machine's memory, central processing unit (CPU), and disk exceeds a preset threshold corresponding to memory, CPU, and disk, respectively. For example, if the preset threshold for physical machine memory is 80%, and the physical machine's memory occupancy is 90%, then the physical machine resources can be considered to be occupied. The physical machine resources being occupied can also be a situation where there are no free physical machine resources, so that the physical machine resources are insufficient to virtualize a practical virtual machine.

[0038] In this embodiment of the invention, when there is at least one physical machine, and the physical machine resources of the physical machine corresponding to the virtual machine are occupied, before determining the target multimedia data based on the snapshot identifier, the physical machine corresponding to the virtual machine can also be determined based on the snapshot identifier, the identifier of the user terminal, or the privilege level of the user terminal.

[0039] S130. Return the target multimedia data to the user terminal so that the user terminal can display the target multimedia data.

[0040] In this embodiment of the invention, target multimedia data can be returned to the user terminal so that the user terminal can display the target multimedia data. For example, the target multimedia data can be displayed through a cloud desktop or Web Real-Time Communications (WebRTC) on the user terminal. This allows users to observe the practice process of other users, replacing their own practice using a virtual machine, in situations where it is difficult to provide available virtual machine services for new users to practice in a short time due to a large number of users or insufficient physical machine resources. This optimizes the user experience when physical machine resources are unavailable. In this embodiment of the invention, the technology used to display the target multimedia data on the user terminal is not specifically limited.

[0041] In this embodiment of the invention, the target multimedia data can also be returned to the user terminal so that the user terminal can display the target multimedia data until the physical machine's resources are available. Then, a virtual machine is virtualized based on the target snapshot and allocated to the user terminal for operation. The availability of physical machine resources can be defined as the physical machine's memory, central processing unit (CPU), and disk usage all exceeding preset thresholds for memory, CPU, and disk respectively. Alternatively, the availability of physical machine resources can also mean that there are idle physical machine resources available, sufficient to virtualize the virtual machine.

[0042] The technical solution of this invention, in response to a virtual machine operation request sent by a user terminal, determines a snapshot identifier, wherein the target snapshot represented by the snapshot identifier is used to virtualize the virtual machine for which operation is requested; for the physical machine corresponding to the virtual machine, if the physical machine resources are occupied, target multimedia data is determined according to the snapshot identifier, wherein the target multimedia data is obtained by operating the target virtual machine virtualized based on the target snapshot; the target multimedia data is returned to the user terminal so that the user terminal can display the target multimedia data. The technical solution of this invention, by enabling the user terminal to display the target multimedia data for virtual machine operation even when there are no idle physical machine resources, allows the user to browse the target multimedia data through the user terminal without having to wait for a long time, thereby optimizing the user's operation experience when there are no idle physical machine resources.

[0043] An optional technical solution for determining target multimedia data based on a snapshot identifier includes: determining at least one first historical multimedia data obtained by performing operations on at least one historical virtual machine based on the snapshot identifier, wherein the at least one historical virtual machine is virtualized based on the target snapshot history; randomly determining the target multimedia data from the at least one first historical multimedia data, or using the first historical multimedia data whose operation score meets a preset scoring condition as the target multimedia data, wherein the first historical multimedia data is obtained by performing operations on at least one historical virtual machine.

[0044] Among them, a historical virtual machine can be understood as a virtual machine virtualized based on the target snapshot in history; a historical virtual machine can be a virtual machine virtualized based on the target snapshot before the user terminal sends a virtual machine operation request; a historical virtual machine can also be a virtual machine virtualized based on the target snapshot in history but which does not currently exist.

[0045] In this embodiment of the invention, multimedia data can be collected from the process of historical users performing practical operations through historical virtual machines. At least one multimedia data collected can be used as at least one first historical multimedia data. The first historical multimedia data can be, for example, a video recording of the practical operation of the historical virtual machine, a screenshot of the practical operation, or a video recording of the practical operation explanation. In this embodiment of the invention, the content and type of the first historical multimedia data are not specifically limited.

[0046] In this embodiment of the invention, at least one first historical multimedia data obtained by operating at least one historical virtual machine is determined according to the snapshot identifier. Specifically, it can be that at least one first historical multimedia data corresponding to at least one historical virtual machine virtualized from the target snapshot history represented by the snapshot identifier is determined according to the snapshot identifier; or it can be that the identifier of at least one historical virtual machine virtualized from the target snapshot history represented by the snapshot identifier is determined according to the snapshot identifier; and at least one first historical multimedia data corresponding to at least one historical virtual machine is determined according to the identifier of at least one historical virtual machine.

[0047] It is understandable that, since the number of determined first historical multimedia data is at least one, and since the number of target multimedia data simultaneously displayed by the user terminal is generally only one, a target multimedia data to be returned to the user terminal can be determined from at least one first historical multimedia data. In this embodiment of the invention, the target multimedia data can be randomly determined from at least one first historical multimedia data; or, at least one first historical multimedia data can be pre-scored in practice. This practice score can be a score of the accuracy of the practice, a score of the completeness of the first historical multimedia data, or a score of the quality of the first historical multimedia data itself. For example, if the first historical multimedia data is a video recording, the practice score can be a score of the image quality of the first historical multimedia data. The first historical multimedia data whose practice score meets the preset scoring condition is taken as the target multimedia data. The preset scoring condition can be, for example, the first historical multimedia data with the highest practice score.

[0048] In this embodiment of the invention, it can also be to estimate the waiting time for the physical machine resources of the physical machine to change from an occupied state to an available state, and select the first historical multimedia data whose playback time is closest to the waiting time as the target multimedia data.

[0049] In this embodiment of the invention, the target multimedia data may be returned to the user terminal so that after the user terminal displays the target multimedia data, if the physical machine resources are still occupied while the user terminal has finished displaying the target multimedia data, another first historical multimedia data is randomly selected from other first historical multimedia data besides the target multimedia data and updated as the target multimedia data, or the first historical multimedia data that meets the preset scoring conditions from other first historical multimedia data besides the target multimedia data is updated as the target multimedia data, and the target multimedia data is returned to the user terminal so that the user terminal can display the target multimedia data. This process is repeated until the physical machine resources are available.

[0050] In this embodiment of the invention, at least one first historical multimedia data obtained by performing practical operations on at least one historical virtual machine is determined according to the snapshot identifier; target multimedia data is randomly determined from at least one first historical multimedia data, or the first historical multimedia data whose practical operation score meets the preset scoring conditions is used as the target multimedia data. This allows the user terminal to display the practical operation data of the historical virtual machine even when there are no idle physical machine resources, thereby further optimizing the user's practical operation experience when there are no idle physical machine resources.

[0051] Another alternative technical solution, the virtual machine processing method, further includes: when the physical machine resources of the physical machine are available, determining the target snapshot represented by the snapshot identifier from at least one candidate snapshot; virtualizing the actual virtual machine based on the target snapshot, and allocating the actual virtual machine to the user terminal so that the user terminal can operate the actual virtual machine.

[0052] In this embodiment of the invention, when the physical machine resources are available, it means that the current physical machine resources can meet the requirement of virtualizing and allocating a virtual machine for the user. Then, the target snapshot represented by the snapshot identifier is determined from at least one candidate snapshot. The virtual machine is virtualized based on the target snapshot and allocated to the user terminal so that the user terminal can operate the virtual machine. This can realize that when there are available physical machine resources, the most suitable virtual machine can be virtualized and allocated to the user according to the user's operation needs represented by the snapshot identifier.

[0053] In this embodiment of the invention, at least one candidate virtual machine can be pre-virtualized for each of the at least one candidate snapshot. If the physical machine's resources are available (meaning there are idle candidate virtual machines among the at least one candidate virtual machines corresponding to the target snapshot), the idle candidate virtual machine can be directly allocated to the user terminal. Conversely, if the physical machine's resources are available (meaning there are no idle candidate virtual machines among the at least one candidate virtual machine corresponding to the target snapshot), the target multimedia data is determined based on the snapshot identifier and returned to the user terminal so that the user terminal can display the target multimedia data.

[0054] Another optional technical solution, the virtual machine processing method, further includes: responding to a practical reference request sent by a user terminal, determining reference multimedia data based on a snapshot identifier, wherein the reference multimedia data is obtained by performing practical operations on a reference virtual machine virtualized based on a target snapshot; and returning the reference multimedia data to the user terminal.

[0055] In this context, "practical reference request" can be understood as a request to refer to practical operations performed by other users. "Reference multimedia data" can be understood as multimedia data obtained through practical operations performed on a reference virtual machine virtualized based on the target snapshot. For example, it could be live video, recorded video, screenshots of practical operations, or recorded explanations of practical operations performed on the reference virtual machine virtualized based on the target snapshot. In this embodiment of the invention, the content and type of the reference multimedia data are not specifically limited. "Reference virtual machine" can be understood as a virtual machine virtualized based on the target snapshot that can provide practical access to the reference multimedia data. For example, a reference virtual machine could be a virtual machine virtualized based on the target snapshot by users other than the current user.

[0056] In this embodiment of the invention, there may be situations where users need to refer to the practical data of other users for practical learning before practicing, or need to refer to the practical data of other users after practicing to verify the accuracy of their own practice. In the above situations, in response to the practical reference request sent by the user terminal, the reference multimedia data can be determined according to the snapshot identifier; and the reference multimedia data can be returned to the user terminal.

[0057] Specifically, in response to a practical reference request sent by a user terminal, at least one initial reference virtual machine corresponding to the snapshot identifier can be determined from at least one candidate virtual machine based on the snapshot identifier. A reference virtual machine can then be determined from the at least one initial reference virtual machine, and reference multimedia data obtained through practical operation on the reference virtual machine can be identified. Alternatively, in response to a practical reference request sent by a user terminal, at least one third historical multimedia data obtained through practical operation on at least one historical virtual machine can be determined based on the snapshot identifier. Reference multimedia data can be randomly determined from the at least one third historical multimedia data, or the third historical multimedia data whose practical operation score meets a preset scoring condition can be used as reference multimedia data. The third historical multimedia data is obtained through practical operation on at least one historical virtual machine. The reference multimedia data is then fed back to the user terminal. Here, a candidate virtual machine can be understood as a currently existing virtual machine virtualized from a physical machine; an initial reference virtual machine can be understood as a virtual machine virtualized based on a target snapshot; and third historical multimedia data can be understood as multimedia data obtained by collecting multimedia data from the process of historical users performing practical operation on historical virtual machines. The above solution allows users to perceive the practical behavior of other users when working on the same practical exercise question, learn from the excellent practical experience of other users, and improve the fun of practical exercises.

[0058] It should be noted that, in this embodiment of the invention, the specific process of responding to a practical reference request sent by a user terminal, determining at least one third historical multimedia data obtained by practicing on at least one historical virtual machine according to a snapshot identifier, randomly determining reference multimedia data from at least one third historical multimedia data, or using third historical multimedia data whose practical score meets a preset scoring condition as reference multimedia data, is the same as the process described above of determining at least one first historical multimedia data obtained by practicing on at least one historical virtual machine according to a snapshot identifier; randomly determining target multimedia data from at least one first historical multimedia data, or using first historical multimedia data whose practical score meets a preset scoring condition as target multimedia data. Therefore, it will not be described in detail here.

[0059] Example 2

[0060] Figure 2 This is a flowchart of another virtual machine processing method provided in Embodiment 2 of the present invention. This embodiment is based on the above-described technical solutions and optimized. In this embodiment, optionally, determining the target multimedia data according to the snapshot identifier includes: determining at least one snapshot virtual machine corresponding to the snapshot identifier from at least one candidate virtual machine, wherein the at least one snapshot virtual machine is virtualized through the target snapshot; determining the target virtual machine from the at least one snapshot virtual machine; and determining the target multimedia data obtained by performing operations on the target virtual machine. The explanations of terms that are the same as or corresponding to those in the above embodiments are not repeated here.

[0061] See Figure 2 The method in this embodiment may specifically include the following steps:

[0062] S210. In response to the virtual machine operation request sent by the user terminal, determine the snapshot identifier, wherein the target snapshot represented by the snapshot identifier is used to virtualize the operation virtual machine for which the operation is requested.

[0063] S220. For the physical machine corresponding to the actual virtual machine, when the physical machine resources are occupied, determine at least one snapshot virtual machine corresponding to the snapshot identifier from at least one candidate virtual machine, wherein at least one snapshot virtual machine is virtualized by the target snapshot.

[0064] Among them, a snapshot virtual machine can be understood as a virtual machine virtualized based on a target snapshot.

[0065] In this embodiment of the invention, for the physical machine corresponding to the actual virtual machine, when the physical machine resources of the physical machine are occupied, at least one snapshot virtual machine corresponding to the snapshot identifier can be determined from at least one currently existing candidate virtual machine.

[0066] S230. Determine the target virtual machine from at least one snapshot virtual machine.

[0067] It is understandable that, since at least one snapshot virtual machine is identified, and since the user terminal typically displays only one target multimedia data obtained through hands-on practice based on the target virtual machine, it is sufficient to select one target virtual machine from at least one snapshot virtual machine for hands-on practice to obtain the target multimedia data. In this embodiment of the invention, the target virtual machine can be randomly selected from at least one snapshot virtual machine, or a snapshot virtual machine whose virtual machine score meets a preset virtual machine scoring condition can be used as the target virtual machine. The virtual machine score can be a score of the accuracy of the user's hands-on practice based on the snapshot virtual machine, or a score of the current virtual machine's popularity. For example, if the multimedia data corresponding to the snapshot virtual machine is live video, the virtual machine score can be a score corresponding to the number of viewers of the multimedia data corresponding to the snapshot virtual machine. The preset virtual machine scoring condition can be, for example, the snapshot virtual machine with the highest virtual machine score.

[0068] S240. Determine the target multimedia data obtained by operating the target virtual machine, wherein the target multimedia data is obtained by operating the target virtual machine virtualized based on the target snapshot.

[0069] S250. Return the target multimedia data to the user terminal so that the user terminal can display the target multimedia data.

[0070] The technical solution of this invention involves determining at least one snapshot virtual machine corresponding to a snapshot identifier from at least one candidate virtual machine, wherein the at least one snapshot virtual machine is virtualized from a target snapshot; determining a target virtual machine from the at least one snapshot virtual machine; and determining target multimedia data obtained by operating the target virtual machine. This solution, by filtering the target virtual machine, facilitates the acquisition of high-quality target multimedia data, thereby further optimizing the user's operating experience when there are no available physical machine resources.

[0071] An optional technical solution involves determining a target virtual machine from at least one snapshot virtual machine, including: determining a target virtual machine in a real-time operation state from at least one snapshot virtual machine; and determining target multimedia data obtained by operating the target virtual machine, including: using the multimedia data generated by the target virtual machine in the real-time operation state as the target multimedia data.

[0072] In this context, the real-time operation status can be understood as the snapshot virtual machine being operated by the user.

[0073] In this embodiment of the invention, a target virtual machine in a real-time operation state can be determined from at least one snapshot virtual machine, and the multimedia data generated by the target virtual machine in the real-time operation state is used as target multimedia data, which may be, for example, live video. This solution allows users to perceive the operation process of other users in real time, understand the latest user operation status, and further enhance the user's immersive experience when there are no available physical machine resources, thereby optimizing the user's operation experience when there are no available physical machine resources.

[0074] An optional technical solution, which determines the target multimedia data based on a snapshot identifier, further includes: if at least one snapshot virtual machine is not successfully determined, determining at least one second historical multimedia data obtained by operating at least one historical virtual machine based on the snapshot identifier, wherein the at least one historical virtual machine is based on the target snapshot historical virtualization; randomly determining the target multimedia data from at least one second historical multimedia data, or using the second historical multimedia data from at least one second historical multimedia data whose operation score meets a preset scoring condition as the target multimedia data, wherein the second historical multimedia data is obtained by operating at at least one historical virtual machine.

[0075] In this embodiment of the invention, multimedia data can be collected from the process of historical users performing practical operations through historical virtual machines. At least one multimedia data collected can be used as at least one second historical multimedia data. The second historical multimedia data can be, for example, a video recording of the practical operation of the historical virtual machine, a screenshot of the practical operation, or a video recording of the practical operation explanation. In this embodiment of the invention, the content and type of the second historical multimedia data are not specifically limited.

[0076] In this embodiment of the invention, if at least one snapshot virtual machine is not successfully determined, for example, if there is no virtual machine virtualized based on the target snapshot, or if there is no virtual machine in a real-time operation state among the virtual machines virtualized based on the target snapshot, at least one second historical multimedia data obtained by operating at least one historical virtual machine is determined according to the snapshot identifier. Specifically, it can be that at least one second historical multimedia data corresponding to at least one historical virtual machine virtualized based on the target snapshot is determined according to the snapshot identifier; or it can be that the identifier of at least one historical virtual machine virtualized based on the target snapshot is determined according to the snapshot identifier; and at least one second historical multimedia data corresponding to each of the at least one historical virtual machine is determined according to the identifier of the at least one historical virtual machine.

[0077] It is understandable that, since the number of determined second historical multimedia data is at least one, and since the number of target multimedia data simultaneously displayed by the user terminal is generally only one, a target multimedia data can be determined from at least one second historical multimedia data and returned to the user terminal. In this embodiment of the invention, the target multimedia data can be randomly determined from at least one second historical multimedia data; or, at least one second historical multimedia data can be pre-scored in practice. This practice score can be a score of the accuracy of the practice, a score of the completeness of the second historical multimedia data, or a score of the quality of the second historical multimedia data itself. For example, if the second historical multimedia data is a video recording, the practice score can be a score of the image quality of the second historical multimedia data. The second historical multimedia data whose practice score meets the preset scoring condition is taken as the target multimedia data. The preset scoring condition can be, for example, the second historical multimedia data with the highest practice score.

[0078] In this embodiment of the invention, if at least one snapshot virtual machine is not successfully identified, at least one second historical multimedia data obtained by performing practical operations on at least one historical virtual machine is determined according to the snapshot identifier; target multimedia data is randomly determined from at least one second historical multimedia data, or the second historical multimedia data whose practical operation score meets the preset scoring condition is taken as the target multimedia data. This allows the user terminal to display the practical operation data of the historical virtual machine even if at least one snapshot virtual machine is not successfully identified, thereby further optimizing the user's practical operation experience when there are no idle physical machine resources.

[0079] To better understand the technical solutions of the above embodiments of the present invention, an optional example is provided herein. For example, see... Figure 3 Taking a virtual machine operation request sent by user A through their corresponding user terminal as an example, the system responds to the request and determines a snapshot identifier. For the physical machine corresponding to the virtual machine operation request, if the physical machine's resources are occupied due to the virtualization of virtual machines A and B, the system determines virtual machine A virtualized through the target snapshot based on the snapshot identifier, thereby obtaining the target multimedia data produced by user A through operation on virtual machine A. The target multimedia data is then returned to user A's corresponding user terminal so that user A can view the target multimedia data through their corresponding user terminal. It should be noted that the processing procedure for a virtual machine operation request sent by user B through their corresponding user terminal is similar to the process described above for a virtual machine operation request sent by user A through their corresponding user terminal.

[0080] Example 3

[0081] Figure 4 This is a structural block diagram of the virtual machine processing apparatus provided in Embodiment 3 of the present invention. This apparatus is used to execute the virtual machine processing method provided in any of the above embodiments. This apparatus and the virtual machine processing methods of the above embodiments belong to the same inventive concept. Details not described in detail in the embodiments of the virtual machine processing apparatus can be found in the embodiments of the above virtual machine processing methods. See also... Figure 4 The device may specifically include: a snapshot identification determination module 310, a target multimedia data determination module 320, and a target multimedia data display module 330.

[0082] The snapshot identifier determination module 310 is used to determine the snapshot identifier in response to the virtual machine operation request sent by the user terminal. The target snapshot represented by the snapshot identifier is used to virtualize the operation virtual machine for which the operation is requested.

[0083] The target multimedia data determination module 320 is used to determine the target multimedia data based on the snapshot identifier for the physical machine corresponding to the virtual machine being operated, when the physical machine resources of the physical machine are occupied. The target multimedia data is obtained by operating the target virtual machine virtualized based on the target snapshot.

[0084] The target multimedia data display module 330 is used to return the target multimedia data to the user terminal so that the user terminal can display the target multimedia data.

[0085] Optionally, the target multimedia data determination module 320 may include:

[0086] The first historical multimedia data determination unit is used to determine at least one first historical multimedia data obtained by performing operations on at least one historical virtual machine based on the snapshot identifier, wherein the at least one historical virtual machine is virtualized based on the target snapshot history.

[0087] The target multimedia data determination unit is used to randomly determine target multimedia data from at least one first historical multimedia data, or to use the first historical multimedia data whose practical scoring meets the preset scoring conditions as target multimedia data, wherein the first historical multimedia data is obtained by performing practical operations on at least one historical virtual machine.

[0088] Optionally, the target multimedia data determination module 320 may include:

[0089] A snapshot virtual machine determining unit is used to determine at least one snapshot virtual machine corresponding to a snapshot identifier from at least one candidate virtual machine, wherein the at least one snapshot virtual machine is virtualized by a target snapshot;

[0090] The target virtual machine determination unit is used to determine the target virtual machine from at least one snapshot virtual machine;

[0091] The target multimedia data acquisition unit is used to determine the target multimedia data obtained by performing operations on the target virtual machine.

[0092] Based on the above scheme, optionally, the target virtual machine determination unit may include:

[0093] The target virtual machine determination subunit is used to determine the target virtual machine in real-time operation state from at least one snapshot virtual machine;

[0094] The target multimedia data acquisition unit may include:

[0095] The target multimedia data is used as a sub-unit to take the multimedia data generated by the target virtual machine in real-time operation and use it as the target multimedia data.

[0096] Based on the above scheme, optionally, the target multimedia data determination module 320 may also include:

[0097] The second historical multimedia data obtaining unit is used to determine at least one second historical multimedia data obtained by operating at least one historical virtual machine based on the snapshot identifier when at least one snapshot virtual machine is not successfully determined, wherein at least one historical virtual machine is virtualized based on the target snapshot history.

[0098] The target multimedia data is used as a unit to randomly determine the target multimedia data from at least one second historical multimedia data, or to use the second historical multimedia data from at least one second historical multimedia data whose practical scoring meets the preset scoring conditions as the target multimedia data, wherein the second historical multimedia data is obtained by performing practical operations on at least one historical virtual machine.

[0099] Optionally, the virtual machine processing device may also include:

[0100] The target snapshot determination module is used to determine the target snapshot represented by the snapshot identifier from at least one candidate snapshot, provided that the physical machine resources of the physical machine are available.

[0101] The practical virtual machine allocation module is used to virtualize practical virtual machines based on the target snapshot and allocate them to user terminals so that users can operate the practical virtual machines through the user terminals.

[0102] Optionally, the virtual machine processing device may also include:

[0103] The reference multimedia data determination module is used to determine the reference multimedia data based on the snapshot identifier in response to the practical reference request sent by the user terminal. The reference multimedia data is obtained by performing practical operations on the reference virtual machine virtualized based on the target snapshot.

[0104] The multimedia data return module is used to return reference multimedia data to the user terminal.

[0105] The virtual machine processing apparatus provided in this embodiment of the invention responds to a virtual machine operation request sent by a user terminal by a snapshot identifier determination module, which determines a snapshot identifier. The target snapshot represented by the snapshot identifier is used to virtualize the virtual machine for which operation is requested. A target multimedia data determination module, for the physical machine corresponding to the virtual machine, determines the target multimedia data based on the snapshot identifier when the physical machine's resources are occupied. The target multimedia data is obtained by operating the target virtual machine virtualized based on the target snapshot. A target multimedia data display module returns the target multimedia data to the user terminal so that the user terminal can display the target multimedia data. This apparatus, by enabling the user terminal to display the target multimedia data for virtual machine operation even when there are no available physical machine resources, allows the user to browse the target multimedia data without prolonged waiting, thereby optimizing the user's operation experience when there are no available physical machine resources.

[0106] The virtual machine processing device provided in the embodiments of the present invention can execute the virtual machine processing method provided in any embodiment of the present invention, and has the corresponding functional modules and beneficial effects of executing the method.

[0107] It is worth noting that in the embodiments of the virtual machine processing device described above, the various units and modules included are only divided according to functional logic, but are not limited to the above division, as long as the corresponding functions can be achieved; in addition, the specific names of each functional unit are only for easy differentiation and are not used to limit the scope of protection of the present invention.

[0108] Example 4

[0109] Figure 5A schematic diagram of an electronic device 10 that can be used to implement embodiments of the present invention is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital processors, cellular phones, smartphones, wearable devices (e.g., helmets, glasses, watches, etc.), and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely illustrative and are not intended to limit the implementation of the invention described and / or claimed herein.

[0110] like Figure 5 As shown, the electronic device 10 includes at least one processor 11 and a memory, such as a read-only memory (ROM) 12 or a random access memory (RAM) 13, communicatively connected to the at least one processor 11. The memory stores computer programs executable by the at least one processor. The processor 11 can perform various appropriate actions and processes based on the computer program stored in the ROM 12 or loaded into the RAM 13 from storage unit 18. The RAM 13 can also store various programs and data required for the operation of the electronic device 10. The processor 11, ROM 12, and RAM 13 are interconnected via a bus 14. An input / output (I / O) interface 15 is also connected to the bus 14.

[0111] Multiple components in electronic device 10 are connected to I / O interface 15, including: input unit 16, such as keyboard, mouse, etc.; output unit 17, such as various types of displays, speakers, etc.; storage unit 18, such as disk, optical disk, etc.; and communication unit 19, such as network card, modem, wireless transceiver, etc. Communication unit 19 allows electronic device 10 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.

[0112] Processor 11 can be a variety of general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of processor 11 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. Processor 11 performs the various methods and processes described above, such as virtual machine processing methods.

[0113] In some embodiments, the virtual machine processing method may be implemented as a computer program tangibly contained in a computer-readable storage medium, such as storage unit 18. In some embodiments, part or all of the computer program may be loaded and / or installed on electronic device 10 via ROM 12 and / or communication unit 19. When the computer program is loaded into RAM 13 and executed by processor 11, one or more steps of the virtual machine processing method described above may be performed. Alternatively, in other embodiments, processor 11 may be configured to execute the virtual machine processing method by any other suitable means (e.g., by means of firmware).

[0114] Various embodiments of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems-on-a-chip (SoCs), payload-programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include implementations in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general-purpose programmable processor, capable of receiving data and instructions from a storage system, at least one input device, and at least one output device, and transmitting data and instructions to the storage system, the at least one input device, and the at least one output device.

[0115] Computer programs used to implement the methods of the present invention can be written in any combination of one or more programming languages. These computer programs can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, such that when executed by the processor, the computer programs cause the functions / operations specified in the flowcharts and / or block diagrams to be implemented. The computer programs can be executed entirely on a machine, partially on a machine, as a standalone software package partially on a machine and partially on a remote machine, or entirely on a remote machine or server.

[0116] In the context of this invention, a computer-readable storage medium can be a tangible medium that may contain or store a computer program for use by or in conjunction with an instruction execution system, apparatus, or device. A computer-readable storage medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination thereof. Alternatively, a computer-readable storage medium may be a machine-readable signal medium. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fibers, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof.

[0117] To provide interaction with a user, the systems and techniques described herein can be implemented on an electronic device having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the electronic device. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).

[0118] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as data servers), or computing systems that include middleware components (e.g., application servers), or computing systems that include frontend components (e.g., user computers with graphical user interfaces or web browsers through which users can interact with implementations of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication of any form or medium (e.g., communication networks). Examples of communication networks include local area networks (LANs), wide area networks (WANs), blockchain networks, and the Internet.

[0119] A computing system can include clients and servers. Clients and servers are generally located far apart and typically interact through communication networks. The client-server relationship is created by computer programs running on the respective computers and having a client-server relationship with each other. The server can be a cloud server, also known as a cloud computing server or cloud host, which is a hosting product within the cloud computing service system to address the shortcomings of traditional physical hosts and VPS services, such as high management difficulty and weak business scalability.

[0120] It should be understood that the various forms of processes shown above can be used, with steps reordered, added, or deleted. For example, the steps described in this invention can be executed in parallel, sequentially, or in different orders, as long as the desired result of the technical solution of this invention can be achieved, and this is not limited herein.

[0121] The specific embodiments described above do not constitute a limitation on the scope of protection of this invention. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this invention should be included within the scope of protection of this invention.

Claims

1. A virtual machine processing method, characterized in that, include: In response to a virtual machine practice request sent by a user terminal, a snapshot identifier is determined, wherein the target snapshot represented by the snapshot identifier is used to virtualize the practice virtual machine for which the practice is requested; For the physical machine corresponding to the virtual machine being used, when the physical machine resources of the physical machine are occupied, the target multimedia data is determined according to the snapshot identifier, wherein the target multimedia data is obtained by performing operations on the target virtual machine virtualized based on the target snapshot; The target multimedia data is returned to the user terminal so that the user terminal can display the target multimedia data.

2. The method according to claim 1, characterized in that, The step of determining the target multimedia data based on the snapshot identifier includes: Based on the snapshot identifier, at least one first historical multimedia data obtained by operating at at least one historical virtual machine is determined, wherein the at least one historical virtual machine is virtualized based on the target snapshot history; Target multimedia data is randomly determined from the at least one first historical multimedia data, or the first historical multimedia data whose practical scoring meets the preset scoring conditions is used as the target multimedia data, wherein the first historical multimedia data is obtained by performing practical operations on the at least one historical virtual machine.

3. The method according to claim 1, characterized in that, The step of determining the target multimedia data based on the snapshot identifier includes: At least one snapshot virtual machine corresponding to the snapshot identifier is determined from at least one candidate virtual machine, wherein the at least one snapshot virtual machine is virtualized through the target snapshot; The target virtual machine is determined from the at least one snapshot virtual machine; The target multimedia data is determined by performing operations on the target virtual machine.

4. The method according to claim 3, characterized in that, Determining the target virtual machine from the at least one snapshot virtual machine includes: Identify the target virtual machine in real-time operation state from the at least one snapshot virtual machine; The determination of the target multimedia data obtained by performing operations on the target virtual machine includes: The multimedia data generated by the target virtual machine in the real-time operation state is taken as the target multimedia data.

5. The method according to claim 3, characterized in that, The step of determining the target multimedia data based on the snapshot identifier further includes: If the at least one snapshot virtual machine is not successfully identified, at least one second historical multimedia data obtained by operating at least one historical virtual machine is determined based on the snapshot identifier, wherein the at least one historical virtual machine is virtualized based on the target snapshot history; Target multimedia data is randomly determined from the at least one second historical multimedia data, or the second historical multimedia data whose practical scoring meets the preset scoring conditions is used as the target multimedia data, wherein the second historical multimedia data is obtained by performing practical operations on the at least one historical virtual machine.

6. The method according to claim 1, characterized in that, Also includes: When the physical machine resources of the physical machine are available, the target snapshot represented by the snapshot identifier is determined from at least one candidate snapshot; The operational virtual machine is virtualized based on the target snapshot, and the operational virtual machine is assigned to the user terminal so that the user terminal can operate the operational virtual machine.

7. The method according to claim 1, characterized in that, Also includes: In response to a practical reference request sent by a user terminal, reference multimedia data is determined based on the snapshot identifier, wherein the reference multimedia data is obtained by performing practical operations on a reference virtual machine virtualized based on the target snapshot; The reference multimedia data is returned to the user terminal.

8. A virtual machine processing device, characterized in that, include: The snapshot identifier determination module is used to determine a snapshot identifier in response to a virtual machine operation request sent by a user terminal, wherein the target snapshot represented by the snapshot identifier is used to virtualize the operation virtual machine for which the operation is requested. The target multimedia data determination module is used to determine the target multimedia data based on the snapshot identifier for the physical machine corresponding to the virtual machine being operated on, when the physical machine resources of the physical machine are occupied. The target multimedia data is obtained by operating on the target virtual machine virtualized based on the target snapshot. The target multimedia data display module is used to return the target multimedia data to the user terminal so that the user terminal can display the target multimedia data.

9. An electronic device, characterized in that, include: At least one processor; as well as A memory communicatively connected to the at least one processor; wherein, The memory stores a computer program that can be executed by the at least one processor, the computer program being executed by the at least one processor to cause the at least one processor to perform the virtual machine processing method as described in any one of claims 1-7.

10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer instructions that cause a processor to execute the virtual machine processing method as described in any one of claims 1-7.

Citation Information

Patent Citations

  • Monitoring video processing method, physical server and memory medium

    CN107959824A

  • Cloud computing system, and control method and program for the same

    JP2012174196A