Hypervisor-based virtual machine startup control method and system

By employing a dual-channel architecture and middleware software for self-checking and cross-checking, the problem of Hypervisor failing to detect hardware faults in the rail transit signaling industry was resolved. This ensures that the virtual machine only starts after the hardware detection is passed, thereby improving the system's security and reliability.

CN121858207APending Publication Date: 2026-04-14CASCO SIGNAL LTD
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-12-30
Publication Date
2026-04-14

AI Technical Summary

Technical Problem

The existing hypervisor fails to effectively detect hardware resource faults in the rail transit signaling industry, resulting in virtual machines starting with defects and failing to meet the SIL4 security requirements.

Method used

A dual-channel architecture is adopted. The Hypervisor detects the hardware resources of the virtual machine and sets the startup enable bit during the initialization phase. The virtual machine is only started when all detection results pass. The virtual machine middleware software performs self-checks and cross-checks to ensure that the hardware detection results are consistent before continuing to run.

Benefits of technology

It enables self-checking of hardware resources before virtual machine startup, preventing virtual machines from starting with defects, improving the security of the hypervisor and the fault tolerance of the system, and meeting the security requirements of SIL4.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121858207A_ABST
    Figure CN121858207A_ABST
Patent Text Reader

Abstract

The invention relates to a Hypervisor-based virtual machine startup control method and system. The method comprises the following steps: forming two channels by at least two servers; a Hypervisor running on the server reads the configuration file, creates virtual machines, and initializes the start enabling bit of each virtual machine to be DISABLED (Disk Set Advanced Block Light Emitting Diode); the Hypervisor detects a CPU core and a memory used by each virtual machine to obtain a hardware detection result; only when a virtual machine hardware detection result shows that all test items pass the detection, setting a corresponding virtual machine start enabling bit to be ENABLED; only when a virtual machine starting instruction is received and the virtual machine starting enable bit is ENABLED, the corresponding virtual machine is started; after the middleware software is started, the middleware software obtains a hardware detection result from the corresponding channel Hypervisor; in the initialization stage, the dual-channel middleware software carries out self-inspection and cross inspection on the detection result of each channel, the operation is continued when the inspection is passed, and otherwise, the operation is stopped. Compared with the prior art, the method has the advantages of high safety and reliability.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of rail transit signaling, and in particular to a virtual machine startup control method and system based on a hypervisor. Background Technology

[0002] With the promotion and popularization of cloud computing technology in various industries, the rail transit signaling industry is also attempting to develop a secure computer platform based on cloud computing. Considering real-time requirements, a Type-I hypervisor is typically used at the virtualization layer. The hypervisor is responsible for managing the lifecycle of virtual machines, such as creation, startup, and shutdown. The usual implementation involves the hypervisor allocating relevant resources to the virtual machine from the physical hardware resource pool based on the virtual machine's configuration, and then starting or stopping the virtual machine according to commands from the cloud management platform.

[0003] In the rail transit signaling industry, common safety system architectures are 2002 (two-out-of-two) and 2003 (three-out-of-two), both of which are required to achieve a functional integrity level of SIL4. To protect against random failures, industry standards GB / T 28809:2012 and EN50129:2018 require safety-related systems to test hardware (such as the central processing unit CPU and RAM) during startup to detect single points of failure as early as possible.

[0004] A conventional hypervisor does not monitor hardware resources. If a hardware resource fails, the virtual machine launched by the hypervisor will run with the faulty hardware.

[0005] After searching, Chinese invention patent application CN119440850A proposed a solution, namely, virtualization software performs hardware self-tests, and security middleware software in the virtual machine is responsible for verifying the self-test results. However, it did not provide specific security measures, and its security and reliability urgently need to be further improved. Summary of the Invention

[0006] The purpose of this invention is to overcome the shortcomings of the existing technology and provide a more secure and reliable virtual machine startup control method and system based on Hypervisor.

