Cloud firmware generation method, hypervisor boot method, electronic device, and medium
By generating and integrating lightweight BIOS and virtualization platforms into cloud firmware, the complex and security risks of the virtualization platform startup process is solved, and a rapid simplified startup process and reduced security risks are achieved.
Patent Information
- Application Number
- PCT/CN2024/116582
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-10-31
- Filing Date
- 2024-09-03
- Publication Date
- 2025-05-08
AI Technical Summary
The startup process of the existing virtualization platform is complex and time-consuming, increasing security risks, and the existence of multi-system software makes the system bloated and it is difficult to upgrade and maintain.
By generating a lightweight basic input and output system (BIOS) and virtualization platform, it is integrated into cloud firmware and launching the virtualization platform directly from the startup media, simplifying the startup process, shortening the startup time, and reducing security risks.
It realizes the rapid simplified startup of the virtualization platform, reduces security risks, and enhances the maintainability of cloud firmware.
Smart Images

Figure CN2024116582_08052025_PF_FP_ABST
Abstract
Description
Cloud firmware generation method and virtualization platform startup method, electronic device, and medium
[0001] CROSS-REFERENCE TO RELATED APPLICATIONS
[0002] This application claims priority to Chinese Patent Application No. 202311436146.6 filed with the China Patent Office on October 31, 2023, the entire contents of which are incorporated herein by reference. Technical Field
[0003] The embodiments of the present application relate to, but are not limited to, the field of virtualization technology. Background Art
[0004] Virtualization technology abstracts the various physical resources of a computer, presenting one or more computer configuration environments, achieving the separation of the operating system and the physical computer, allowing multiple virtual machine systems to run simultaneously on a physical computer.
[0005] A virtualization platform (Hypervisor) uses virtualization technology to provide functions such as creating, running, and managing virtual machines. Currently, there are many mainstream hypervisors, such as Kernel-based Virtual Machine (KVM), Xen, VMware, and Hyper-V.
[0006] Currently, the Hypervisor takes a long time to start up, the startup process is complicated, and it also increases the security risks of the Hypervisor.
[0007] Summary of the Invention
[0008] Embodiments of the present application provide a cloud firmware generation method and a virtualization platform startup method, a startup medium, an electronic device, and a computer-readable medium.
[0009] In a first aspect, an embodiment of the present application provides a method for starting a virtualization platform, comprising: starting a lightweight basic input / output system in cloud firmware from a startup medium; wherein the cloud firmware is generated based on the virtualization platform and the lightweight basic input / output system; after starting the lightweight basic input / output system, starting the virtualization platform in the cloud firmware from the startup medium.
[0010] In a second aspect, an embodiment of the present application provides a cloud firmware generation method, comprising: performing lightweight processing on a basic input / output system; and generating cloud firmware based on a virtualization platform and the lightweight processed basic input / output system.
[0011] In a third aspect, an embodiment of the present application provides a boot medium, which stores cloud firmware; wherein the cloud firmware is generated based on a virtualization platform and a lightweight basic input and output system.
[0012] In a fourth aspect, an embodiment of the present application provides an electronic device comprising: at least one processor; a memory, wherein at least one program is stored in the memory, and when the at least one program is executed by the at least one processor, any one of the virtualization platform startup methods described herein is implemented, or any one of the cloud firmware generation methods described herein is implemented.
[0013] In a fifth aspect, an embodiment of the present application provides a computer-readable medium having a computer program stored thereon. When the computer program is executed by a processor, the computer program implements any one of the virtualization platform startup methods described herein, or implements any one of the cloud firmware generation methods described herein. BRIEF DESCRIPTION OF THE DRAWINGS
[0014] FIG1 is a schematic diagram of cloud firmware in the related art;
[0015] FIG2 is a schematic diagram of starting a virtualization platform in the related art;
[0016] FIG3 is a flowchart of a method for starting a virtualization platform provided by one embodiment of the present application;
[0017] FIG4 is a schematic diagram of a cloud firmware according to an embodiment of the present application;
[0018] FIG5 is a schematic diagram of another cloud firmware according to an embodiment of the present application;
[0019] FIG6 is a schematic diagram of starting a virtualization platform according to an embodiment of the present application;
[0020] FIG7 is a flowchart of a cloud firmware generation method provided by another embodiment of the present application;
[0021] FIG8 is a block diagram of the composition of an electronic device provided in another embodiment of the present application. DETAILED DESCRIPTION
[0022] In order to enable those skilled in the art to better understand the technical solution of the present application, the cloud firmware generation and startup method, startup medium, electronic device, and computer-readable medium provided by the present application are described in detail below in conjunction with the accompanying drawings.
[0023] Example embodiments will be described more fully hereinafter with reference to the accompanying drawings, but the example embodiments may be embodied in different forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided so that this application will be thorough and complete and will fully convey the scope of this application to those skilled in the art.
[0024] In the absence of conflict, the various embodiments of the present application and the various features therein may be combined with each other.
[0025] As used herein, the term "and / or" includes any and all combinations of at least one of the associated listed items.
[0026] The terms used herein are used only to describe specific embodiments and are not intended to limit this application. As used herein, the singular forms "a," "an," and "the" are also intended to include the plural forms, unless the context clearly indicates otherwise. It will also be understood that when the terms "comprising" and / or "made of" are used in this specification, the presence of the features, wholes, steps, operations, elements, and / or components is specified, but the presence or addition of at least one other feature, whole, step, operation, element, component, and / or group thereof is not excluded.
[0027] Unless otherwise defined, all terms (including technical and scientific terms) used herein have the same meaning as commonly understood by one of ordinary skill in the art. It will also be understood that terms such as those defined in commonly used dictionaries should be interpreted as having a meaning consistent with their meaning in the context of the relevant art and this application, and will not be interpreted as having an idealized or overly formal meaning unless expressly defined as such herein.
[0028] As shown in Figure 2, the current hypervisor startup process is as follows: After the server is powered on, the cloud firmware is loaded from the boot medium. As shown in Figure 1, the cloud firmware includes the Basic Input Output System (BIOS). The BIOS includes: security verification (SEC), pre-EFI initialization (PEI), driver execution environment (DXE), boot device selection (BDS), and transient system load (TSL).
[0029] Start the BIOS in the cloud firmware to initialize the central processing unit (CPU) and CPU internal resources through SEC, establish temporary memory, pass system parameters to PEI, and transfer system control to PEI; initialize the memory according to the system parameters through PEI, configure and initialize the system's boot device and boot mode, prepare the execution environment for DXE, and transfer system control to DXE; load and execute various hardware device drivers through DXE, including graphics card drivers, storage device drivers, network device drivers, etc., build and initialize the device tree, and provide a series of services and protocols for use by the operating system and applications; execute the boot policy through BDS; load the operating system through TSL.
[0030] After the BIOS is started, the operating system boot loader (GRUB), the operating system, and the hypervisor are loaded from the disk. GRUB then boots and loads the operating system kernel based on the GRUB configuration information. After the operating system kernel is loaded, system control begins to be controlled by the operating system kernel. The kernel loads the operating system and gradually initializes other operating system modules, completing the operating system startup. Finally, the hypervisor is started and virtual machines are created through the hypervisor for cloud users to use.
[0031] The system parameters include: current system status, startup firmware address, startup firmware size, temporary random access memory (RAM) area address, temporary RAM area size and other information.
[0032] The above boot process is for hosted virtualization implementations. Hosted virtualization refers to a hypervisor, an application running on top of the host operating system, which abstracts hardware resources and manages virtual machines. Alternatively, native virtualization, also known as bare metal virtualization, runs directly on the hardware rather than on the host operating system. The hypervisor provides instruction sets and device interfaces to support virtual machines. The boot process for native virtualization implementations does not require the kernel to load an operating system.
[0033] The boot process above illustrates that, regardless of whether hosted or native virtualization is implemented, the system undergoes multiple distinct stages from server power-on to successful hypervisor boot. System control passes from the BIOS to GRUB, to the operating system, to the hypervisor, and finally to the virtual machine. Tampering or sabotage of any part of the boot process by hackers could cause the virtual machine to fail to boot. Furthermore, hackers could potentially implant monitoring programs or bypass permission restrictions, thereby monitoring all virtual machine activity and potentially leaking information. This complex boot process not only increases hypervisor boot time but also increases hypervisor security risks.
[0034] Furthermore, the hypervisor boot process involves multiple system software components, including the BIOS, GRUB, operating system, and hypervisor. These components are large in size and may harbor multiple security vulnerabilities, increasing the difficulty of security protection and the attack surface of the system software. Furthermore, the presence of multiple system software components makes the entire system software stack appear bloated, making software upgrades and maintenance more difficult.
[0035] FIG3 is a flowchart of a method for starting a virtualization platform provided by an embodiment of the present application.
[0036] In a first aspect, referring to FIG. 3 , an embodiment of the present application provides a method for starting a virtualization platform, which may include steps 300 and 301 .
[0037] Step 300: Start the lightweight BIOS in the cloud firmware from the startup medium; wherein the cloud firmware is generated according to the virtualization platform and the lightweight BIOS.
[0038] In some exemplary embodiments, booting the lightweight BIOS in the cloud firmware from the boot medium includes: loading the lightweight BIOS from the boot medium, and running the lightweight BIOS.
[0039] In some exemplary embodiments, the lightweight BIOS is obtained by: compiling the BIOS to generate a BIOS file package; and performing lightweight processing on the BIOS file package to obtain the lightweight BIOS.
[0040] In some exemplary embodiments, performing lightweight processing on the BIOS file package to obtain a lightweight BIOS includes: deleting files corresponding to non-essential modules in the BIOS file package to obtain a target BIOS file package; and obtaining the lightweight BIOS based on the target BIOS file package.
[0041] In some exemplary embodiments, the target BIOS file package may be used as a lightweight BIOS.
[0042] In some exemplary embodiments, performing lightweight processing on a BIOS file package to obtain a lightweight BIOS includes: generating a module list based on the BIOS file package; wherein the module list includes: unique identifiers of modules in the BIOS; deleting unique identifiers of non-essential modules in the module list; and obtaining the lightweight BIOS based on files corresponding to the unique identifiers of modules that have not been deleted from the module list in the BIOS file package.
[0043] In some exemplary embodiments, the non-essential module includes at least one of the following: a non-essential driver and a third-party module.
[0044] In some exemplary embodiments, non-essential drivers refer to drivers that are not used in the actual startup process and drivers that already exist in the virtualization platform, including at least one of the following: unnecessary hardware device drivers, unnecessary file system support modules, unnecessary network protocol modules, unnecessary security modules, etc.
[0045] In some exemplary embodiments, the third-party module includes at least one of the following: a module written by a hardware manufacturer, a firmware developer, or other third-party developers to extend and enhance BIOS functions.
[0046] In some exemplary embodiments, the virtualization platform is a virtualization platform that has not been lightweighted.
[0047] In some exemplary embodiments, the virtualization platform is a lightweight virtualization platform.
[0048] In some exemplary embodiments, as shown in Figure 4, the cloud firmware includes: a virtualization platform and a lightweight BIOS. In other words, the virtualization platform is a complete virtualization platform, not a lightweight virtualization platform.
[0049] In some exemplary embodiments, the lightly post-processed BIOS includes SEC, PEI, and lightly post-processed DXE.
[0050] In some exemplary embodiments, the lightweight DXE refers to a DXE that includes a module corresponding to the unique identifier in the lightweight DXE module list; wherein the lightweight DXE module list includes unique identifiers other than the deleted unique identifiers.
[0051] In some exemplary embodiments, a virtualization platform, also known as a hypervisor or virtual machine monitor, is an intermediate layer of software running between a physical server and an operating system, allowing at least two operating systems and applications to share a set of underlying physical hardware. For example, a virtualization platform can be a hypervisor. For example, a Linux system containing a Kernel-based Virtual Machine (KVM) module can be considered a native virtualization hypervisor.
[0052] In some exemplary embodiments, the cloud firmware is generated based on the lightweight BIOS and the virtualization platform, including: the cloud firmware is compiled from a virtualization file package, and the virtualization file package is generated based on the virtualization platform and the lightweight BIOS.
[0053] In some exemplary embodiments, the lightweight BIOS and the virtualization platform may be combined into a virtualization file package according to a preset agreed format.
[0054] In some exemplary embodiments, the preset agreed format may be a public agreed format or a user-defined agreed format.
[0055] In some exemplary embodiments, the disclosed agreed format may be, for example, the Unified Extensible Firmware Interface (UEFI) firmware file format. When using the UEFI firmware file format, the virtualization platform may be stored as a single firmware file in a firmware file system. This ultimately generates a virtualization file package in the UEFI firmware format.
[0056] In some exemplary embodiments, generating the cloud firmware based on the virtualization platform and the lightweight BIOS includes generating a cloud firmware package based on the lightweight BIOS and the lightweight virtualization platform. In other words, the virtualization platform may be a lightweight virtualization platform.
[0057] In some exemplary embodiments, cloud firmware is generated based on the lightweight BIOS and the lightweight virtualization platform, including: cloud firmware is compiled from a virtualization file package, and the virtualization file package is generated based on the lightweight BIOS and the lightweight virtualization platform.
[0058] In some exemplary embodiments, when the size of the cloud firmware obtained based on the virtualization platform and the lightweight BIOS is smaller than the storage space of the boot medium, the cloud firmware is generated based on the virtualization platform and the lightweight BIOS; when the size of the cloud firmware obtained based on the lightweight BIOS and the virtualization platform is greater than or equal to the storage space of the boot medium, the cloud firmware is generated based on the lightweight BIOS and the lightweight virtualization platform.
[0059] In some exemplary embodiments, as shown in FIG5 , the cloud firmware includes: a lightweight BIOS and a lightweight post-processed virtualization platform.
[0060] In some exemplary embodiments, the lightweight BIOS and the lightweight virtualization platform may be combined into a virtualization file package according to a preset agreed format.
[0061] In some exemplary embodiments, the preset agreed format may be a public agreed format or a user-defined agreed format.
[0062] In some exemplary embodiments, the publicly agreed format may be, for example, a unified UEFI Firmware file format. When using the UEFI Firmware file format, the lightweight virtualized platform can be stored as a single Firmware File in a Firmware File System. This ultimately generates a virtualized file package in the UEFI Firmware format.
[0063] In some exemplary embodiments, the lightweight virtualization platform is obtained by deleting unnecessary modules and redundant modules in the virtualization platform.
[0064] In some exemplary embodiments, the lightweight virtualization platform is obtained in the following manner: generating a root file system; copying the root file system to a kernel folder; deleting non-essential modules and redundant modules in the kernel folder; compiling the kernel after deleting non-essential modules and redundant modules, and generating a kernel file package, which is the lightweight virtualization platform.
[0065] In some exemplary embodiments, non-essential modules and redundant modules refer to modules that are not used in actual needs and hardware configurations, including at least one of the following: unnecessary virtual device simulators, unnecessary virtualization extension modules, unnecessary monitoring modules, unused file systems, unused network protocol modules, unused device driver modules, etc.
[0066] In the embodiments of this application, Intel and Advanced Micro Devices (AMD) have successively launched x86 processors that support hardware virtualization. Hardware virtualization technology enables many previously complex virtualization functions to be implemented in hardware, greatly simplifying the implementation of the virtualization platform and enabling the operating system to run without any modification. In addition to x86 processors, other processors have also added virtualization support in their hardware, and hardware-assisted virtualization technology has gradually become mainstream.
[0067] In some exemplary embodiments, as shown in FIG6 , the lightweight post-processed BIOS in the cloud firmware is started to initialize the CPU and CPU internal resources through SEC, establish temporary memory, pass system parameters to PEI, and transfer system control to PEI; initialize the memory according to the system parameters through PEI, configure and initialize the system's boot device and boot mode, prepare the execution environment for DXE, and transfer system control to DXE; load and execute the unique identifier of the module in the DXE module list after deleting the unique identifier of the non-essential module through DXE, build and initialize the device tree, and provide a series of services and protocols for use by the operating system and applications.
[0068] Step 301: After starting the lightweight BIOS, start the virtualization platform in the cloud firmware from the startup medium.
[0069] In some exemplary embodiments, starting the virtualization platform in the cloud firmware from the startup medium includes: loading the virtualization platform in the cloud firmware from the startup medium and running the virtualization platform.
[0070] In some exemplary embodiments, as shown in FIG6 , the virtualization platform in the cloud firmware can be loaded from the boot medium at the same time as the lightweight BIOS is loaded from the boot medium; or the virtualization platform in the cloud firmware can be loaded from the boot medium after the lightweight BIOS is loaded from the boot medium and before the lightweight BIOS is run; or the virtualization platform in the cloud firmware can be loaded from the boot medium after the lightweight BIOS is run.
[0071] In some exemplary embodiments, starting the virtualization platform in the cloud firmware from the startup medium and running the virtualization platform includes: starting the lightweight virtualization platform in the cloud firmware from the startup medium and running the lightweight virtualization platform.
[0072] In some exemplary embodiments, starting the lightweight virtualization platform in the cloud firmware from the startup medium includes: loading the lightweight virtualization platform from the startup medium, and running the lightweight virtualization platform.
[0073] The virtualization platform startup method provided in the embodiment of the present application integrates the virtualization platform into the cloud firmware and directly starts the virtualization platform from the startup medium, which simplifies the startup process, shortens the startup time, reduces the security risks of the virtualization platform, and enhances the maintainability of the cloud firmware.
[0074] FIG7 is a flowchart of a cloud firmware generation method provided by another embodiment of the present application.
[0075] In a second aspect, referring to FIG. 7 , another embodiment of the present application provides a cloud firmware generation method, which may include steps 700 and 701 .
[0076] Step 700: Lightweight the BIOS.
[0077] In some exemplary embodiments, performing lightweight processing on the BIOS includes: compiling the BIOS to generate a BIOS file package; and performing lightweight processing on the BIOS file package to obtain a lightweighted BIOS.
[0078] In some exemplary embodiments, performing lightweight processing on the BIOS file package to obtain a lightweight BIOS includes: deleting files corresponding to non-essential modules in the BIOS file package to obtain a target BIOS file package; and obtaining the lightweight BIOS based on the target BIOS file package.
[0079] In some exemplary embodiments, the target BIOS file package may be used as a lightweight BIOS.
[0080] In some exemplary embodiments, performing lightweight processing on a BIOS file package to obtain a lightweight BIOS includes: generating a module list based on the BIOS file package; wherein the module list includes: unique identifiers of modules in the BIOS; deleting unique identifiers of non-essential modules in the module list; and obtaining the lightweight BIOS based on files corresponding to the unique identifiers of modules that have not been deleted from the module list in the BIOS file package.
[0081] In some exemplary embodiments, the non-essential module includes at least one of the following: a non-essential driver and a third-party module.
[0082] In some exemplary embodiments, non-essential drivers refer to drivers that are not used in the actual startup process and drivers that already exist in the virtualization platform, including at least one of the following: unnecessary hardware device drivers, unnecessary file system support modules, unnecessary network protocol programs, unnecessary security programs, etc.
[0083] In some exemplary embodiments, the third-party module includes at least one of the following: a module written by a hardware manufacturer, a firmware developer, or other third-party developers to extend and enhance BIOS functions.
[0084] Step 701: Generate cloud firmware based on the virtualization platform and the lightweight BIOS.
[0085] In some exemplary embodiments, generating cloud firmware based on the virtualization platform and the lightweight BIOS includes: generating a virtualization file package based on the virtualization platform and the lightweight BIOS, and compiling the virtualization file package to generate the cloud firmware.
[0086] In some exemplary embodiments, the lightly post-processed BIOS includes SEC, PEI, and lightly post-processed DXE.
[0087] In some exemplary embodiments, the lightweight DXE refers to a DXE that includes a module corresponding to the unique identifier in the lightweight DXE module list; wherein the lightweight DXE module list includes unique identifiers other than the deleted unique identifiers.
[0088] In some exemplary embodiments, a virtualization platform, also known as a hypervisor or virtual machine monitor, is an intermediate layer of software running between a physical server and an operating system, allowing at least two operating systems and applications to share a set of underlying physical hardware. For example, a virtualization platform can be a hypervisor. For example, a Linux system with a KVM module can be considered a native virtualization hypervisor.
[0089] In some exemplary embodiments, generating cloud firmware based on the virtualization platform and the lightweight BIOS includes: generating a virtualization file package based on the virtualization platform and the lightweight BIOS, and compiling the virtualization file package to obtain the cloud firmware.
[0090] In some exemplary embodiments, the lightweight BIOS and the virtualization platform may be combined into a virtualization file package according to a preset agreed format.
[0091] In some exemplary embodiments, the preset agreed format may be a public agreed format or a user-defined agreed format.
[0092] In some exemplary embodiments, the disclosed agreed format may be, for example, the UEFI Firmware file format. When using the UEFI Firmware file format, the virtualization platform may be stored as a single Firmware File in a Firmware File System. This ultimately generates a virtualization file package in the UEFI Firmware format.
[0093] In some exemplary embodiments, before generating cloud firmware based on the virtualization platform and the lightweight BIOS, the method further includes: performing lightweight processing on the virtualization platform.
[0094] Generating cloud firmware according to the virtualization platform and the lightweight BIOS includes: generating cloud firmware according to the lightweight BIOS and the lightweight virtualization platform.
[0095] In some exemplary embodiments, generating cloud firmware based on the lightweight BIOS and the lightweight virtualization platform includes: generating a virtualization file package based on the lightweight BIOS and the lightweight virtualization platform, and compiling the virtualization file package to obtain cloud firmware.
[0096] In some exemplary embodiments, when the size of the cloud firmware obtained based on the virtualization platform and the lightweight BIOS is smaller than the storage space of the boot medium, the cloud firmware is generated based on the virtualization platform and the lightweight BIOS; when the size of the cloud firmware obtained based on the virtualization platform and the lightweight BIOS is greater than or equal to the storage space of the boot medium, the cloud firmware is generated based on the lightweight BIOS and the lightweight virtualization platform.
[0097] In some exemplary embodiments, the lightweight BIOS and the lightweight virtualization platform may be combined into a virtualization file package according to a preset agreed format.
[0098] In some exemplary embodiments, the preset agreed format may be a public agreed format or a user-defined agreed format.
[0099] In some exemplary embodiments, the publicly agreed format may be, for example, a unified UEFI Firmware file format. When using the UEFI Firmware file format, the lightweight virtualized platform can be stored as a single Firmware File in a Firmware File System. This ultimately generates a virtualized file package in the UEFI Firmware format.
[0100] In some exemplary embodiments, performing lightweight processing on the virtualization platform includes: deleting unnecessary modules and redundant modules in the virtualization platform.
[0101] In some exemplary embodiments, lightweight processing of the virtualization platform includes: generating a root file system; copying the root file system to a kernel folder; deleting non-essential modules and redundant modules in the kernel folder; compiling the kernel after deleting non-essential modules and redundant modules, and generating a kernel file package, which is the lightweight virtualization platform.
[0102] In some exemplary embodiments, non-essential modules and redundant modules refer to modules that are not used in actual needs and hardware configurations, including at least one of the following: unnecessary virtual device simulators, unnecessary virtualization extension modules, unnecessary monitoring modules, unused file systems, unused network protocol modules, unused device driver modules, etc.
[0103] In some exemplary embodiments, the virtualization platform is a virtualization platform that has not been lightweight processed, or is a virtualization platform that has been lightweight processed.
[0104] In some exemplary embodiments, as shown in FIG4 , the cloud firmware includes: a virtualization platform and a lightweight BIOS.
[0105] In some exemplary embodiments, as shown in FIG5 , the cloud firmware includes: a lightweight BIOS and a lightweight post-processed virtualization platform.
[0106] In the embodiments of this application, Intel and Advanced Micro Devices (AMD) have successively launched x86 processors that support hardware virtualization. Hardware virtualization technology enables many previously complex virtualization functions to be implemented in hardware, greatly simplifying the implementation of the virtualization platform and enabling the operating system to run without any modification. In addition to x86 processors, other processors have also added virtualization support in their hardware, and hardware-assisted virtualization technology has gradually become mainstream.
[0107] The cloud firmware generation method provided in the embodiment of the present application integrates the virtualization platform into the cloud firmware, so that the virtualization platform can be started directly from the boot medium, which simplifies the boot process, shortens the boot time, reduces the security risks of the virtualization platform, and enhances the maintainability of the cloud firmware.
[0108] On the third aspect, another embodiment of the present application provides a boot medium, which stores cloud firmware; wherein the cloud firmware is generated based on a virtualization platform and a lightweight BIOS.
[0109] In some exemplary embodiments, the cloud firmware is generated based on the virtualization platform and the lightweight BIOS, including: the cloud firmware is compiled from a virtualization file package, and the virtualization file package is generated based on the virtualization platform and the lightweight BIOS.
[0110] In some exemplary embodiments, the cloud firmware is generated based on the lightweight BIOS and the lightweight virtualization platform.
[0111] In some exemplary embodiments, the cloud firmware is generated based on the lightweight BIOS and the lightweight virtualization platform, including: the cloud firmware is compiled from the virtualization file package, and the virtualization file package is generated based on the lightweight BIOS and the lightweight virtualization platform.
[0112] In some exemplary embodiments, the lightweight BIOS is obtained by: compiling the BIOS to generate a BIOS file package; deleting files corresponding to non-essential modules in the BIOS file package; and using the files in the BIOS file package except the deleted files as the lightweight BIOS.
[0113] In some exemplary embodiments, the non-essential module includes at least one of the following: a non-essential driver and a non-essential third-party module.
[0114] In some exemplary embodiments, non-essential drivers refer to drivers that are not used in the actual startup process and drivers that already exist in the virtualization platform, including at least one of the following: unnecessary hardware device drivers, unnecessary file system support modules, unnecessary network protocol modules, unnecessary security modules, etc.
[0115] In some exemplary embodiments, the non-essential third-party module includes at least one of the following: a module written by a hardware manufacturer, a firmware developer, or other third-party developers to extend and enhance BIOS functions.
[0116] In some exemplary embodiments, deleting files corresponding to non-essential modules in the BIOS file package includes: generating a driver list according to the BIOS file package; wherein the driver list includes: a driver unique identifier.
[0117] In some exemplary embodiments, as shown in Figure 4, the cloud firmware includes: a virtualization platform and a lightweight BIOS. That is, the virtualization platform is a complete virtualization platform, not a lightweight virtualization platform.
[0118] In some exemplary embodiments, the lightly post-processed BIOS includes SEC, PEI, and lightly post-processed DXE.
[0119] In some exemplary embodiments, the lightweight DXE refers to a DXE that includes a driver corresponding to the driver unique identifier in the lightweight DXE driver list; wherein the lightweight DXE driver list includes driver unique identifiers other than the deleted driver unique identifier.
[0120] In some exemplary embodiments, a virtualization platform, also known as a hypervisor or virtual machine monitor, is an intermediate layer of software running between a physical server and an operating system, allowing at least two operating systems and applications to share a set of underlying physical hardware. For example, a virtualization platform can be a hypervisor. For example, a Linux system containing a Kernel-based Virtual Machine (KVM) module can be considered a native virtualization hypervisor.
[0121] In some exemplary embodiments, the lightweight BIOS and the virtualization platform may be combined into a virtualization file package according to a preset agreed format.
[0122] In some exemplary embodiments, the preset agreed format may be a public agreed format or a user-defined agreed format.
[0123] In some exemplary embodiments, the disclosed agreed format may be, for example, the Unified Extensible Firmware Interface (UEFI) firmware file format. When using the UEFI firmware file format, the virtualization platform may be stored as a single firmware file in a firmware file system. This ultimately generates a virtualization file package in the UEFI firmware format.
[0124] In some exemplary embodiments, when the size of the cloud firmware obtained based on the virtualization platform and the lightweight BIOS is smaller than the storage space of the boot medium, the cloud firmware is generated based on the virtualization platform and the lightweight BIOS; when the size of the cloud firmware obtained based on the virtualization platform and the lightweight BIOS is greater than or equal to the storage space of the boot medium, the cloud firmware is generated based on the lightweight BIOS and the lightweight virtualization platform.
[0125] In some exemplary embodiments, as shown in Figure 5, the cloud firmware includes: a lightweight BIOS and a lightweight virtualization platform. In other words, the virtualization platform can be a lightweight virtualization platform.
[0126] In some exemplary embodiments, the lightweight BIOS and the lightweight virtualization platform may be combined into a virtualization file package according to a preset agreed format.
[0127] In some exemplary embodiments, the preset agreed format may be a public agreed format or a user-defined agreed format.
[0128] In some exemplary embodiments, the publicly agreed format may be, for example, a unified UEFI Firmware file format. When using the UEFI Firmware file format, the lightweight virtualized platform can be stored as a single Firmware File in a Firmware File System. This ultimately generates a virtualized file package in the UEFI Firmware format.
[0129] In some exemplary embodiments, the lightweight virtualization platform is obtained by deleting unnecessary modules and redundant modules in the virtualization platform.
[0130] In some exemplary embodiments, the lightweight virtualization platform is obtained in the following manner: generating a root file system; copying the root file system to a kernel folder; deleting non-essential modules and redundant modules in the kernel folder; compiling the kernel after deleting non-essential modules and redundant modules, and generating a kernel file package, which is the lightweight virtualization platform.
[0131] In some exemplary embodiments, non-essential modules and redundant modules refer to modules that are not used in actual needs and hardware configuration or in actual needs and hardware configuration, including at least one of the following: unnecessary virtual device simulators, unnecessary virtualization extension modules, unnecessary monitoring programs, unused file systems, unused network protocol modules, unused device driver modules, etc.
[0132] In the embodiments of this application, Intel and Advanced Micro Devices (AMD) have successively launched x86 processors that support hardware virtualization. Hardware virtualization technology enables many previously complex virtualization functions to be implemented in hardware, greatly simplifying the implementation of the virtualization platform and enabling the operating system to run without any modification. In addition to x86 processors, other processors have also added virtualization support in their hardware, and hardware-assisted virtualization technology has gradually become mainstream.
[0133] In the third aspect, referring to Figure 8, another embodiment of the present application provides an electronic device, including: at least one processor 801; a memory 802, on which at least one program is stored. When the at least one program is executed by the at least one processor 801, any one of the above-mentioned virtualization platform startup methods or any one of the above-mentioned cloud firmware generation methods is implemented.
[0134] In some exemplary embodiments, the electronic device further includes: one or more I / O interfaces 803 connected between the processor 801 and the memory 802 , and configured to implement information interaction between the processor 801 and the memory 802 .
[0135] Among them, the processor 801 is a device with data processing capabilities, including but not limited to a central processing unit (CPU); the memory 802 is a device with data storage capabilities, including but not limited to random access memory (RAM, more specifically such as SDRAM, DDR, etc.), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), and flash memory (FLASH); the I / O interface (read-write interface) 803 is connected between the processor 801 and the memory 802, and can realize information exchange between the processor 801 and the memory 802, including but not limited to a data bus (Bus), etc.
[0136] In some embodiments, the processor 801 , the memory 802 , and the I / O interface 803 are connected to each other via a bus 804 , and further connected to other components of the computing device.
[0137] In a fourth aspect, another embodiment of the present application provides a computer-readable medium having a computer program stored thereon. When the computer program is executed by a processor, it implements any one of the above-mentioned virtualization platform startup methods or any one of the above-mentioned cloud firmware generation methods.
[0138] It will be appreciated by those skilled in the art that all or some of the steps, systems, and functional modules / units in the methods disclosed above may be implemented as software, firmware, hardware, and appropriate combinations thereof. In hardware implementations, the division between the functional modules / units mentioned in the above description does not necessarily correspond to the division of physical components; for example, a physical component may have multiple functions, or a function or step may be performed by several physical components in cooperation. Some or all physical components may be implemented as software executed by a processor, such as a central processing unit, a digital signal processor, or a microprocessor, or implemented as hardware, or implemented as an integrated circuit, such as an application-specific integrated circuit. Such software may be distributed on a computer-readable medium, which may include a computer storage medium (or non-transitory medium) and a communication medium (or temporary medium). As is well known to those skilled in the art, the term computer storage medium includes volatile and non-volatile, removable, and non-removable media implemented in any method or technology for storing information (such as computer-readable instructions, data structures, program modules, or other data). Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage, or any other medium that can be used to store the desired information and can be accessed by a computer. In addition, as is well known to those skilled in the art, communication media typically embodies computer-readable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier wave or other transport mechanism, and may include any information delivery media.
[0139] Example embodiments have been disclosed herein, and although specific terms are employed, they are used and should be interpreted only in a general illustrative sense and not for purposes of limitation. In some instances, it will be apparent to those skilled in the art that, unless otherwise expressly indicated, features, characteristics, and / or elements described in conjunction with a particular embodiment may be used alone or in combination with features, characteristics, and / or elements described in conjunction with other embodiments. Therefore, it will be understood by those skilled in the art that various changes in form and detail may be made without departing from the scope of the present application as set forth in the appended claims.
Claims
1. A method for starting a virtualization platform, comprising: Starting the lightweight basic input and output system in the cloud firmware from the boot medium; wherein the cloud firmware is generated according to the virtualization platform and the lightweight basic input and output system; After starting the lightweight basic input and output system, the virtualization platform in the cloud firmware is started from the startup medium.
2. The method for starting a virtualization platform according to claim 1, wherein: The step of starting the lightweight basic input / output system in the cloud firmware from the startup medium includes: The lightweight basic input and output system is loaded from the startup medium, and the lightweight basic input and output system is run.
3. The method for starting a virtualization platform according to claim 1, wherein: The starting the virtualization platform in the cloud firmware from the starting medium includes: The virtualization platform in the cloud firmware is loaded from the boot medium, and the virtualization platform is run.
4. The method for starting a virtualization platform according to claim 1, wherein: The virtualization platform is a lightweight virtualization platform.
5. The method for starting a virtualization platform according to claim 4, wherein: The lightweight virtualization platform is obtained by deleting unnecessary modules and redundant modules in the virtualization platform.
6. The method for starting a virtualization platform according to claim 5, wherein: The non-essential modules and redundant modules include modules that are not used in actual needs and hardware configuration.
7. The method for starting a virtualization platform according to any one of claims 1 to 6, wherein: The lightweight basic input and output system is obtained in the following manner: Compiling the basic input and output system to generate a basic input and output system file package; Lightweight processing is performed on the basic input / output system file package to obtain a lightweight basic input / output system.
8. The method for starting a virtualization platform according to claim 7, wherein: The lightweight basic input / output system obtained by performing lightweight processing according to the basic input / output system file package comprises: Deleting files corresponding to unnecessary modules in the basic input and output system file package to obtain a target basic input and output system file package; According to the target basic input-output system file package, a lightweight basic input-output system is obtained.
9. The method for starting a virtualization platform according to claim 7, wherein: The lightweight basic input / output system obtained by performing lightweight processing according to the basic input / output system file package comprises: Generate a module list according to the basic input and output system file package; wherein the module list includes: a unique identifier of a module in the basic input and output system; Deleting unique identifiers of unnecessary modules from the module list; A lightweight basic input / output system is obtained according to the files corresponding to the unique identifiers of the modules that have not been deleted in the module list in the basic input / output system file package.
10. The method for starting a virtualization platform according to claim 9, wherein: The non-essential modules include at least one of the following: non-essential drivers and third-party modules; The non-essential drivers include: drivers not used in the actual startup process and drivers already existing in the virtualization platform; The third-party module includes: a module for expanding and enhancing the basic input and output system.
11. A cloud firmware generation method, comprising: Lightweight the basic input and output system; Generate cloud firmware based on the virtualized platform and lightweight basic input and output system.
12. The cloud firmware generation method according to claim 11, before generating the cloud firmware according to the virtualized platform and the lightweight basic input and output system, the method further comprises: The virtualization platform is lightweighted.
13. A boot medium, wherein the boot medium stores cloud firmware; wherein: The cloud firmware is generated according to the virtualization platform and the lightweight basic input and output system.
14. The boot medium according to claim 13, wherein: The virtualization platform is a lightweight virtualization platform.
15. An electronic device, comprising: at least one processor; A memory having at least one program stored thereon, wherein when the at least one program is executed by the at least one processor, the virtualization platform startup method described in any one of claims 1 to 10 is implemented, or the cloud firmware generation method described in any one of claims 11 to 14 is implemented.
16. A computer-readable medium having a computer program stored thereon, wherein when the computer program is executed by a processor, the virtualization platform startup method described in any one of claims 1 to 10 is implemented, or the cloud firmware generation method described in any one of claims 11 to 14 is implemented.
Citation Information
Patent Citations
Virtualization cross-platform HA system
CN107608766A
Fast virtual-machine starting method
CN108446166A
System starting method and device, equipment and storage medium
CN116909645A
Cloudboot system, virtual machine with the cloudboot system, and method for starting up the virtual machine
US20150113532A1