Host downtime recording method and system based on baseboard management controller

CN119440893BActive Publication Date: 2026-08-11SHANDONG YUNHAI GUOCHUANG CLOUD COMPUTING EQUIP IND INNOVATION CENT CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-09-27
Publication Date
2026-08-11

AI Technical Summary

Technical Problem

[0004]本发明提供一种基于基板管理控制器的主机宕机录屏方法及系统,用以解决现有技术中系统启动后才可以进行宕机录屏,若BMC启动时服务器出现宕机,此时因为BMC中的Linux系统尚未运行,无法进行宕机录屏的缺陷,实现在基板管理控制器启动时也能完成主机宕机录屏操作,提高主机宕机录屏的可靠性

Benefits of technology

[0019] The present invention provides a host crash recording method and system based on a baseboard management controller. The baseboard management controller runs a real-time operating system and a preset non-real-time operating system. When the real-time operating system of the baseboard management controller starts successfully, the host crash recording operation is performed by the real-time operating system. The host crash recording operation can be completed when the baseboard management controller starts, which improves the reliability of host crash recording.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119440893B_ABST
    Figure CN119440893B_ABST
Patent Text Reader

Abstract

This invention provides a method and system for recording computer crashes based on a baseboard management controller (BMD). The BMD runs a real-time operating system and a preset non-real-time operating system. The method includes: when the BMD powers on, in response to the successful startup of the real-time operating system, the real-time operating system performs the computer crash recording operation. The computer crash recording method and system provided by this invention, by having a baseboard management controller running both a real-time operating system and a preset non-real-time operating system, and by having the real-time operating system of the baseboard management controller successfully start and perform the computer crash recording operation, can complete the computer crash recording operation even when the baseboard management controller is starting up, thus improving the reliability of computer crash recording.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of computer technology, and in particular to a method and system for recording the screen during a host computer crash based on a baseboard management controller. Background Technology

[0002] With the increasing variety of server equipment types, the functions of the Baseboard Management Controller (BMC), which serves as a monitoring system, are also becoming more complex. Downtime recording is a technology designed to record screen operations and system status of a host (such as a computer or server) when it experiences a failure, crash, or unresponsive state. Upon detecting a host downtime, the current screen state is immediately captured, facilitating subsequent analysis and fault location.

[0003] Current technologies all involve the BMC running a Linux system, which can only be used for crash recording after the system has started. If the host computer crashes when the BMC starts up, crash recording cannot be performed because the Linux system in the BMC is not yet running. This necessitates a technology that ensures host crash recording can be performed even when the baseboard management controller starts up. Summary of the Invention

[0004] This invention provides a method and system for recording host crash screens based on a baseboard management controller (BMC), which solves the problem that in the prior art, crash screen recording can only be performed after the system has started. If the server crashes when the BMC starts, crash screen recording cannot be performed because the Linux system in the BMC is not yet running. This invention enables host crash screen recording to be performed even when the baseboard management controller starts, thus improving the reliability of host crash screen recording.

[0005] This invention provides a method for recording a host computer crash based on a baseboard management controller. The baseboard management controller runs a real-time operating system and a preset non-real-time operating system. The method includes the following steps: when the baseboard management controller is powered on, in response to the successful startup of the real-time operating system of the baseboard management controller, the real-time operating system performs the host computer crash recording operation.

[0006] According to the present invention, a host crash recording method based on a baseboard management controller is provided, wherein the real-time operating system runs on a first CPU core and the preset non-real-time operating system runs on a second CPU core.

[0007] According to the present invention, a method for recording a host computer crash based on a baseboard management controller is provided. The method further includes: in response to the real-time operating system obtaining information that the preset non-real-time operating system has successfully started and entered a normal working state, transferring the execution permission of the host computer crash recording operation from the real-time operating system to the preset non-real-time operating system.

[0008] According to the present invention, a method for recording a host computer crash based on a baseboard management controller is provided. The method further includes: in response to the real-time operating system obtaining information that the preset non-real-time operating system has restarted or failed, transferring the execution permission of the host computer crash recording operation from the preset non-real-time operating system to the real-time operating system.