[0007] The objective of this invention can be achieved through the following technical solutions: According to a first aspect of the present invention, a hypervisor-based virtual machine startup control method is provided, comprising: It must contain at least two servers to form a dual-channel configuration; The Hypervisor, a virtualization management program running on the server, reads the configuration file, creates virtual machines, and initializes the startup enable bit of each virtual machine to DISABLED. The virtualization management program Hypervisor detects the CPU cores and memory used by each virtual machine and obtains hardware detection results; Set the startup enable bit of the corresponding virtual machine to ENABLED only when the hardware test results of the virtual machine show that all test items have passed the test; The corresponding virtual machine will only be started when a command to start the virtual machine is received and the virtual machine's start enable bit is ENABLED. After the virtual machine starts, the middleware software running on the virtual machine obtains the hardware detection results from the virtualization management program Hypervisor of the corresponding channel; During the initialization phase, the dual-channel middleware software performs self-checks and cross-checks on the detection results of each channel. It continues to run only if the detection results of each channel pass the check; otherwise, it records the error code and stops running.

[0008] Preferably, during the initialization phase, the dual-channel middleware software performs a self-check on the detection results of each channel, specifically including: The middleware software BSW_UP of the upper channel obtains the hardware detection result IBIT_RESULT_UP of the upper channel from the Hypervisor of this channel. If the hardware detection result IBIT_RESULT_UP of the upper channel is equal to the expected value, it will pass the hardware detection result IBIT_RESULT_UP of the upper channel to the middleware software BSW_DN of the lower channel; otherwise, it will stop running the middleware software BSW_UP of the upper channel. The middleware software BSW_DP of the lower channel obtains the hardware detection result IBIT_RESULT_DP of the lower channel from the Hypervisor of this channel. If the hardware detection result IBIT_RESULT_DP of the lower channel is equal to the expected value, it will pass the hardware detection result IBIT_RESULT_DP of the lower channel to the middleware software BSW_UN of the upper channel; otherwise, it will stop running the middleware software BSW_UP of the upper channel.

[0009] Preferably, during the initialization phase, the dual-channel middleware software performs cross-checking on the detection results of each channel, specifically including: The middleware software BSW_UP of the upper channel checks whether the hardware detection result IBIT_RESULT_DN of the lower channel is equal to the expected value. If the hardware detection result IBIT_RESULT_DN of the lower channel is equal to the expected value, the middleware software BSW_UP of the upper channel continues to run. If the middleware software BSW_UP of the upper channel does not obtain the hardware detection result IBIT_RESULT_DN of the lower channel or the hardware detection result IBIT_RESULT_DN of the lower channel is not equal to the expected value, the middleware software BSW_UP of the upper channel stops running. The middleware software BSW_DN of the lower channel checks whether the hardware detection result IBIT_RESULT_UP of the upper channel is equal to the expected value. If the hardware detection result IBIT_RESULT_UP of the upper channel is equal to the expected value, the middleware software BSW_DN of the lower channel continues to run. If the middleware software BSW_DN of the lower channel does not obtain the hardware detection result IBIT_RESULT_UP of the upper channel or the hardware detection result IBIT_RESULT_UP of the upper channel is not equal to the expected value, the middleware software BSW_DN of the lower channel stops running.

[0010] Preferably, the two servers are connected via a communication bus, which includes Ethernet, CAN bus and M-LVDS bus.

[0011] Preferably, the creation of virtual machines specifically involves: allocating physical resources to each virtual machine, wherein the physical resources include CPU cores and memory addresses, and the CPU cores include instructions and registers.

[0012] Preferably, the hardware detection result is a 32-bit hardware detection result.

[0013] Preferably, the virtual machine startup command is issued by the cloud management platform.

[0014] According to a second aspect of the present invention, a hypervisor-based virtual machine boot control system is provided, comprising at least two servers forming a dual-channel configuration, a hypervisor running on the servers, and middleware software running in the virtual machine booted by the hypervisor. The startup control process specifically includes: The Hypervisor, a virtualization management program running on the server, reads the configuration file, creates virtual machines, and initializes the startup enable bit of each virtual machine to DISABLED. The virtualization management program Hypervisor detects the CPU cores and memory used by each virtual machine and obtains hardware detection results; Set the startup enable bit of the corresponding virtual machine to ENABLED only when the hardware test results of the virtual machine show that all test items have passed the test; The corresponding virtual machine will only be started when a command to start the virtual machine is received and the virtual machine's start enable bit is ENABLED. After the virtual machine starts, the middleware software running on the virtual machine obtains the hardware detection results from the virtualization management program Hypervisor of the corresponding channel; During the initialization phase, the dual-channel middleware software performs self-checks and cross-checks on the detection results of each channel. It continues to run only if the detection results of each channel pass the check; otherwise, it records the error code and stops running.

