BMC (Baseboard Management Controller) remote visual debugging method, system, equipment and medium
Through system service retrieval and automated compilation technology, remote visual debugging of BMC is realized, solving the cumbersome and time-consuming problems of traditional BMC debugging process, providing intuitive debugging information, and improving debugging efficiency and system stability.
Patent Information
- Application Number
- CN202510395471.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-03-31
- Publication Date
- 2025-07-08
AI Technical Summary
The debugging process of traditional BMC is cumbersome and time-consuming, and the firmware download and restart frequently, lacks intuitiveness and immediacy, which affects the development efficiency and debugging difficulty.
System services are used to retrieve and extract the software package list, automatically compile the source code and generate the installation package, support download and update of various software package types, and display debugging information in real time.
Simplify the debugging process, improve efficiency, enhance the accuracy and reliability of debugging, provide comprehensive debugging information, and improve the flexibility of development and maintenance and system stability.
Smart Images

Figure CN120276964A_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the field of computer technology, and more specifically, relates to a BMC remote visualization debugging method, system, device and medium. Background Art
[0002] In the field of server management, the Baseboard Management Controller (BMC) plays a crucial role. The BMC is responsible for monitoring the hardware status of the server, managing the power supply, recording event logs, and providing remote access and other functions, and is a key component to ensure the stable operation of the server. However, during the development process of the BMC system, developers face many challenges, among which the most prominent is the cumbersome and inefficient debugging process.
[0003] The traditional BMC development and debugging process usually needs to be carried out in a physical server environment. This process includes writing BMC program code, manually compiling to generate the BMC firmware program, downloading the firmware program into the BMC Flash chip of the server, restarting the BMC system to apply the new firmware, and then debugging the firmware program and generating debugging logs. Based on the feedback of the debugging logs, developers need to return to the source code level to make necessary changes, and then repeat the above entire process again. This repeated process is not only time-consuming, but also greatly limits the development efficiency.
[0004] Particularly worthy of attention is that the link of downloading and updating the firmware program has become a bottleneck in the entire debugging process. Since the firmware program needs to be transferred to the BMC Flash chip of the server physically or through specific download tools, this process is not only complex to operate, but also time-consuming. Especially during the process of multiple iterative debugging, frequent firmware downloads and BMC restarts are undoubtedly a huge waste of development time.
[0005] In addition, traditional debugging methods often lack intuitiveness and immediacy. Developers usually can only indirectly understand the running status of the BMC firmware by viewing debugging logs, which not only increases the difficulty of debugging, but also prolongs the time to solve problems. Summary of the Invention
[0006] Aiming at the above problems, the purpose of the present invention is to provide a BMC remote visualization debugging method, system, device and medium. By adopting system service retrieval, source code automatic compilation, software package automatic identification and update, and real-time log visualization technologies, the debugging process is simplified, the efficiency is improved, the comprehensive visualization of debugging information is realized, and the flexibility and reliability of BMC system development and maintenance are significantly enhanced.
[0007] To achieve the above object, the present invention is realized through the following technical solutions: In a first aspect, an embodiment of the present application provides a BMC remote visualization debugging method, including: Retrieving system services to extract a software package list in the BMC system; Based on the software package list, retrieving the source code of the software package to be debugged locally and compiling the source code of the software package to generate a software installation package; Downloading the software installation package and updating it to the BMC system, and collecting the software package running logs after the update is completed; Realtime displaying the software package list, the compilation process of the software package source code, and the software package running logs.
[0008] In an optional implementation manner, the retrieving system services to extract a software package list in the BMC system includes: Using the linux system systemctl command to list all system service software lists, parsing the list string in sequence, and regenerating a software package list according to a custom network protocol in json storage format; the software package list records information of BMC system software and information of application software.
[0009] In an optional implementation manner, the retrieving the source code of the software package to be debugged locally and compiling the source code of the software package to generate a software installation package based on the software package list includes: Obtaining the name of the software package to be debugged based on the software package list; According to the name of the software package to be debugged, retrieving the source code of the software package by executing the devtool modify command and decompressing it to a specified directory of the debugger; Compiling the source code of the software package, and controlling the interface compilation call operation by integrating and encapsulating the compilation command devtoolbuild in the interface button operation; Realtime displaying the compilation output log of the devtool build command in the visualization text display box; After the compilation is completed, generating a software installation package.
[0010] In an optional implementation manner, the downloading the software installation package and updating it to the BMC system includes: Downloading the software installation package to the BMC system and identifying the type of the software installation package; For software packages at the BMC file system level, decompressing the software installation package to the BMC system by calling the tar command and automatically replacing the original software package file; For u-boot and kernel software packages, burning the software installation package to a specified BMC Flash memory partition by an online burning method; After the update is completed, execute the reboot command through the system function to restart the BMC system.
[0011] In an optional implementation, after the update is completed, collect the running logs of the software packages, including: Retrieve the running logs of the updated software packages through the linux system command journalctl and display the logs through a visualization window.
[0012] In a second aspect, an embodiment of the present application further provides a BMC remote visualization debugging system, including: The system includes a BMC system end and a debugger, and the BMC system end and the debugger are connected through a network; The BMC system end includes: A remote debugging service module, which is used to retrieve the system service, extract the software package list in the BMC system; download the software installation package, perform software package update and replacement, restart the software package program, restart the BMC system, and obtain the running logs of the software packages; The debugger includes: A remote control module, which is used to access the remote debugging service module of the BMC system end, obtain the software package list, control the software package update, restart the operation of the software package program, and restart the BMC system; A visualization compilation module, which is used to visually display the software package list, retrieve the source code of the software package to be debugged locally, compile the source code of the software package, generate the software installation package, and display the compilation process logs; A visualization monitoring module, which is used to obtain the running logs of the software packages and display them in a visualization window.
[0013] In an optional implementation, the remote control module is specifically used for: Communicate with the remote debugging service module of the BMC system end by encapsulating a custom network protocol, obtain the software package list and store it locally and upload it to the visualization display interface; Send the software package update command to the remote debugging service module of the BMC system end through the HTTPS protocol, and the remote debugging service module executes the decompression or online flashing process after receiving the command; Send a command to restart the software package service according to the type of the software installation package to make the software package update take effect.
[0014] In an optional implementation, the visualization compilation module is specifically used for: Display the software package list in the list box of the visualization interface; After the user selects a certain software package in the software package list, retrieve the software package source code locally; according to the software package name, retrieve the software package source code by executing the devtool modify command and decompress it to the specified directory on the debugger; Compile the source code, and realize the interface compilation call operation control by integrating and encapsulating the compilation command devtool build in the interface button operation; Synchronously display the compilation process log in the visualization interface, and display the compilation output log of the devtool build command in the text display box of the visualization interface.
[0015] Thirdly, an embodiment of the present application further provides an electronic device, including a memory, a processor, and a computer program stored on the memory and executable on the processor. When the processor executes the program, the steps of the BMC remote visualization debugging method described in any one of the above are implemented.
[0016] Fourthly, an embodiment of the present application further provides a storage medium, on which a computer program is stored. When the computer program is executed by a processor, the steps of the BMC remote visualization debugging method described in any one of the above are implemented.
[0017] It can be seen from the above technical solutions that the present invention has the following advantages: In the BMC remote visualization debugging method provided by the present application, the software package list in the BMC system is extracted by using the system service retrieval technology, and the software installation package is generated by retrieving and compiling the local source code, and supports the download, update and replacement of various software package types. At the same time, the method also displays the software package list, source code compilation process and software package operation log in real time, providing comprehensive debugging information for the debugger. The comprehensive application of these technical means not only simplifies the debugging operation process, reduces the debugging difficulty, but also enhances the accuracy and reliability of debugging, providing strong support for the development and maintenance of the BMC system.
[0018] The present application greatly shortens the debugging cycle through an integrated operation interface and an automated processing flow. The links such as system service retrieval, source code retrieval, compilation, installation update and log collection are seamlessly connected, reducing manual intervention, enabling the debugger to quickly locate and solve problems, and thus significantly improving the debugging efficiency.
[0019] The present application provides comprehensive debugging information for the debugger by displaying the software package list, source code compilation process and software package operation log in real time. This visual debugging method makes the debugging process more intuitive, helps the debugger better understand the running state and potential problems of the software package, and thus enhances the transparency and controllability of debugging.
[0020] This application demonstrates extremely high flexibility and adaptability. Whether it is a software package at the file system level or u-boot and kernel software packages that need to be burned online, this application can automatically identify and process them, meeting the debugging requirements of different types of software packages in the BMC system. This comprehensive support ability enables debuggers to avoid cumbersome manual operations for different software package types, further improving the debugging efficiency.
[0021] This application ensures the stability and consistency of the BMC system through an automated software package update and replacement process. When updating software packages, it can automatically identify the type of software package and adopt corresponding update strategies, avoiding the risk of misoperations that may be caused by manual operations. At the same time, the real-time log collection function also provides strong support for system monitoring and problem troubleshooting, further enhancing the stability and reliability of the system. Brief Description of the Drawings
[0022] In order to more clearly illustrate the technical solutions of the present invention, the accompanying drawings required for the description will be briefly introduced below. Obviously, the accompanying drawings in the following description are only some embodiments of the present invention. For those of ordinary skill in the art, without creative efforts, other drawings can be obtained based on these drawings.
[0023] Figure 1 It is a flowchart of the BMC remote visualization debugging method provided by this application.
[0024] Figure 2 It is a structural diagram of the BMC remote visualization debugging system provided by this application.
[0025] Figure 3 It is a structural diagram of the electronic device provided by this application. Detailed Description of the Embodiments
[0026] In the following, the specific steps of the BMC remote visualization debugging method will be described in detail, and various embodiments of the present disclosure will be described more comprehensively. The present disclosure can have various embodiments, and adjustments and changes can be made therein. However, it should be understood that there is no intention to limit the various embodiments of the present disclosure to the specific embodiments disclosed herein, but the present disclosure should be understood to cover all adjustments, equivalents, and / or alternative solutions that fall within the spirit and scope of the various embodiments of the present disclosure.
[0027] In the following, the term "comprising" or "may comprise" that can be used in various embodiments of the present disclosure indicates the presence of the disclosed functions, operations, or elements, and does not limit the addition of one or more functions, operations, or elements. Further, as used in various embodiments of the present disclosure, the terms "comprising", "having", and their cognates are only intended to represent specific features, numbers, steps, operations, elements, components, or combinations of the foregoing items, and should not be construed as precluding the existence or addition of one or more other features, numbers, steps, operations, elements, components, or combinations of the foregoing items.
[0028] Next, the technical solutions in the embodiments of the present invention will be clearly and completely described in conjunction with the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments are only a part of the embodiments of the present invention, rather than all the embodiments. All other embodiments obtained by those of ordinary skill in the art based on the embodiments of the present invention without creative efforts shall fall within the protection scope of the present invention.
[0029] Please refer to Figure 1 The following is a flowchart of a method for BMC remote visualization debugging in a specific embodiment. The method includes: S1: Extract the software package list in the BMC system by retrieving system services.
[0030] In the specific implementation, use the linux system systemctl command to list all system service software lists, parse the list strings in sequence, and regenerate the list according to the custom network protocol in the json storage format; the software package list records information about BMC system software and application software.
[0031] S2: Based on the software package list, retrieve the source code of the software package to be debugged locally and compile the source code of the software package to generate a software installation package.
[0032] In the specific implementation, first obtain the name of the software package to be debugged based on the software package list, and according to the name of the software package to be debugged, retrieve the source code of the software package by executing the devtool modify command and decompress it to the specified directory of the debugger.
[0033] Then, compile the source code of the software package, and control the interface compilation call operation by integrating and encapsulating the compilation command devtool build in the interface button operation.
[0034] At the same time, display the compilation output log of the devtool build command in the visual text display box in real time to synchronously display the compilation process log in the visual interface.
[0035] After compilation is completed, a software installation package is generated.
[0036] S3: Download the software installation package and update it to the BMC system. After the update is completed, collect the running logs of the software package.
[0037] In the specific implementation, first download the software installation package to the BMC system and identify the type of the software installation package. The types of the software installation package can include various ones, such as software packages at the BMC file system level, u-boot, kernel software packages and other system file packages.
[0038] For the software package at the BMC file system level, call the tar command to decompress the software installation package into the BMC system and automatically replace the original software package file.
[0039] For u-boot and kernel software packages, burn the software installation package into the specified BMC Flash memory partition by means of online flashing.
[0040] After the update is completed, execute the reboot command through the system function to restart the BMC system.
[0041] At the same time, call the running logs of the updated software package through the linux system command journalctl and display the logs through a visualization window.
[0042] S4: Display the software package list, the compilation process of the software package source code and the running logs of the software package in real time.
[0043] In the specific implementation, this step realizes the visualization of the development and debugging process. Specifically, it includes: During the compilation process, display the compilation output logs of the devtool build command in the visualization text display box in real time; When the software package list in the BMC system is obtained, display it in the list box in real time.
[0044] After the software package is updated successfully, call the running logs of the updated software package through the linux system command journalctl and display the logs through a visualization window.
[0045] In this embodiment, through the system service retrieval technology, the software package list in the BMC system is quickly extracted, and a new list is regenerated using a custom network protocol and JSON storage format to ensure the accuracy and readability of the information. On this basis, with the help of the local source code automatic retrieval and compilation technology, the source code of the software package to be debugged is quickly located according to the software package list, and the compilation command is integrated through interface operations to achieve automatic compilation of the source code. During this process, the compilation output log is displayed in real time in the visual text display box, enabling developers and debuggers to monitor the compilation progress and results in real time.
[0046] At the same time, this method also adopts the software package type automatic recognition and update technology, which automatically selects appropriate update strategies (such as decompression and replacement or online flashing) according to the type of software installation package (such as software packages at the BMC file system level, u-boot, kernel software packages, etc.) to ensure the correct update of the software package. After the update is completed, the update takes effect by executing the restart command, and the software package running log is collected in real time to provide strong support for subsequent fault troubleshooting and performance optimization.
[0047] In addition, this method also focuses on the comprehensive visualization of debugging information, and the software package list, the compilation process of the software package source code, and the software package running log are displayed in real time through the visualization window. This function not only improves the transparency of the debugging process but also enables developers and debuggers to more intuitively understand the status and changes of the software package, thereby more effectively locating problems and formulating solutions.
[0048] In summary, through the comprehensive application of system service retrieval technology, local source code automatic retrieval and compilation technology, software package type automatic recognition and update technology, and real-time log collection and visualization display technology, this method realizes the high-efficiency, precision, and comprehensive visualization of BMC remote visualization debugging. The application of these technical means not only significantly improves the debugging efficiency but also enhances the flexibility and reliability of BMC system development and maintenance, providing strong guarantee for the stable operation of the server.
[0049] Furthermore, as a refinement and extension of the specific implementation manner of the above embodiment, in order to fully illustrate the specific implementation process in this embodiment, another BMC remote visualization debugging method is provided. This method can be applied to the BMC remote visualization debugging constructed by the BMC system side and the debugger, and specifically includes the following steps: 1. Generate a software package list by retrieving the system service on the BMC system side.
[0050] 2. In the debugger, communicate with the remote debugging service module on the BMC side by encapsulating a custom network protocol, obtain the software package list, store the software package list locally, and display it on the visualization interface.
[0051] 3. In the debugger, a software package list is displayed through a visual interface. After the user selects a certain software package, the source code of the software package is retrieved from the local, and the source code is compiled. The compilation process log is synchronously displayed on the visual interface.
[0052] 4. On the BMC system side, the software package after compilation is used to perform updates according to the software package update method. For software packages at the file system level, they are decompressed into the BMC system in the form of compressed packages, and the software package files are automatically replaced; for software packages such as u-boot and the kernel that need to burn the Flash memory, the software packages are burned into the specified BMC Flash memory partition through the Flash memory writing method.
[0053] 5. On the BMC system side, the software package program restart or the BMC system restart action is controlled and executed according to the remote instructions of the debugger to realize the updated operation of the software package. The software package operation log is captured according to the debugger instructions and sent back to the debugger for analysis.
[0054] 6. The debugger communicates with the remote debugging service module on the BMC side to obtain the software package operation log and display it through a visual window.
[0055] As Figure 2 shown, the following is an embodiment of the BMC remote visual debugging system provided by the present disclosure. This system and the BMC remote visual debugging method of the above embodiments belong to the same inventive concept. For the details not described in detail in the embodiment of the BMC remote visual debugging system, reference can be made to the embodiment of the above BMC remote visual debugging method.
[0056] A BMC remote visual debugging system includes a BMC system side and a debugger, and the BMC system side and the debugger are connected through a network.
[0057] A remote debugging service module is provided in the BMC system side, which is used to extract the software package list in the BMC system by retrieving system services; download software installation packages, perform software package update replacement, restart the software package program, restart the BMC system, and obtain the software package operation log.
[0058] Exemplarily, the remote debugging service module is specifically used for: Using the linux system systemctl command to list all system service software lists, parsing the list string in sequence, and regenerating the list according to the custom network protocol in the json storage format. The software package list includes BMC system software, application software, etc.
[0059] For the software packages at the BMC file system level, they are decompressed into the BMC system by calling the tar command, and the software package files are automatically replaced; for the u-boot and kernel software packages, they are burned into the specified BMC Flash memory partition through the online burning method. Among them, the u-boot and kernel software packages are located in the specified partition positions on the flash, and the program can be written by directly performing the write operation on the specified partition positions of the flash mtd device.
[0060] After updating the software package, perform the restart service or BMC system action according to the instructions sent by the debugger remote control module.
[0061] After receiving the restart instruction, execute the reboot command through the system function in the program to restart the system.
[0062] According to the instructions sent by the debugger remote control module, collect the running logs of the specified software packages, and send them back to the debugger for debugging and analysis of the running status.
[0063] Collect the running logs of the specified software packages, retrieve the running logs of the specified software through the linux system command journalctl, and send the logs back to the debugger.
[0064] The debugger is equipped with a remote control module, a visual compilation module, and a visual monitoring module.
[0065] The remote control module is used to access the remote debugging service module on the BMC system side, obtain the software package list, control software package updates, restart the software package program, and restart the BMC system.
[0066] Exemplarily, the remote control module is specifically used for: Communicate with the remote debugging service module on the BMC system side by encapsulating a custom network protocol, obtain the system software package list, store it locally, and send it to the visual display interface.
[0067] The custom network protocol consists of a command word, request data, and a check code, and is transmitted through the HTTP protocol.
[0068] Send a software package update instruction to the BMC system side to control the update of the software package service program.
[0069] Send the software package update command to the BMC system side through the HTTPS protocol. After the HTTPS server on the other side receives the command, it executes the decompression or online burning process.
[0070] For the system software, according to the software package type, a command to restart the software package service is sent. For the instructions of the BMC system, generally, for the u-boot and kernel software packages, the update needs to be made effective by sending a command to restart the BMC system.
[0071] A visual compilation module is used to visually display the software package list, retrieve the source code of the software package to be debugged locally, compile the source code of the software package, generate a software installation package, and display the compilation process log.
[0072] Exemplarily, the visual compilation module is specifically used for: Display the software package list in the visual interface; After the user selects a certain software package, retrieve the source code of the software package from the local; according to the software package name, retrieve the source code of the software package by executing the devtool modify command and decompress it to the specified directory of the debugger.
[0073] Compile the source code, and realize the control of the interface compilation call operation by integrating and encapsulating the compilation command devtool build in the interface button operation.
[0074] Synchronously display the compilation process log in the visual interface. Specifically, display the compilation output log of the devtool build command in the text display box.
[0075] A visual monitoring module is used to obtain the software package running log and display it in the visual window.
[0076] In the embodiment, the visual monitoring module is specifically used for: The user selects a certain software package in the software package list; Communicate with the remote debugging service module on the BMC side to obtain the software package running log in real time; Display the running log through the visual window.
[0077] The BMC remote visualization debugging system provided in this embodiment realizes the efficient management, remote update, real-time monitoring, and visualization compilation of software packages in the BMC system by integrating a remote debugging service module, a remote control module, a visualization compilation module, and a visualization monitoring module, greatly improving the convenience and efficiency of system debugging and maintenance. Specifically, the remote debugging service module can accurately retrieve and extract the software package list in the BMC system, support remote download, update replacement, service restart, and system restart of software packages, and collect software package operation logs in real time, providing a solid guarantee for the stable operation of the system. The remote control module realizes seamless communication with the BMC system end by encapsulating a custom network protocol, enabling debuggers to easily obtain software package lists, control software package updates, system restarts, and other operations. The visualization compilation module further simplifies the debugging process by displaying the software package list through a visualization interface, supporting automatic retrieval and compilation of local source code, and displaying the compilation process logs in real time, making the compilation process more intuitive and transparent. Finally, the visualization monitoring module can obtain and display software package operation logs in real time, helping debuggers quickly locate and solve problems. The implementation of these functions not only significantly improves the convenience and efficiency of BMC system debugging and maintenance, but also provides strong support for the stable operation of the system.
[0078] Figure 3 Schematic diagram of the hardware structure of an electronic device for implementing each embodiment of the present invention.
[0079] The BMC remote visualization debugging method provided in the embodiments of the present application can be applied to an electronic device. Those skilled in the art can understand that the structure of the electronic device involved in the embodiments of the present invention does not limit the electronic device. The electronic device may include more or fewer components than shown in the figure, or combine certain components, or have different component arrangements. In the embodiments of the present invention, the electronic device includes, but is not limited to, a laptop computer, a desktop computer, a workbench, a personal digital assistant, a server, a blade server, a mainframe computer, and other suitable computers. The electronic device may also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the embodiments of the present application described and / or claimed herein.
[0080] The electronic device may include a processor, an external memory interface, an internal memory, a universal serial bus (USB) interface, a charging management module, a power management module, a battery, a wireless communication module, an audio module, a speaker, a microphone, a sensor module, a key, a camera, a display screen, and a SIM card interface, etc.
[0081] The processor may include one or more processing units. For example, the processor may include a central processing unit (CPU), an application processor (AP), a modem processor, a graphics processing unit (GPU), an image signal processor (ISP), a controller, a memory, a video codec, a digital signal processor (DSP), a baseband processor, and / or a neural-network processing unit (NPU), etc. Among them, different processing units may be independent devices or integrated in one or more processors.
[0082] Among them, the processor may be the nerve center and command center of the electronic device. The controller may generate operation control signals according to the instruction operation code and timing signals to complete the control of fetching and executing instructions.
[0083] A memory may also be provided in the processor for storing instructions and data. In some embodiments, the memory in the processor is a cache memory. This memory can save the instructions or data that the processor has just used or recycled. If the processor needs to use the instruction or data again, it can directly call it from this memory. This avoids repeated accesses, reduces the waiting time of the processor, and thus improves the system efficiency.
[0084] The external memory interface can be used to connect to an external memory card, such as a MicroSD card, to implement the storage capacity expansion of the electronic device. The external memory card communicates with the processor through the external memory interface to implement the data storage function. For example, files such as music and videos are saved in the external memory card.
[0085] The internal memory can be used to store computer-executable program codes, and the computer-executable program codes include instructions. The processor executes various functional applications and data processing of the electronic device by running the instructions stored in the internal memory. The internal memory may include a program storage area and a data storage area. The internal memory may include a high-speed random access memory and may also include non-volatile memory, such as at least one disk storage device, a flash memory device, a universal flash storage (UFS), etc.
[0086] The wireless communication function of the electronic device can be implemented through an antenna, a wireless communication module, a modem processor, a baseband processor, etc.
[0087] The wireless communication module can provide solutions for wireless communications applied to electronic devices, including wireless local area networks (WLANs) (such as wireless fidelity (Wi-Fi) networks), Bluetooth (BT), global navigation satellite systems (GNSS), frequency modulation (FM), near field communication (NFC), infrared technology (IR), etc.
[0088] The electronic device can implement audio functions through an audio module, speakers, receivers, microphones, headphone jacks, application processors, etc.
[0089] The electronic device can implement a shooting function through an ISP, a camera, a video codec, a GPU, a display screen, and an application processor, etc.
[0090] The electronic device can implement a display function through a GPU, a display screen, and an application processor, etc.
[0091] The GPU is a microprocessor for image processing, connecting the display screen and the application processor. The GPU is used to execute mathematical and geometric calculations for graphics rendering. The processor may include one or more GPUs that execute program instructions to generate or change display information.
[0092] The display screen is used to display images, videos, etc. The display screen includes a display panel.
[0093] The above-mentioned electronic device implements the BMC remote visualization debugging method of the present application. By adopting system service retrieval, source code automatic compilation, software package automatic identification and update, and real-time log visualization technology, the debugging process is simplified, the efficiency is improved, the comprehensive visualization of debugging information is realized, and the beneficial effects of significantly enhancing the flexibility and reliability of BMC system development and maintenance are achieved.
[0094] In the storage medium provided by the present application, there is a program product capable of implementing the BMC remote visualization debugging method.
[0095] The BMC remote visualization debugging method includes: retrieving system services to extract a software package list in the BMC system; based on the software package list, retrieving the source code of the software package to be debugged locally and compiling the source code of the software package to generate a software installation package; downloading the software installation package and updating it to the BMC system, and collecting the software package running logs after the update is completed; and visually displaying the software package list, the compilation process of the software package source code, and the software package running logs in real time.
[0096] In some possible embodiments, the BMC remote visualization debugging method of the present disclosure may be implemented in the form of a program product, which includes program code. When the program product runs on a terminal device, the program code is used to cause the terminal device to execute the steps according to various exemplary embodiments of the present disclosure described in the "Exemplary Method" section above of this specification.
[0097] The storage medium of the present disclosure may adopt any combination of one or more readable media. The readable media may be a readable signal medium or a readable storage medium. The readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the above. More specific examples (non-exhaustive list) of the readable storage medium include: an electrical connection having one or more wires, a portable disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above.
[0098] The above description of the disclosed embodiments enables those skilled in the art to implement or use the present invention. Various modifications to these embodiments will be obvious to those skilled in the art, and the general principles defined herein can be implemented in other embodiments without departing from the spirit or scope of the present invention. Therefore, the present invention will not be limited to the embodiments shown herein, but rather to the widest scope consistent with the principles and novel features disclosed herein.
Claims
1. A BMC remote visualization debugging method, characterized in that, Including: Extract the software package list in the BMC system through the retrieval system service; Based on the software package list, retrieve the source code of the software package to be debugged locally and compile the source code of the software package to generate a software installation package; Download the software installation package and update it to the BMC system. After the update is completed, collect the software package running logs; Realtime display the software package list, the compilation process of the software package source code, and the software package running logs.
2. The BMC remote visualization debugging method according to claim 1, wherein The step of extracting the software package list in the BMC system through the retrieval system service includes: Use the linux system systemctl command to list all system service software lists, parse the list string in sequence, and regenerate the software package list according to the custom network protocol in json storage format; the software package list records information of BMC system software and application software.
3. The BMC remote visualization debugging method according to claim 2, wherein The step of retrieving the source code of the software package to be debugged locally and compiling the source code of the software package to generate a software installation package based on the software package list includes: Obtain the name of the software package to be debugged based on the software package list; According to the name of the software package to be debugged, call the source code of the software package by executing the devtool modify command and decompress it to the specified directory of the debugger; Compile the source code of the software package. Control the interface compilation call operation by integrating and encapsulating the compilation command devtool build in the interface button operation; Realtime display the compilation output log of the devtool build command in the visual text display box; After the compilation is completed, generate a software installation package.
4. The BMC remote visualization debugging method according to claim 3, characterized in that, The step of downloading the software installation package and updating it to the BMC system includes: Download the software installation package to the BMC system and identify the type of the software installation package; For software packages at the BMC file system level, unzip the software installation package to the BMC system by calling the tar command and automatically replace the original software package file; For u-boot and kernel software packages, burn the software installation package to the specified BMC Flash memory partition by online burning; After the update is completed, execute the reboot command through the system function to restart the BMC system.
5. The BMC remote visualization debugging method according to claim 4, characterized in that The step of collecting the software package running logs after the update is completed includes: Retrieve the running logs of the updated software package through the linux system command journalctl and display the logs through a visual window.
6. A BMC remote visualization debugging system, characterized in that, The system adopts the BMC remote visual debugging method described in any one of claims 1 to 5; The system includes a BMC system end and a debugger, and the BMC system end and the debugger are connected through a network; The BMC system end includes: A remote debugging service module, which is used to extract the software package list in the BMC system through the retrieval system service; download the software installation package, perform software package update replacement, restart the software package program, restart the BMC system, and obtain the software package running logs; The debugger includes: A remote control module, which is used to access the remote debugging service module of the BMC system end to obtain the software package list, control the software package update, restart the software package program to run, and restart the BMC system; A visualization compilation module, which is used to visually display the software package list, retrieve the source code of the software package to be debugged locally, compile the source code of the software package, generate a software installation package, and display the compilation process log; A visualization monitoring module, which is used to obtain the software package running log and display it in the visualization window.
7. The BMC remote visualization debugging system according to claim 6, wherein The remote control module is specifically used for: Communicating with the remote debugging service module on the BMC system side by encapsulating a custom network protocol, obtaining the software package list and storing it locally and uploading it to the visualization display interface; Sending the software package update command to the remote debugging service module on the BMC system side through the HTTPS protocol. After receiving the command, the remote debugging service module executes the decompression or online flashing process; According to the type of the software installation package, sending a command to restart the software package service to make the software package update take effect.
8. The BMC remote visualization debugging system according to claim 6, characterized in that, The visualization compilation module is specifically used for: Displaying the software package list in the list box of the visualization interface; When the user selects a certain software package in the software package list, retrieving the source code of the software package from the local; according to the software package name, retrieving the source code of the software package by executing the devtool modify command and decompressing it to the specified directory of the debugger; Compiling the source code, and realizing the control of the interface compilation call operation by integrating and encapsulating the compilation command devtool build in the interface button operation; Synchronously displaying the compilation process log in the visualization interface and displaying the compilation output log of the devtool build command in the text display box of the visualization interface.
9. An electronic device, comprising a memory, a processor, and a computer program stored on the memory and executable on the processor, characterized in that, When the processor executes the program, it implements the steps of the BMC remote visualization debugging method according to any one of claims 1 to 5.
10. A storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by the processor, it implements the steps of the BMC remote visualization debugging method according to any one of claims 1 to 5.
Citation Information
Cited By
Remote visualization and mounting system
CN121116930A