[0009] According to the present invention, a method for recording a host computer crash based on a baseboard management controller is provided. The method further includes: in response to the real-time operating system obtaining information that the preset non-real-time operating system has successfully restarted and entered a normal working state or that the operating system has recovered from a fault, transferring the execution permission of the host computer crash recording operation from the real-time operating system to the preset non-real-time operating system.

[0010] According to the present invention, a method for recording a host computer crash based on a baseboard management controller is provided. The host computer crash recording operation includes: sending a query command to the host to obtain the value of a preset register; and starting the recording process in response to the preset register being set.

[0011] According to the present invention, a method for recording a host computer crash based on a baseboard management controller is provided. The recording process includes: reading VGA image data of the host computer obtained from the VGA driver module from memory; packaging the VGA image data into video data according to the encoding format of the VGA image data; and storing the video data in a preset storage location.

[0012] According to the present invention, a method for recording a host computer crash based on a baseboard management controller is provided, wherein the video data includes a REC header and data packets; wherein the REC header includes a timestamp, data size and the encoding format; and the data packets include a frame header and frame data, or the data packets include frame data.

[0013] According to the present invention, a method for recording a host computer crash based on a baseboard management controller is provided. The method further includes: in response to receiving a video query command from a client, obtaining the corresponding video data and sending it to the client, so that the client can call the corresponding video codec according to the encoding format of the video data to realize the decoding and playback of the video data.

[0014] The present invention also provides a host crash recording system based on a baseboard management controller, wherein the baseboard management controller runs a real-time operating system and a preset non-real-time operating system; the host crash recording system includes a crash recording management module, which is used to: when the baseboard management controller is powered on and started, in response to the successful startup of the real-time operating system of the baseboard management controller, perform host crash recording operation by the real-time operating system.

[0015] The present invention also provides a baseboard management controller, characterized in that it includes the host crash recording device based on the baseboard management controller.

[0016] The present invention also provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the host crash screen recording method based on the baseboard management controller described above.

[0017] The present invention also provides a non-transitory computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the host crash screen recording method based on the baseboard management controller as described above.

[0018] The present invention also provides a computer program product, including a computer program that, when executed by a processor, implements the host crash screen recording method based on the baseboard management controller described above.

[0019] The present invention provides a host crash recording method and system based on a baseboard management controller. The baseboard management controller runs a real-time operating system and a preset non-real-time operating system. When the real-time operating system of the baseboard management controller starts successfully, the host crash recording operation is performed by the real-time operating system. The host crash recording operation can be completed when the baseboard management controller starts, which improves the reliability of host crash recording. Attached Figure Description

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

[0021] Figure 1 This is a flowchart illustrating the host crash screen recording method based on a baseboard management controller provided by the present invention.

[0022] Figure 2 This is a schematic diagram of the heterogeneous dual-core system startup process in the host crash screen recording method based on the baseboard management controller provided by the present invention.

[0023] Figure 3 This is a schematic diagram of the system physical block diagram of the host crash screen recording method based on the baseboard management controller provided by the present invention.

[0024] Figure 4This is a schematic diagram of the video data storage format in the host crash screen recording method based on the baseboard management controller provided by the present invention.

[0025] Figure 5 This is a schematic diagram of the execution flow of the host crash screen recording operation in the host crash screen recording method based on the baseboard management controller provided by the present invention.

[0026] Figure 6 This is a schematic diagram of the host crash screen recording system based on the baseboard management controller provided by the present invention.

[0027] Figure 7 This is a schematic diagram of the structure of the electronic device provided by the present invention. Detailed Implementation

[0028] To make the objectives, technical solutions, and advantages of this invention clearer, the technical solutions of this 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 this invention. All other embodiments obtained by those skilled in the art based on the embodiments of this invention without creative effort are within the scope of protection of this invention.

[0029] Definitions:

[0030] Baseboard Management Controller (BMC): A baseboard management controller (BMC) is an embedded computer subsystem, typically integrated into a server system. The BMC is responsible for managing and monitoring server hardware resources, providing remote management capabilities.

[0031] Linux: GNU / Linux is a free and open-source Unix-like operating system. It is a multi-user, multi-tasking operating system that supports multi-threading and multi-CPU.

[0032] RTOS: Real-time operating system.