[0015] Preferably, during the initialization phase, the dual-channel middleware software performs a self-check on the detection results of each channel, specifically including: The middleware software BSW_UP of the upper channel obtains the hardware detection result IBIT_RESULT_UP of the upper channel from the Hypervisor of this channel. If the hardware detection result IBIT_RESULT_UP of the upper channel is equal to the expected value, it will pass the hardware detection result IBIT_RESULT_UP of the upper channel to the middleware software BSW_DN of the lower channel; otherwise, it will stop running the middleware software BSW_UP of the upper channel. The middleware software BSW_DP of the lower channel obtains the hardware detection result IBIT_RESULT_DP of the lower channel from the Hypervisor of this channel. If the hardware detection result IBIT_RESULT_DP of the lower channel is equal to the expected value, it will pass the hardware detection result IBIT_RESULT_DP of the lower channel to the middleware software BSW_UN of the upper channel; otherwise, it will stop running the middleware software BSW_UP of the upper channel.

[0016] Preferably, during the initialization phase, the dual-channel middleware software performs cross-checking on the detection results of each channel, specifically including: The middleware software BSW_UP of the upper channel checks whether the hardware detection result IBIT_RESULT_DN of the lower channel is equal to the expected value. If the hardware detection result IBIT_RESULT_DN of the lower channel is equal to the expected value, the middleware software BSW_UP of the upper channel continues to run. If the middleware software BSW_UP of the upper channel does not obtain the hardware detection result IBIT_RESULT_DN of the lower channel or the hardware detection result IBIT_RESULT_DN of the lower channel is not equal to the expected value, the middleware software BSW_UP of the upper channel stops running. The middleware software BSW_DN of the lower channel checks whether the hardware detection result IBIT_RESULT_UP of the upper channel is equal to the expected value. If the hardware detection result IBIT_RESULT_UP of the upper channel is equal to the expected value, the middleware software BSW_DN of the lower channel continues to run. If the middleware software BSW_DN of the lower channel does not obtain the hardware detection result IBIT_RESULT_UP of the upper channel or the hardware detection result IBIT_RESULT_UP of the upper channel is not equal to the expected value, the middleware software BSW_DN of the lower channel stops running.

[0017] Preferably, the two servers are connected via a communication bus, which includes Ethernet, CAN bus and M-LVDS bus.

[0018] Preferably, the creation of virtual machines specifically involves: allocating physical resources to each virtual machine, wherein the physical resources include CPU cores and memory addresses, and the CPU cores include instructions and registers.

[0019] Preferably, the hardware detection result is a 32-bit hardware detection result.

[0020] Preferably, the virtual machine startup command is issued by the cloud management platform.

[0021] According to a third aspect of the present invention, an electronic device is provided, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the program to implement any of the methods described above.

[0022] According to a fourth aspect of the invention, a computer-readable storage medium is provided having a computer program stored thereon, which, when executed by a processor, implements any of the methods described herein.

[0023] Compared with the prior art, the present invention has the following beneficial effects: (1) Before starting the virtual machine, perform a self-check on the hardware resources used by the virtual machine to detect hardware faults as early as possible and avoid starting the virtual machine with a fault.

[0024] (2) Before starting the virtual machine, the Hypervisor performs a self-test on the hardware resources allocated to the virtual machine and sets the startup enable bit of the virtual machine according to the test results. The Hypervisor will only allow the virtual machine to start if and only if the startup enable bit is ENABLED. This integrates hardware self-testing into the management of the virtual machine lifecycle and improves the security of the Hypervisor.

[0025] (3) Adopt reactive fail-safe and combined fail-safe techniques to improve system security: After the virtual machine starts, in order to avoid random failures, the middleware software in the virtual machine reads the detection results of the Hypervisor and performs self-checks and 2oo2 cross-checks. The system can continue to run only if the detection results of both channels meet the expectations. Attached Figure Description

[0026] Figure 1 This represents the hierarchical structure of the system.

[0027] Figure 2 A schematic diagram illustrating the process of starting a virtual machine for a Hypervisor in a single channel.

[0028] Figure 3 Diagram illustrating the process of checking test results for middleware software Detailed Implementation

[0029] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some, not all, of the embodiments of the present invention. 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.