[0033] KVM: Keyboard, Video, Mouse. KVM functions by using the USB interface connected to the host (BMC) and employing HID (Human Interface Device) drivers to virtually create a mouse and keyboard for the host, simultaneously capturing VGA graphics card output images and displaying the video images through KVM system software.

[0034] Screen recording during system crashes: This usually refers to a function that records the state and operations on the screen when the system or application crashes.

[0035] Figure 1 This is a flowchart illustrating the host crash screen recording method based on a baseboard management controller provided by the present invention. The baseboard management controller runs a real-time operating system and a preset non-real-time operating system, such as... Figure 1 As shown, the method includes:

[0036] Step S1: When the baseboard management controller is powered on, in response to the successful startup of the real-time operating system of the baseboard management controller, the real-time operating system performs the host crash screen recording operation.

[0037] The Baseboard Management Controller (BMC) connects to the host computer and manages the host's hardware resources. The BMC runs a real-time operating system and a default non-real-time operating system. In the embedded field, Linux is often used as the default non-real-time operating system. This application will use Linux as the default non-real-time operating system as an example, but this does not constitute a limitation on the default non-real-time operating system.

[0038] The business functions of the baseboard management controller (BMC) are executed by the Linux system. After a normal boot, the Linux system launches multiple processes, each performing different tasks such as power management, sensor data monitoring, video processing, and fan control. Different tasks are managed by different processes. The Linux system crash recording is implemented within the KVM server process. The prerequisite for this function is a normal boot of the Linux system and the normal operation of the KVM server process. However, during the power-on startup of the baseboard management controller, because Linux is a non-real-time operating system, its startup takes time. Therefore, if the host system crashes during the Linux system startup process, crash recording cannot be performed.

[0039] However, for real-time operating systems, the power-on startup time is negligible, which means that as long as the system is powered on, the real-time operating system can work normally, that is, it is possible to perform screen recording operation on a power-on system.

[0040] Therefore, to improve the reliability of crash recording during the startup process of a pre-defined non-real-time operating system, if the real-time operating system of the baseboard management controller starts successfully during BMC power-on startup, the real-time operating system will perform the host crash recording operation. It is possible to configure the real-time operating system to automatically perform the host crash recording operation after successful startup.

[0041] The host crash recording method based on the baseboard management controller provided by this invention uses a baseboard management controller that runs a real-time operating system and a preset non-real-time operating system. When the real-time operating system of the baseboard management controller starts successfully, the host crash recording operation is performed by the real-time operating system. The host crash recording operation can be completed when the baseboard management controller starts, which improves the reliability of host crash recording.

[0042] According to the present invention, a host crash recording method based on a baseboard management controller is provided, wherein the real-time operating system runs on a first CPU core and the preset non-real-time operating system runs on a second CPU core.

[0043] The baseboard management controller supports multiple CPU cores. In this embodiment, the real-time operating system runs on the first CPU core, and the preset non-real-time operating system runs on the second CPU core. This is a heterogeneous dual-core system. Restarting one system in a dual-core system typically does not affect the operation of the other. Each operating system runs independently in its own partition. The first CPU core runs the real-time operating system, executing only the crash recording and storage program; the second CPU core runs the preset non-real-time operating system, acquiring sensor detection and alarm information from the host via interfaces such as SPI / USB / PCIe to achieve functions such as power management and KVM control.

[0044] Figure 2 This is a schematic diagram of the heterogeneous dual-core system startup process in the host crash screen recording method based on the baseboard management controller provided by the present invention, as shown below. Figure 2 As shown, the startup process includes:

[0045] 1) Power-on wakes up the first CPU core, CPU0;

[0046] 2) CPU0 runs the specified program in BootROM (diskless boot ROM interface) to load the real-time operating system (RTOS system) and start the system;

[0047] 3) SPL is called during the RTOS system startup process;

[0048] 4) The SPL (Secondary Program Loader) stage guides U-Boot (boot loader) to start;

[0049] 5) During the Uboot phase, the Linux kernel is loaded and the BMC business program is started.

[0050] The baseboard management controller runs a real-time operating system and a preset non-real-time operating system independently. Using a multi-core CPU is a common way to achieve independent operation of the real-time operating system and the preset non-real-time operating system, but other methods can also be used, such as virtualization technology.

[0051] The host crash recording method based on the baseboard management controller provided by the present invention achieves independent operation of the real-time operating system and the preset non-real-time operating system by running a real-time operating system on the first CPU core and a preset non-real-time operating system on the second CPU core.

[0052] According to the present invention, a method for recording a host computer crash based on a baseboard management controller is provided. The method further includes: in response to the real-time operating system obtaining information that the preset non-real-time operating system has successfully started and entered a normal working state, transferring the execution permission of the host computer crash recording operation from the real-time operating system to the preset non-real-time operating system.

[0053] When a non-real-time operating system like Linux boots successfully, it starts multiple processes, including a KVM server process. This server process primarily acquires and processes host image data, running multiple threads to handle KVM image transmission, mouse and keyboard input, screenshot command transmission, crash recording, and settings modification. Therefore, the KVM server process's ability to perform crash recording is a function already implemented in the default non-real-time operating system.

[0054] This application runs both a real-time operating system and a preset non-real-time operating system simultaneously. During the startup process of the preset non-real-time operating system, the real-time operating system performs host crash recording. After the preset non-real-time operating system starts normally and the KVM server process runs normally, the preset non-real-time operating system will also perform crash recording.

[0055] First, only one operating system should be selected for crash recording, rather than two operating systems running simultaneously. Otherwise, it will not only waste resources but also lead to resource contention and conflicts. One option is to have the real-time operating system continuously perform the host crash recording. In this case, the host crash recording-related functions in the KVM server process need to be removed. Alternatively, after the default non-real-time operating system has successfully started and the KVM server process is running normally, the host crash recording privileges can be transferred to the default non-real-time operating system for execution.

[0056] After the default non-real-time operating system starts successfully and the KVM server process runs normally, the permissions for recording the screen during a host crash are transferred to the default non-real-time operating system, based on the following considerations:

[0057] (1) In the Linux system, the KVM server process will always interact with the underlying VGA driver module. Therefore, to ensure the normal operation of this KVM server process, computing resources should be concentrated on the Linux system. Thus, when Linux starts up and runs normally, the RTOS will release resources (such as CPU, memory, etc.) so that they can be used entirely for applications in Linux, thereby improving the overall performance of Linux.

[0058] (2) Using RTOS to handle real-time tasks and Linux to handle non-real-time tasks helps to improve the overall stability and reliability of the system.

[0059] Therefore, after the real-time operating system starts successfully, in response to the real-time operating system obtaining the information that the preset non-real-time operating system has started successfully and entered normal working state, the execution permission of the host's information crash screen recording operation is transferred from the real-time operating system to the preset non-real-time operating system.

[0060] The real-time operating system (RTOS) and the pre-defined non-real-time operating system (NPS) can exchange data via shared memory, VGA video memory, USB, and other channels. The ROS can obtain the status of the NPS by listening to a pre-defined flag in a pre-defined register; the value of this flag indicates the status of the NPS. Alternatively, it can obtain this status by receiving notification messages from the NPS. For example, after the KVM server process of the NPS is running normally, it exchanges data with the first CPU core via shared memory, VGA video memory, USB, etc., notifying the first CPU core. The first CPU core then relinquishes control of the crash recording function to the second CPU core.

[0061] The host crash screen recording method based on the baseboard management controller provided by the present invention transfers the execution permission of the host crash screen recording operation from the real-time operating system to the preset non-real-time operating system in response to the information that the preset non-real-time operating system has successfully started and entered the normal working state. This improves system stability and saves system resources.

[0062] According to the present invention, a method for recording a host computer crash based on a baseboard management controller is provided. The method further includes: in response to the real-time operating system obtaining information that the preset non-real-time operating system has restarted or failed, transferring the execution permission of the host computer crash recording operation from the preset non-real-time operating system to the real-time operating system.

[0063] The default non-real-time operating system may restart or malfunction. During the restart process or if a malfunction occurs, the host crash recording operation cannot be executed normally. Therefore, after the default non-real-time operating system successfully boots and enters normal working state, the execution permission for the host crash recording operation is transferred from the real-time operating system to the default non-real-time operating system. The real-time operating system can monitor the status of the default non-real-time operating system in real time. Upon detecting a restart or malfunction in the default non-real-time operating system, the execution permission for the host crash recording operation is transferred back to the real-time operating system.