[0030] Example This embodiment provides a hypervisor-based virtual machine startup control method, which includes: It must contain at least two servers to form a dual-channel configuration; The Hypervisor, a virtualization management program running on the server, reads the configuration file, creates virtual machines, and initializes the startup enable bit of each virtual machine to DISABLED. The virtualization management program Hypervisor detects the CPU cores and memory used by each virtual machine and obtains hardware detection results; Set the startup enable bit of the corresponding virtual machine to ENABLED only when the hardware test results of the virtual machine show that all test items have passed the test; The corresponding virtual machine will only be started when a command to start the virtual machine is received and the virtual machine's start enable bit is ENABLED. After the virtual machine starts, the middleware software running on the virtual machine obtains the hardware detection results from the virtualization management program Hypervisor of the corresponding channel; During the initialization phase, the dual-channel middleware software performs self-checks and cross-checks on the detection results of each channel. It continues running only if all checks on the detection results of each channel pass; otherwise, it records an error code and stops running. Specifically, this includes: (1) Self-inspection: The middleware software BSW_UP of the upper channel obtains the hardware detection result IBIT_RESULT_UP of the upper channel from the Hypervisor of this channel. If the hardware detection result IBIT_RESULT_UP of the upper channel is equal to the expected value, it will pass the hardware detection result IBIT_RESULT_UP of the upper channel to the middleware software BSW_DN of the lower channel; otherwise, it will stop running the middleware software BSW_UP of the upper channel. The middleware software BSW_DP of the lower channel obtains the hardware detection result IBIT_RESULT_DP of the lower channel from the Hypervisor of this channel. If the hardware detection result IBIT_RESULT_DP of the lower channel is equal to the expected value, it will pass the hardware detection result IBIT_RESULT_DP of the lower channel to the middleware software BSW_UN of the upper channel; otherwise, it will stop running the middleware software BSW_UP of the upper channel.

[0031] (2) Cross-checking: The middleware software BSW_UP of the upper channel checks whether the hardware detection result IBIT_RESULT_DN of the lower channel is equal to the expected value. If the hardware detection result IBIT_RESULT_DN of the lower channel is equal to the expected value, the middleware software BSW_UP of the upper channel continues to run. If the middleware software BSW_UP of the upper channel does not obtain the hardware detection result IBIT_RESULT_DN of the lower channel or the hardware detection result IBIT_RESULT_DN of the lower channel is not equal to the expected value, the middleware software BSW_UP of the upper channel stops running. The middleware software BSW_DN of the lower channel checks whether the hardware detection result IBIT_RESULT_UP of the upper channel is equal to the expected value. If the hardware detection result IBIT_RESULT_UP of the upper channel is equal to the expected value, the middleware software BSW_DN of the lower channel continues to run. If the middleware software BSW_DN of the lower channel does not obtain the hardware detection result IBIT_RESULT_UP of the upper channel or the hardware detection result IBIT_RESULT_UP of the upper channel is not equal to the expected value, the middleware software BSW_DN of the lower channel stops running.

[0032] This embodiment also provides a Hypervisor-based virtual machine boot control system, which includes at least two servers forming a dual-channel system. The servers run a Hypervisor virtualization management program, and middleware software runs in the virtual machines started by the Hypervisor. The startup control process specifically includes: The Hypervisor, a virtualization management program running on the server, reads the configuration file, creates virtual machines, and initializes the startup enable bit of each virtual machine to DISABLED. The virtualization management program Hypervisor detects the CPU cores and memory used by each virtual machine and obtains hardware detection results; Set the startup enable bit of the corresponding virtual machine to ENABLED only when the hardware test results of the virtual machine show that all test items have passed the test; The corresponding virtual machine will only be started when a command to start the virtual machine is received and the virtual machine's start enable bit is ENABLED. After the virtual machine starts, the middleware software running on the virtual machine obtains the hardware detection results from the virtualization management program Hypervisor of the corresponding channel; During the initialization phase, the dual-channel middleware software performs self-checks and cross-checks on the detection results of each channel. It continues to run only if the detection results of each channel pass the check; otherwise, it records the error code and stops running.

[0033] like Figure 1 As shown, it includes at least two servers forming a dual-channel configuration. Each channel can be divided into: a middleware layer (middleware software), a virtual hardware layer (virtual machine), a virtualization layer (hypervisor), a physical layer (server), and a communication layer (communication bus). The communication bus can be Ethernet, CAN bus, M-LVDS bus, etc.

[0034] like Figure 2 As shown, the specific implementation steps for starting a virtual machine in a single channel using a Hypervisor are as follows: 1) Power on the server.

[0035] 2) UEFI loads the Hypervisor and its configuration file into memory.