[0064] The host crash recording method based on the baseboard management controller provided by the present invention transfers the execution permission of the host crash recording operation from the preset non-real-time operating system to the real-time operating system in response to the information that the preset non-real-time operating system has restarted or failed, thereby further improving the reliability of crash recording.

[0065] According to the present invention, a method for recording a host computer crash based on a baseboard management controller is provided. The method further includes: in response to the real-time operating system obtaining information that the preset non-real-time operating system has successfully restarted and entered a normal working state or that the operating system has recovered from a fault, transferring the execution permission of the host computer crash recording operation from the real-time operating system to the preset non-real-time operating system.

[0066] If the default non-real-time operating system restarts or malfunctions, the execution permission for the host crash screen recording operation will be transferred from the default non-real-time operating system to the real-time operating system. The real-time operating system can monitor the status of the default non-real-time operating system in real time. In response to the default non-real-time operating system successfully restarting and entering normal working state or the operating system recovering from the failure, the execution permission for the host crash screen recording operation will be transferred from the real-time operating system to the default non-real-time operating system.

[0067] The host crash screen recording method based on the baseboard management controller provided by the present invention transfers the execution permission of the host crash screen recording operation from the real-time operating system to the preset non-real-time operating system in response to the information that the preset non-real-time operating system has successfully restarted and entered the normal working state or the operating system has recovered from the failure. This further improves system stability and saves system resources.

[0068] According to the present invention, a method for recording a host computer crash based on a baseboard management controller is provided. The host computer crash recording operation includes: sending a query command to the host to obtain the value of a preset register; and starting the recording process in response to the preset register being set.

[0069] Figure 3This is a schematic diagram of the system physical block diagram of the host crash screen recording method based on the baseboard management controller provided by the present invention. Figure 3 As shown, when performing screen recording during a host crash, both the real-time operating system and the default non-real-time operating system can periodically send query commands (such as IPMI commands) to the host to obtain the values ​​of default registers. When a default register is set, it indicates that the host has crashed, and the screen recording process begins. IPMI is a hardware management interface.

[0070] The present invention provides a host crash screen recording method based on a baseboard management controller, which improves the reliability of host crash screen recording operation by sending a query command to the host to obtain the value of a preset register and starting the screen recording process in response to the preset register being set.

[0071] According to the present invention, a method for recording a host computer crash based on a baseboard management controller is provided. The recording process includes: reading VGA image data of the host computer obtained from the VGA driver module from memory; packaging the VGA image data into video data according to the encoding format of the VGA image data; and storing the video data in a preset storage location.

[0072] like Figure 3 As shown, during the screen recording process, both the real-time operating system and the default non-real-time operating system read VGA image data from the host computer's memory, package the VGA image data into video data according to the VGA image data's encoding format, and store the video data in a default storage location. Specifically, the BMC's VGA driver module acquires the host computer's VGA image data in real time and stores it in the BMC's memory. The default storage location can be a Flash / TF card, etc., and can be set in the BMC client.

[0073] The present invention provides a host crash screen recording method based on a baseboard management controller. By reading the host's VGA image data obtained from the VGA driver module from memory, packaging the VGA image data into video data according to the encoding format of the VGA image data, and storing the video data in a preset storage location, the method realizes the generation and storage of host crash video data, which facilitates troubleshooting.

[0074] According to the present invention, a method for recording a host computer crash based on a baseboard management controller is provided, wherein the video data includes a REC header and data packets; wherein the REC header includes a timestamp, data size and the encoding format; and the data packets include a frame header and frame data, or the data packets include frame data.

[0075] Figure 4This is a schematic diagram illustrating the storage format of video data in the host crash screen recording method based on a baseboard management controller provided by this invention. Different types of BMC chips may acquire VGA image data in different encoding formats, such as JPEG or YUV. The VGA image data is packaged into video data according to its encoding format.

[0076] To accommodate different video data formats, video data is defined as consisting of a REC header and data packets. The REC header includes a timestamp, data size, and encoding format, with the following structure:

[0077] typedef struct

[0078] {

[0079] uint32_t timestamp;

[0080] uint32_t size;

[0081] uint8_t mode;

[0082] }

[0083] The timestamp can be a timestamp indicating the time when the VGA image data was acquired.

[0084] Data packets differ depending on the data format. For JPEG format data, the data packets contain only frame data. For YUV format image data, the data packets consist of a frame header and frame data. The frame header is the header of a single frame of data, including information such as image resolution, and its format is as follows:

[0085] typedef struct

[0086] {

[0087] uint16_t engineVersion;

[0088] uint16_t headerLength;

[0089] uint16_t SourceModeInfoX;

[0090] uint16_t SourceModeInfoY;

[0091] uint16_t SourceModeInfoColorDepth;

[0092] uint16_t SourceModeInfoModeIndex;

[0093] uint8_t Mode420;

[0094] uint32_t StartCode;

[0095] uint32_t FrameNumber;

[0096] uint16_t HSize;

[0097] uint16_t VSize;

[0098] uint8_t JPEGYUVTbaleMapping;

[0099] uint8_t JPEGTbaleSelector;

[0100] uint32_t CompressDataSize;

[0101] uint32_t HDebug;

[0102] uint32_t VDebug;

[0103] uint16_t CursorXPos;

[0104] uint16_t CursorYPos;

[0105] }

[0106] The frame header data is used to encode and decode image data, converting H.264 video images into RGB images for easy display on the client side.

[0107] Therefore, depending on the encoding format of VGA image data, the data packet may include a frame header and frame data, or it may only include frame data.

[0108] The present invention provides a host crash recording method based on a baseboard management controller, which achieves differentiated storage of video data of different formats by setting video data to include a REC header and data packets. The REC header includes a timestamp, data size and encoding format, and the data packets include a frame header and frame data, or the data packets include frame data.

[0109] According to the present invention, a method for recording a host computer crash based on a baseboard management controller is provided. The method further includes: in response to receiving a video query command from a client, obtaining the corresponding video data and sending it to the client, so that the client can call the corresponding video codec according to the encoding format of the video data to realize the decoding and playback of the video data.

[0110] The BMC client can connect to a web server running on a second CPU core, and can acquire and parse video data, including video data generated by the real-time operating system and the preset non-real-time operating system.

[0111] The BMC client can display a list of video data and trigger a video query command to be sent to the BMC server by clicking on a video data item in the list. Upon receiving the video query command from the client, the BMC server retrieves the corresponding video data and sends it to the client. The client then uses the encoding format in the REC header of the video data to call the corresponding video codec to decode and play the video data.

[0112] Video data from a host failure can also be played directly from the local storage. This allows playback of videos stored on the TF card when the device fails to boot, facilitating video data parsing by other devices. Storing failure videos on the TF card ensures access to server failure videos even in the event of a BMC failure or FLASH corruption. Maintenance personnel can view BMC failure videos without accessing the host. In unexpected situations such as upgrades, startups, crashes, and recovery, maintenance personnel can still obtain failure videos for rapid fault analysis and localization, improving operational efficiency.

[0113] The present invention provides a method for recording the screen during a host failure based on a baseboard management controller. In response to a video query command received from a client, the method obtains the corresponding video data and sends it to the client, so that the client can call the corresponding video codec according to the encoding format of the video data to realize the decoding and playback of the video data, which facilitates the troubleshooting of host failure problems.

[0114] Figure 5 This is a schematic diagram illustrating the execution flow of the host crash screen recording operation in the host crash screen recording method based on a baseboard management controller provided by the present invention. For example... Figure 5 As shown, the process includes:

[0115] Periodically send IPMI query commands to the host to check whether the preset register (register A) has been set;

[0116] If register A is set, retrieve the host VGA image data stored in the VGA driver module from memory;

[0117] According to VGA image data Figure 4 The storage format shown is used for packet processing and then compressed and packaged to obtain video data;

[0118] Store the video data in the specified location.

[0119] Traditional crash recording functionality requires the Linux system to boot normally and the KVM server process to run properly. If the BMC crashes immediately upon power-up, or during a BMC Linux system reboot, upgrade, or crash, the crash recording function cannot be triggered because the Linux system takes time to boot, and the KVM server process has not yet started during this process.

[0120] This invention provides a BMC (Browser Control Center) crash recording and storage solution based on a heterogeneous dual-system architecture. It primarily addresses the issue of failing to record crashes during Linux system upgrades, startups, crashes, or when KVM server processes are not running normally. The solution utilizes a dual-core ARM architecture, with one core running Linux to execute BMC functionalities such as sensor monitoring, alarms, power management, and fan control. The other core runs an RTOS (Real-Time Operating System) that executes only the crash recording and storage program. Because the RTOS runs immediately upon power-up, it eliminates startup time, enabling immediate recording of server crashes. This improves the ability to capture information during system failures, facilitating rapid fault location and repair.

[0121] The following describes the host crash recording system based on the baseboard management controller provided by the present invention. The host crash recording system based on the baseboard management controller described below and the host crash recording method based on the baseboard management controller described above can be referred to and correspond to each other.

[0122] Figure 6 This is a schematic diagram of the host crash recording system based on a baseboard management controller provided by the present invention. The baseboard management controller runs a real-time operating system and a preset non-real-time operating system, such as... Figure 6 As shown, the system includes a crash recording management module 10, which is used to: when the baseboard management controller is powered on and started, in response to the successful startup of the real-time operating system of the baseboard management controller, execute the host crash recording operation by the real-time operating system.

[0123] The host crash recording system based on the baseboard management controller provided by this invention has a real-time operating system and a preset non-real-time operating system running on the baseboard management controller. When the real-time operating system of the baseboard management controller starts successfully, the host crash recording operation is performed by the real-time operating system. The host crash recording operation can be completed when the baseboard management controller starts, which improves the reliability of host crash recording.

[0124] The present invention also provides a baseboard management controller, which includes the host crash screen recording system described in the above embodiments.

[0125] Figure 7 An example is a schematic diagram of the physical structure of an electronic device, such as... Figure 7 As shown, the electronic device may include a processor 710, a communications interface 720, a memory 730, and a communication bus 740, wherein the processor 710, communications interface 720, and memory 730 communicate with each other via the communication bus 740. The processor 710 can call logical instructions in the memory 730 to execute a host crash recording method based on a baseboard management controller. The baseboard management controller runs a real-time operating system and a preset non-real-time operating system. The method includes: when the baseboard management controller powers on, in response to the successful startup of the real-time operating system of the baseboard management controller, the real-time operating system performs the host crash recording operation.

[0126] Furthermore, the logical instructions in the aforementioned memory 730 can be implemented as software functional units and, when sold or used as independent products, can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, essentially, or the part that contributes to the prior art, or a part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0127] On the other hand, the present invention also provides a computer program product, which includes a computer program that can be stored on a non-transitory computer-readable storage medium. When the computer program is executed by a processor, the computer can execute the host crash recording method based on the baseboard management controller provided by the above methods. The baseboard management controller runs a real-time operating system and a preset non-real-time operating system. The method includes: when the baseboard management controller is powered on, in response to the successful startup of the real-time operating system of the baseboard management controller, the real-time operating system performs the host crash recording operation.

[0128] In another aspect, the present invention also provides a non-transitory computer-readable storage medium storing a computer program thereon, which, when executed by a processor, implements the host crash screen recording method based on a baseboard management controller provided by the above methods, wherein the baseboard management controller runs a real-time operating system and a preset non-real-time operating system; the method includes: when the baseboard management controller is powered on and started, in response to the successful startup of the real-time operating system of the baseboard management controller, the real-time operating system performs the host crash screen recording operation.

[0129] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs. Those skilled in the art can understand and implement this without any creative effort.

[0130] Through the above description of the embodiments, those skilled in the art can clearly understand that each embodiment can be implemented by means of software plus necessary general-purpose hardware platforms, and of course, it can also be implemented by hardware. Based on this understanding, the above technical solutions, in essence or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, magnetic disk, optical disk, etc., and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute the methods described in the various embodiments or some parts of the embodiments.

[0131] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, and not to limit them; although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features; and these modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present invention.

Claims