[0036] 3) The Hypervisor reads the configuration file and creates the relevant virtual machines, that is, it allocates physical resources to each virtual machine, such as CPU cores and memory addresses.

[0037] 4) The Hypervisor initializes the boot enable bit of each virtual machine to DISABLED.

[0038] 5) The Hypervisor detects the CPU cores (including instruction set and registers) and memory used by each virtual machine and records the detection results as IBIT_RESULT (a 32-bit codeword).

[0039] 5.1) When all tests for a virtual machine pass, set the startup enable bit of that virtual machine to ENABLED.

[0040] 5.2) If any test of a virtual machine fails, keep the startup enable bit of the virtual machine set to DISABLED.

[0041] 6) When the Hypervisor receives the virtual machine start command from the cloud management platform, if the start enable bit of the virtual machine is ENABLED, the Hypervisor starts the virtual machine and returns the start result according to the start status of the virtual machine; if the start enable bit of the virtual machine is DISABLED, the Hypervisor does not start the virtual machine and directly returns a start failure.

[0042] like Figure 3 As shown, the middleware software checks the test results, and the specific implementation steps are as follows: 1) After the virtual machine starts, load the middleware software. The two hypervisors are designated Hypervisor_UP and Hypervisor_DN, respectively. The middleware software for the two channels is designated BSW_UP and BSW_DN, respectively.

[0043] 2) In the first step of the initialization phase, BSW_UP and BSW_DN respectively check the detection results of the Hypervisor of this channel.

[0044] 2.1) BSW_UP invokes a hypercall to obtain the detection result from the Hypervisor of this channel, denoted as IBIT_RESULT_UP. BSW_UP checks whether IBIT_RESULT_UP is equal to the expected value. If IBIT_RESULT_UP is equal to the expected value, BSW_UP passes IBIT_RESULT_UP to BSW_DN; if BSW_UP does not obtain a detection result or IBIT_RESULT_UP is not equal to the expected value, BSW_UP should stop running.

[0045] 2.2) Similarly, BSW_DN calls a hypercall to obtain the detection result from the Hypervisor of this channel, denoted as IBIT_RESULT_DN. BSW_DN checks whether IBIT_RESULT_DN is the expected value. If IBIT_RESULT_DN equals the expected value, BSW_DN passes IBIT_RESULT_DN to BSW_UP; if BSW_DN does not obtain a detection result or IBIT_RESULT_DN is not equal to the expected value, BSW_DN should stop running.

[0046] 3) In the second step of the initialization phase, BSW_UP and BSW_DN respectively check the detection results of the Hypervisor of another channel.

[0047] 3.1) BSW_UP checks whether IBIT_RESULT_DN is equal to the expected value. If IBIT_RESULT_DN is equal to the expected value, BSW_UP can continue running; if BSW_UP does not obtain IBIT_RESULT_DN or IBIT_RESULT_DN is not equal to the expected value, BSW_UP should stop running.

[0048] 3.2) Similarly, BSW_DN checks whether IBIT_RESULT_UP is equal to the expected value. If IBIT_RESULT_UP is equal to the expected value, BSW_DN can continue to run; if BSW_DN does not obtain IBIT_RESULT_UP or IBIT_RESULT_UP is not equal to the expected value, BSW_DN should stop running.

[0049] The electronic device of this invention includes a central processing unit (CPU), which can perform various appropriate actions and processes according to computer program instructions stored in read-only memory (ROM) or loaded from a storage unit into random access memory (RAM). The RAM may also store various programs and data required for device operation. The CPU, ROM, and RAM are interconnected via a bus. Input / output (I / O) interfaces are also connected to the bus.

[0050] Multiple components in the device are connected to the I / O interface, including: input units such as keyboards and mice; output units such as various types of displays and speakers; storage units such as disks and optical discs; and communication units such as network interface cards (NICs), modems, and wireless transceivers. The communication unit allows the device to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.

[0051] The processing unit performs the various methods and processes described above. For example, in some embodiments, the methods may be implemented as computer software programs tangibly contained in a machine-readable medium, such as a storage unit. In some embodiments, part or all of the computer program may be loaded and / or installed on the device via ROM and / or a communication unit. When the computer program is loaded into RAM and executed by the CPU, one or more steps of the methods described above may be performed. Alternatively, in other embodiments, the CPU may be configured to execute the methods by any other suitable means (e.g., by means of firmware).

[0052] The functions described above in this document can be performed at least in part by one or more hardware logic components. For example, exemplary types of hardware logic components that can be used, without limitation, include: 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), and so on.

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

[0054] In the context of this invention, a machine-readable medium can be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, apparatus, or device. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. Machine-readable media can include, but are not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. 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 of the foregoing.

[0055] The above description is merely a specific embodiment of the present invention, but the scope of protection of the present invention is not limited thereto. Any person skilled in the art can easily conceive of various equivalent modifications or substitutions within the technical scope disclosed in the present invention, and these modifications or substitutions should all be covered within the scope of protection of the present invention. Therefore, the scope of protection of the present invention should be determined by the scope of the claims.

Claims

1. A virtual machine startup control method based on a hypervisor, characterized in that, include: It must contain at least two servers to form a dual-channel configuration; The Hypervisor, a virtualization management program running on the server, reads the configuration file, creates virtual machines, and initializes the startup enable bit of each virtual machine to DISABLED. The virtualization management program Hypervisor detects the CPU cores and memory used by each virtual machine and obtains hardware detection results; Set the startup enable bit of the corresponding virtual machine to ENABLED only when the hardware test results of the virtual machine show that all test items have passed the test; The corresponding virtual machine will only be started when a command to start the virtual machine is received and the virtual machine's start enable bit is ENABLED. After the virtual machine starts, the middleware software running on the virtual machine obtains the hardware detection results from the virtualization management program Hypervisor of the corresponding channel; During the initialization phase, the dual-channel middleware software performs self-checks and cross-checks on the detection results of each channel. It continues to run only if the detection results of each channel pass the check; otherwise, it records the error code and stops running.

2. The virtual machine startup control method based on Hypervisor according to claim 1, characterized in that, During the initialization phase, the dual-channel middleware software performs a self-check on the detection results of each channel, specifically including: The middleware software BSW_UP of the upper channel obtains the hardware detection result IBIT_RESULT_UP of the upper channel from the Hypervisor of this channel. If the hardware detection result IBIT_RESULT_UP of the upper channel is equal to the expected value, it will pass the hardware detection result IBIT_RESULT_UP of the upper channel to the middleware software BSW_DN of the lower channel; otherwise, it will stop running the middleware software BSW_UP of the upper channel. The middleware software BSW_DP of the lower channel obtains the hardware detection result IBIT_RESULT_DP of the lower channel from the Hypervisor of this channel. If the hardware detection result IBIT_RESULT_DP of the lower channel is equal to the expected value, it will pass the hardware detection result IBIT_RESULT_DP of the lower channel to the middleware software BSW_UN of the upper channel; otherwise, it will stop running the middleware software BSW_UP of the upper channel.

3. The virtual machine startup control method based on Hypervisor according to claim 2, characterized in that, During the initialization phase, the dual-channel middleware software performs cross-checks on the detection results of each channel, specifically including: The middleware software BSW_UP of the upper channel checks whether the hardware detection result IBIT_RESULT_DN of the lower channel is equal to the expected value. If the hardware detection result IBIT_RESULT_DN of the lower channel is equal to the expected value, the middleware software BSW_UP of the upper channel continues to run. If the middleware software BSW_UP of the upper channel does not obtain the hardware detection result IBIT_RESULT_DN of the lower channel or the hardware detection result IBIT_RESULT_DN of the lower channel is not equal to the expected value, the middleware software BSW_UP of the upper channel stops running. The middleware software BSW_DN of the lower channel checks whether the hardware detection result IBIT_RESULT_UP of the upper channel is equal to the expected value. If the hardware detection result IBIT_RESULT_UP of the upper channel is equal to the expected value, the middleware software BSW_DN of the lower channel continues to run. If the middleware software BSW_DN of the lower channel does not obtain the hardware detection result IBIT_RESULT_UP of the upper channel or the hardware detection result IBIT_RESULT_UP of the upper channel is not equal to the expected value, the middleware software BSW_DN of the lower channel stops running.

4. The virtual machine startup control method based on Hypervisor according to claim 1, characterized in that, The two servers are connected via a communication bus, which includes Ethernet, CAN bus and M-LVDS bus.

5. The virtual machine startup control method based on Hypervisor according to claim 1, characterized in that, The creation of virtual machines specifically involves allocating physical resources to each virtual machine, including CPU cores and memory addresses, with each CPU core including instructions and registers.