1. A method for recording the screen during a host computer crash based on a baseboard management controller, characterized in that, The baseboard management controller runs a real-time operating system and a preset non-real-time operating system; the method includes: When the baseboard management controller is powered on, in response to the successful startup of the real-time operating system of the baseboard management controller, the real-time operating system performs the host crash screen recording operation. The real-time operating system runs on the first CPU core, and the preset non-real-time operating system runs on the second CPU core. Each operating system runs independently in its own partition. The first CPU core runs the real-time operating system and only executes the crash recording and storage program. The second CPU core runs the preset non-real-time operating system and obtains sensor detection and alarm information from the host through SPI / USB / PCIe interfaces to realize power management and KVM control functions. In response to the real-time operating system receiving information that the preset non-real-time operating system has successfully started and entered a normal working state, the execution permission for the host crash screen recording operation is transferred from the real-time operating system to the preset non-real-time operating system. In response to the real-time operating system obtaining information that the preset non-real-time operating system has restarted or malfunctioned, the execution permission for the host crash screen recording operation is transferred from the preset non-real-time operating system to the real-time operating system. In response to the real-time operating system obtaining information that the preset non-real-time operating system has successfully restarted and entered a normal working state or that the operating system has recovered from a failure, the execution permission for the host crash screen recording operation is transferred from the real-time operating system to the preset non-real-time operating system. The host crash screen recording operation includes: Send a query command to the host to obtain the value of the preset register; In response to the preset register being set, the screen recording process is initiated; The screen recording process includes: The VGA image data of the host obtained from the VGA driver module is read from memory; The VGA image data is packaged into video data according to the encoding format of the VGA image data. The video data is stored in a preset storage location.

2. The method for recording a host computer crash based on a baseboard management controller according to claim 1, characterized in that, The video data includes a REC header and data packets; wherein the REC header includes a timestamp, data size, and the encoding format; the data packets include a frame header and frame data, or the data packets include frame data.

3. The method for recording a host computer crash based on a baseboard management controller according to claim 2, characterized in that, The method further includes: In response to receiving a video query command from the client, the corresponding video data is obtained and sent to the client, so that the client can call the corresponding video codec according to the encoding format of the video data to decode and play the video data.

4. A host computer crash recording system based on a baseboard management controller, characterized in that, The baseboard management controller runs a real-time operating system and a preset non-real-time operating system; the host crash recording system includes a crash recording management module, which is used for: When the baseboard management controller is powered on, in response to the successful startup of the real-time operating system of the baseboard management controller, the real-time operating system performs the host crash screen recording operation. The real-time operating system runs on the first CPU core, and the preset non-real-time operating system runs on the second CPU core. Each operating system runs independently in its own partition. The first CPU core runs the real-time operating system and only executes the crash recording and storage program. The second CPU core runs the preset non-real-time operating system and obtains sensor detection and alarm information from the host through SPI / USB / PCIe interfaces to realize power management and KVM control functions. In response to the real-time operating system receiving information that the preset non-real-time operating system has successfully started and entered a normal working state, the execution permission for the host crash screen recording operation is transferred from the real-time operating system to the preset non-real-time operating system. In response to the real-time operating system obtaining information that the preset non-real-time operating system has restarted or malfunctioned, the execution permission for the host crash screen recording operation is transferred from the preset non-real-time operating system to the real-time operating system. In response to the real-time operating system obtaining information that the preset non-real-time operating system has successfully restarted and entered a normal working state or that the operating system has recovered from a failure, the execution permission for the host crash screen recording operation is transferred from the real-time operating system to the preset non-real-time operating system. The host crash screen recording operation includes: Send a query command to the host to obtain the value of the preset register; In response to the preset register being set, the screen recording process is initiated; The screen recording process includes: The VGA image data of the host obtained from the VGA driver module is read from memory; The VGA image data is packaged into video data according to the encoding format of the VGA image data. The video data is stored in a preset storage location.

5. A baseboard management controller, characterized in that, Includes the host crash screen recording system based on the baseboard management controller as described in claim 4.

Citation Information

Patent Citations

  • Server abnormal state recording method and system and storage medium

    CN110417619A

  • Server monitoring method and device, substrate controller and embedded system

    CN117555760A