6. The virtual machine startup control method based on Hypervisor according to claim 1, characterized in that, The hardware detection results are 32-bit hardware detection results.

7. The virtual machine startup control method based on Hypervisor according to claim 1, characterized in that, The virtual machine startup command is issued by the cloud management platform.

8. A hypervisor-based virtual machine boot control system, characterized in that, It includes at least two servers forming a dual-channel configuration, with a Hypervisor running on the servers and middleware software running in the virtual machines started by the Hypervisor. The startup control process specifically includes: The Hypervisor, a virtualization management program running on the server, reads the configuration file, creates virtual machines, and initializes the startup enable bit of each virtual machine to DISABLED. The virtualization management program Hypervisor detects the CPU cores and memory used by each virtual machine and obtains hardware detection results; Set the startup enable bit of the corresponding virtual machine to ENABLED only when the hardware test results of the virtual machine show that all test items have passed the test; The corresponding virtual machine will only be started when a command to start the virtual machine is received and the virtual machine's start enable bit is ENABLED. After the virtual machine starts, the middleware software running on the virtual machine obtains the hardware detection results from the virtualization management program Hypervisor of the corresponding channel; During the initialization phase, the dual-channel middleware software performs self-checks and cross-checks on the detection results of each channel. It continues to run only if the detection results of each channel pass the check; otherwise, it records the error code and stops running.

9. The system according to claim 8, characterized in that, During the initialization phase, the dual-channel middleware software performs a self-check on the detection results of each channel, specifically including: The middleware software BSW_UP of the upper channel obtains the hardware detection result IBIT_RESULT_UP of the upper channel from the Hypervisor of this channel. If the hardware detection result IBIT_RESULT_UP of the upper channel is equal to the expected value, it will pass the hardware detection result IBIT_RESULT_UP of the upper channel to the middleware software BSW_DN of the lower channel; otherwise, it will stop running the middleware software BSW_UP of the upper channel. The middleware software BSW_DP of the lower channel obtains the hardware detection result IBIT_RESULT_DP of the lower channel from the Hypervisor of this channel. If the hardware detection result IBIT_RESULT_DP of the lower channel is equal to the expected value, it will pass the hardware detection result IBIT_RESULT_DP of the lower channel to the middleware software BSW_UN of the upper channel; otherwise, it will stop running the middleware software BSW_UP of the upper channel.

10. The system according to claim 9, characterized in that, During the initialization phase, the dual-channel middleware software performs cross-checks on the detection results of each channel, specifically including: The middleware software BSW_UP of the upper channel checks whether the hardware detection result IBIT_RESULT_DN of the lower channel is equal to the expected value. If the hardware detection result IBIT_RESULT_DN of the lower channel is equal to the expected value, the middleware software BSW_UP of the upper channel continues to run. If the middleware software BSW_UP of the upper channel does not obtain the hardware detection result IBIT_RESULT_DN of the lower channel or the hardware detection result IBIT_RESULT_DN of the lower channel is not equal to the expected value, the middleware software BSW_UP of the upper channel stops running. The middleware software BSW_DN of the lower channel checks whether the hardware detection result IBIT_RESULT_UP of the upper channel is equal to the expected value. If the hardware detection result IBIT_RESULT_UP of the upper channel is equal to the expected value, the middleware software BSW_DN of the lower channel continues to run. If the middleware software BSW_DN of the lower channel does not obtain the hardware detection result IBIT_RESULT_UP of the upper channel or the hardware detection result IBIT_RESULT_UP of the upper channel is not equal to the expected value, the middleware software BSW_DN of the lower channel stops running.

11. The system according to claim 10, characterized in that, The two servers are connected via a communication bus, which includes Ethernet, CAN bus and M-LVDS bus.

12. The system according to claim 8, characterized in that, The creation of virtual machines specifically involves allocating physical resources to each virtual machine, including CPU cores and memory addresses, with each CPU core including instructions and registers.

13. The system according to claim 8, characterized in that, The hardware detection results are 32-bit hardware detection results.

14. The system according to claim 8, characterized in that, The virtual machine startup command is issued by the cloud management platform.

15. An electronic device comprising a memory and a processor, wherein the memory stores a computer program, characterized in that, When the processor executes the program, it implements the method as described in any one of claims 1 to 7.

16. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the program is executed by the processor, it implements the method as described in any one of claims 1 to 7.

Citation Information

Patent Citations

  • Function safety cloud platform for rail transit real-time control system and control method

    CN119440850A