Server startup display method and device
By displaying server information and progress information on the server startup interface, the problem of insufficient transparency in the server startup process is solved and the user experience is improved.
Patent Information
- Application Number
- CN202510852025.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-06-24
- Publication Date
- 2025-07-25
- Estimated Expiration
- 2045-06-24
AI Technical Summary
The server startup process is poor, and users cannot access the server information, resulting in poor user experience.
During the server startup process, the server information and startup progress information are displayed on the startup interface and updated according to the operation of the startup system, so that users can understand the server configuration and startup progress in real time.
Improves transparency of the server startup process and improves user experience.
Smart Images

Figure CN120371447A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the technical field of servers, and particularly to a method and device for starting and displaying a server. Background Art
[0002] With the continuous development of servers, the user experience of servers has increasingly become the focus of attention in the server industry. In related technologies, after a user presses the start button of a server, the user needs to wait for the server to complete the startup process. This process is often a black box operation for the user. During this process, the user cannot obtain any information about the server, and the transparency of the server startup process is poor, resulting in a poor user experience. Summary of the Invention
[0003] This application provides a method and device for starting and displaying a server, so as to at least solve the problem of poor transparency of the server startup process in related technologies.
[0004] This application provides a method for starting and displaying a server, including: when the server is started, running the startup system of the server; displaying server information on the startup interface of the startup system, and displaying startup progress information on the startup interface, where the server information is used to display the configuration of the server, and the startup progress information is used to display the startup progress of the server; updating the startup progress information according to the running situation of the startup system.
[0005] This application also provides a device for starting and displaying a server, including: a running module, configured to run the startup system of the server when the server is started; a first display module, configured to display server information on the startup interface of the startup system, and display startup progress information on the startup interface, where the server information is used to display the configuration of the server, and the startup progress information is used to display the startup progress of the server; an update module, configured to update the startup progress information according to the running situation of the startup system.
[0006] This application also provides an electronic device, including: a memory, configured to store a computer program; a processor, configured to implement the steps of any of the above-mentioned methods for starting and displaying a server when executing the computer program.
[0007] This application also provides a computer-readable storage medium, where a computer program is stored in the computer-readable storage medium, and the computer program, when executed by a processor, implements the steps of any of the above-mentioned methods for starting and displaying a server.
[0008] This application also provides a computer program product, including a computer program, and the computer program, when executed by a processor, implements the steps of any of the above-mentioned methods for starting and displaying a server.
[0009] Through this application, when the server is started, the startup system of the server is run. Server information for displaying the configuration of the server is shown on the startup interface of the startup system, and startup progress information for displaying the startup progress of the server is shown on the startup interface. The startup progress information is updated according to the running situation of the startup system. During the startup process of the server, the user can also obtain the configuration of the server and the startup progress of the server, improving the transparency of the server startup process. Therefore, the technical problem of poor transparency in the server startup process in the related art can be solved, achieving the technical effect of improving the transparency of the server startup process and thus enhancing the user experience. BRIEF DESCRIPTION OF THE DRAWINGS
[0010] To more clearly illustrate the embodiments of the present application, the drawings required for use in the embodiments will be briefly introduced below. Obviously, the drawings in the following description are only some embodiments of the present application. For those of ordinary skill in the art, without creative efforts, other drawings can also be obtained based on these drawings.
[0011] Figure 1 is the hardware structure block diagram of the server startup display method according to the embodiment of the present application;
[0012] Figure 2 is the flowchart of the server startup display method according to the embodiment of the present application;
[0013] Figure 3 is the schematic diagram of a configuration file according to the embodiment of the present application;
[0014] Figure 4 is the interaction schematic diagram between a controller and the startup system according to the embodiment of the present application;
[0015] Figure 5 is the flowchart of a method for selecting a configuration file on the startup interface through a controller according to the embodiment of the present application Figure 1 ;
[0016] Figure 6 is the flowchart of a method for selecting a configuration file on the startup interface through a controller according to the embodiment of the present application Figure 2 ;
[0017] Figure 7 is the schematic diagram of a method for adjusting fault weights according to the embodiment of the present application;
[0018] Figure 8 is the schematic of a startup interface according to the embodiment of the present application Figure 1 ;
[0019] Figure 9Schematic diagram of a startup interface according to an embodiment of the present application Figure 2 ;
[0020] Figure 10 Schematic diagram of a startup interface according to an embodiment of the present application Figure 3 ;
[0021] Figure 11 Schematic diagram of a startup interface according to an embodiment of the present application Figure 4 ;
[0022] Figure 12 Schematic diagram of a startup interface according to an embodiment of the present application Figure 5 ;
[0023] Figure 13 Schematic diagram of a startup interface according to an embodiment of the present application Figure 6 ;
[0024] Figure 14 Schematic diagram of a startup interface according to an embodiment of the present application Figure 7 ;
[0025] Figure 15 Block diagram of the structure of a startup display device for a server according to an embodiment of the present application. Detailed implementation manners
[0026] Next, the technical solutions in the embodiments of the present application will be clearly and completely described in conjunction with the accompanying drawings in the embodiments of the present application. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative efforts shall fall within the protection scope of the present application.
[0027] It should be noted that in the description of the present application, the terms "include", "comprise" or any other variation thereof are intended to cover a non-exclusive inclusion, such that a process, method, article or device including a series of elements not only includes those elements but also includes other elements not explicitly listed, or further includes elements inherent to such process, method, article or device. The terms "first", "second", etc. in the present application are used to distinguish similar objects and are not used to describe a specific order or sequence.
[0028] To enable those skilled in the art of the present technology to better understand the solution of the present application, the present application will be further described in detail below in conjunction with the accompanying drawings and specific implementation manners.
[0029] In combination with the specific application environment architecture or specific hardware architecture on which the execution of the server startup display method depends, the specific application environment architecture or specific hardware architecture will be described herein.
[0030] The method embodiments provided in the embodiments of the present application can be executed in a server device or a similar computing device. Taking the operation on a server device as an example, Figure 1 is a hardware structural block diagram of the server startup display method according to the embodiments of the present application. As Figure 1 shown, the server device may include one or more ( Figure 1 only one is shown in Figure 1 ) processors 102 (the processors 102 may include, but are not limited to, processing devices such as a microprocessor MCU or a programmable logic device FPGA) and a memory 104 for storing data. Among them, the above server device may further include a transmission device 106 for communication functions and an input / output device 108. Those of ordinary skill in the art can understand that Figure 1 the structure shown is only schematic and does not limit the structure of the above server device. For example, the server device may further include more or fewer components than Figure 1 shown in
[0031] The memory 104 can be used to store computer programs. For example, software programs and modules of application software, such as the computer program corresponding to the server startup display method in the embodiments of the present application. The processor 102 executes various functional applications and data processing by running the computer program stored in the memory 104, that is, implements the above method. The memory 104 may include a high-speed random access memory and may also include a non-volatile memory, such as one or more magnetic storage devices, flash memories, or other non-volatile solid-state memories. In some instances, the memory 104 may further include a memory remotely set relative to the processor 102, and these remote memories can be connected to the server device through a network. Examples of the above network include, but are not limited to, the Internet, an enterprise intranet, a local area network, a mobile communication network, and combinations thereof.
[0032] The transmission device 106 is used to receive or send data via a network. Specific examples of the above network may include a wireless network provided by the communication provider of the server device. In one instance, the transmission device 106 includes a network adapter (abbreviated as NIC), which can be connected to other network devices through a base station and thus can communicate with the Internet. In one instance, the transmission device 106 may be a radio frequency (abbreviated as RF) module, which is used to communicate with the Internet wirelessly.
[0033] The embodiments of the present application provide a server startup display method. In combination with the execution flow of the server startup display method, the method is described in detail.
[0034] In this embodiment, a server startup display method is provided. Figure 2 It is a flowchart of the server startup display method according to an embodiment of the present application, as Figure 2 shown. The method includes the following steps:
[0035] Step S202, when the server is started, run the startup system of the server;
[0036] Step S204, display server information on the startup interface of the startup system, and display startup progress information on the startup interface, where the server information is used to show the configuration of the server, and the startup progress information is used to show the startup progress of the server;
[0037] Step S206, update the startup progress information according to the running status of the startup system.
[0038] Through the above steps, when the server is started, run the startup system of the server, display server information for showing the configuration of the server on the startup interface of the startup system, and display startup progress information for showing the startup progress of the server on the startup interface, update the startup progress information according to the running status of the startup system. Users can also obtain the configuration of the server and the startup progress of the server during the startup process of the server, improving the transparency of the server startup process. Therefore, the technical problem of poor transparency in the server startup process in the related art can be solved, and the technical effect of improving the transparency of the server startup process and thus enhancing the user experience can be achieved.
[0039] In the embodiment provided in step S202, the server startup can be triggered in the following ways, but not limited to: directly operating the physical switch of the server, such as pressing the power button; remote startup, that is, through the network, using remote management tools such as the IPMI (Intelligent Platform Management Interface) protocol to start the server; software-triggered startup, that is, starting the server through certain software or operating system commands. The present application does not limit the way to trigger the startup of the server.
[0040] Optionally, in this embodiment, the server's startup system may, but is not limited to, refer to a series of firmware programs and software that run first after the server is powered on. The server's startup system may, but is not limited to, be responsible for initializing hardware resources, detecting hardware status, loading the operating system kernel, and completing the entire system boot process. The server's startup system may, but is not limited to, include: BIOS (Basic Input / Output System) or UEFI (Unified Extensible Firmware Interface).
[0041] In the embodiment provided in step S204, the startup interface may, but is not limited to, be displayed by the server's display device. The server's display device may, but is not limited to, display the startup interface during the server's startup process, and / or display the server's function interface during the running process after the server startup is completed.
[0042] Optionally, in this embodiment, the startup interface may, but is not limited to, be used to display relevant information during the server startup process. For example, it may, but is not limited to, display server information for showing the configuration of the server, and may also, but is not limited to, display startup progress information for indicating the startup progress of the server, and may also, but is not limited to, display system operations that can be executed during the startup process, etc.
[0043] Optionally, in this embodiment, the server information may, but is not limited to, be used to show the configuration of the server. It may, but is not limited to, be all system configuration items of the server, or may also, but is not limited to, be some system configuration items among all system configuration items of the server. This application does not make any limitation on this.
[0044] Optionally, in this embodiment, the server information displayed on the startup interface may, but is not limited to, be fixed, or may also, but is not limited to, be flexibly changeable.
[0045] Optionally, in this embodiment, the startup progress information may, but is not limited to, be used to show the startup progress of the server. The startup progress information may, but is not limited to, refer to the percentage of the currently completed startup process in the total startup process.
[0046] Optionally, in this embodiment, server information is displayed on the startup interface of the system, and the startup progress information is displayed on the startup interface. It is possible but not limited to insert multiple startup progress parameters into the server information for display. The startup progress information includes multiple startup progress parameters, and these multiple startup progress parameters respectively represent different startup progress. For example, it is possible but not limited to display the first startup progress parameter on the first line of the startup interface, where the first startup progress parameter is used to indicate that the startup progress of the current server is 0; display the server information on the second line and subsequent lines of the display interface, and continuously monitor the running status of the server startup system during the display process; when the running status of the startup system indicates that the startup progress is 50%, display the second startup progress parameter on the latest line without content in the current startup interface, and when the running status of the startup system indicates that the startup progress is 100%, display the third startup progress parameter on the latest line without content in the current startup interface, where the second startup progress parameter is used to indicate that the startup progress of the current server is 50%, and the third startup progress parameter is used to indicate that the startup progress of the current server is 100%.
[0047] In the embodiment provided in step S206, it is possible but not limited to update the startup progress information according to the running status of the startup system. During the startup process of the server, the startup system (such as BIOS or UEFI firmware) plays a core role. The startup system is responsible for initializing the hardware, loading the operating system kernel, executing pre-boot software, etc. Each step in the running process of the startup system can be regarded as a measurable event or state, and the progress of these events or states can be used but not limited to reflect the overall startup progress of the server. It is possible but not limited to establish the correspondence between multiple steps in the startup system and the startup progress of the server. When it is detected that the startup system runs to a certain step, use the startup progress corresponding to this step to update the startup progress information.
[0048] As an optional implementation manner, displaying server information on the startup interface of the startup system includes: displaying the target configuration item on the startup interface as the server information, where the target configuration item is included in the system configuration items of the startup system.
[0049] Optionally, in this embodiment, the system configuration items can be but are not limited to various parameters and settings that can be configured in the server startup system. The system configuration items can be but are not limited to determine the behavior, performance characteristics, and information categories to be displayed when the server starts up. These configuration items can cover all aspects from hardware configuration (such as detailed information of CPU (Central Processing Unit), memory, storage, network interface, etc.) to system behavior configuration (such as fault diagnosis mode, priority of display information, etc.).
[0050] Optionally, in this embodiment, the target configuration item may, but is not limited to, be a subset of the system configuration item, and the target configuration item may, but is not limited to, refer to specific configuration information that a user or an operation and maintenance personnel wants to view or pay attention to when the server starts up.
[0051] Optionally, in this embodiment, displaying the target configuration item as server information on the startup interface may, but is not limited to, display the specific configuration information that the user or the operation and maintenance personnel are concerned about on the startup interface, so that the user or the operation and maintenance personnel can obtain this information faster.
[0052] As an optional implementation manner, the target configuration item includes at least one of the following: the first version information, the generation information, the memory information, the second version information, the third version information, the fourth version information, and the address information. The first version information is used to indicate the processor version of the server, the generation information is used to indicate the processor generation of the server, the memory information is used to indicate the memory capacity of the server, the second version information is used to indicate the version number of the startup system, the third version information is used to indicate the version release time of the startup system, the fourth version information is used to indicate the controller version of the server, and the address information is used to indicate the controller address of the server.
[0053] Optionally, in this embodiment, the first version information may, but is not limited to, be used to indicate the processor version of the server, and the first version information may, but is not limited to, include the RC (Reference Code) version, that is, the basic code version number.
[0054] Optionally, in this embodiment, the generation information may, but is not limited to, be used to indicate the processor generation of the server. More specifically, the generation information may, but is not limited to, be used to indicate which generation of processor the central processing unit of the server belongs to of the processor manufacturer.
[0055] Optionally, in this embodiment, the second version information may, but is not limited to, be used to indicate the version number of the startup system. More specifically, the second version information may, but is not limited to, include the version number of the BIOS.
[0056] Optionally, in this embodiment, the third version information may, but is not limited to, be used to indicate the version release time of the startup system, that is, the time point when the startup system of the version indicated by the second version information is officially announced or provided to users for use. More specifically, the third version information may, but is not limited to, include the version time of the BIOS.
[0057] Optionally, in this embodiment, the fourth version information may be used, but is not limited to, to indicate the controller version of the server. Optionally, the controller of the server may be, but is not limited to, a BMC (Baseboard Management Controller). More specifically, the fourth version information may include, but is not limited to, the version number of the BMC.
[0058] Optionally, in this embodiment, the address information may be used, but is not limited to, to indicate the controller address of the server. More specifically, the address information may include, but is not limited to, the IP address (Internet Protocol Address) of the BMC.
[0059] As an optional implementation manner, displaying a target configuration item on the startup interface as server information includes: reading a target identifier configured by the target configuration item from system configuration items; finding a target configuration file corresponding to the target identifier from the identifiers and configuration files with a corresponding relationship; and displaying the file content of the target configuration file on the startup interface as server information.
[0060] Optionally, in this embodiment, the identifier may be, but is not limited to, a unique code or name for distinguishing different configuration files. In the server startup process, the identifier may be the name of the configuration file (such as "basic information", "fault diagnosis") or a numerical value (such as "1", "2") for indexing and selection.
[0061] Optionally, in this embodiment, the target configuration item may be filtered out from the system configuration items by, but is not limited to, selecting an identifier.
[0062] Optionally, in this embodiment, the identifier and the configuration file may be, but are not limited to, in a one-to-one correspondence, and the content to be displayed on the startup interface may be found by, but is not limited to, finding the target configuration file corresponding to the target identifier from the identifiers and configuration files with a corresponding relationship.
[0063] Optionally, in this embodiment, Figure 3 is a schematic diagram of a configuration file according to an embodiment of the present application. As Figure 3As shown, a series of configuration files can be added, but not limited to, in the BIOS (i.e., the startup system), and these configuration files are synchronized to the BMC. These configuration files mainly include different categories of information (i.e., file content). For example, the name of configuration file one is "Basic Information" (i.e., identifier), its option value is "1" (i.e., identifier), and the content to be displayed under this configuration file (i.e., target configuration item) includes: CPU model, CPU basic parameters, memory model (including memory manufacturer and model parameters), memory basic parameters (including capacity information, rate), BIOS, BMC firmware version number, BMC IP information, date and time information, performance and energy consumption scenario mode, hardware anti-counterfeiting information, etc.; the name of configuration file two is "Fault Diagnosis", its option value is "2" (i.e., identifier), and the content to be displayed under this configuration file (i.e., target configuration item) includes: fault diagnosis mode, BIOS, BMC firmware version number, whether there are component faults (CE (Correctable Error), UCE (Uncorrectable Error), or faults such as speed reduction and bandwidth reduction), physical silk screen information corresponding to the faulty component, specific fault description, handling suggestions for this fault, etc.; the name of configuration file three is "Device Asset Information", its option value is "3" (i.e., identifier), and the content to be displayed under this configuration file (i.e., target configuration item) includes: various installed hard disks (HDD (Hard Disk Drive), SSD (Solid State Drive), NVMe (i.e., NVMe SSD (Non-Volatile Memory Express Solid State Drive)), M.2 (an interface standard) and other forms of hard disks), pcie (Peripheral Component Interconnect Express) form external plug-in cards, ocp (Open Compute Project) form cards, names, SN numbers (Serial Number), physical silk screens and other relevant parameters of USB (Universal Serial Bus) devices.
[0064] Optionally, in this embodiment, the file content in each configuration file can be, but not limited to, modified. For example, for the aforementioned configuration file one, the user or operation and maintenance personnel can, but not limited to, delete the "date and time information" from the content to be displayed in configuration file one, and the user or operation and maintenance personnel can also, but not limited to, add the "date and time information" to the content to be displayed in configuration file two.
[0065] Through the above content, the file content of the target configuration file corresponding to the target identifier is displayed as server information on the startup interface. Compared with the solution that can only display fixed server information, the display solution of the present application is more flexible.
[0066] As an alternative implementation, before reading the target identifier configured by the target configuration item from the system configuration item, the selection of the target identifier can be achieved in the following way: display a display configuration tab in the configuration tab of the startup system, where the display configuration tab is used to select the identifier of the configuration file to be displayed during the server startup phase from multiple identifiers; determine the identifier that has triggered the selection operation among the multiple identifiers as the target identifier.
[0067] Optionally, in this embodiment, the configuration tab of the startup system can be displayed on the startup system, but not limited to this.
[0068] Optionally, in this embodiment, multiple identifiers can be displayed on the display configuration tab, and each identifier corresponds to a configuration file. The user can select the identifier of the configuration file to be displayed during the server startup phase from the multiple identifiers through the display configuration tab, but not limited to this.
[0069] Optionally, in this embodiment, triggering the selection operation can refer to, but not limited to, the user or the operation and maintenance personnel performing a selection action on the display configuration tab of the startup system to select a specific configuration file that is desired to be displayed during the server startup phase. The selection operation can be, but not limited to, the user or the operation and maintenance personnel selecting an identifier through an interaction element (such as a mouse, keyboard, or touch screen, etc.) in the display configuration tab interface. This selection action can be a click, touch, selecting with the arrow keys and then pressing Enter, or specifying a configuration file as the target configuration file for display through other means. The identifier selected by the user is the target identifier.
[0070] As an alternative implementation, displaying the display configuration tab in the configuration tab of the startup system includes: displaying the display configuration tab in the configuration tab of the startup system on the controller of the server.
[0071] Optionally, in this embodiment, the configuration tab of the startup system can be displayed on the controller of the server, but not limited to this.
[0072] Optionally, in this embodiment, the controller of the server may, but is not limited to, refer to a dedicated microcontroller responsible for server management, monitoring, and control functions. The controller may, but is not limited to, include a BMC. The BMC is a dedicated controller embedded on the server motherboard for monitoring and managing the server hardware status, including but not limited to temperature, voltage, fan speed, etc., and can remotely control operations such as server power-on / off and reset. Since the startup system only runs during the server startup process and is shut down after the server startup is completed, displaying the display configuration tab in the configuration tab of the startup system on the startup system will result in the selection of the configuration file to be displayed only during the server startup process. However, displaying the display configuration tab in the configuration tab of the startup system on the server controller can provide users with the opportunity to select the configuration file to be displayed throughout the entire server operation process. Users can select the configuration file to be displayed on the server startup interface at any stage of the server operation, and each selection will take effect at the next server startup.
[0073] Optionally, in this embodiment, displaying the display configuration tab in the configuration tab of the startup system on the server controller may, but is not limited to, directly displaying the display configuration tab on the controller's display interface. Users or operation and maintenance personnel may, but are not limited to, directly perform a selection operation on the controller's display interface to determine the target identifier from multiple identifiers. At this time, the selection operation may, but is not limited to, clicking, etc.; or, users or operation and maintenance personnel may also, but are not limited to, determine the target identifier from multiple identifiers through the server's operating system, sending IPMI commands or API (Application Programming Interface) commands to the BMC through the operating system to select the target identifier from multiple identifiers. This operation method may be entering specific IPMI commands in the command-line interface or completing it through the graphical management tool on the operating system.
[0074] Optionally, in this embodiment, each configuration file may, but is not limited to, have various forms of identifiers. These various forms may be numerical forms or text forms. For example, the identifier of a configuration file may be the text "basic information" and the numerical value "1". The numerical-form identifiers and text-form identifiers may, but are not limited to, be directly recognizable on different devices. For example, the controller and the startup system may, but are not limited to, be able to directly recognize numerical-form identifiers, while the operating system of the server may, but are not limited to, be able to directly recognize text-form identifiers. When a user or an operation and maintenance personnel determines a target identifier from multiple identifiers through the operating system of the server, the required text-form target identifier may be selected from multiple text-form identifiers, and the text-form target identifier is sent to the controller through the IPMI command under the operating system. After receiving the text-form target identifier, the controller matches the corresponding numerical-form target identifier for the text-form target identifier from the text-form identifiers and numerical-form identifiers with a corresponding relationship.
[0075] As an optional implementation manner, determining the identifier triggered by a selection operation among multiple identifiers as the target identifier includes: saving the target identifier by the controller to the option information of the startup system on the controller; sending a modification instruction by the controller to the startup system through the transmission channel between the controller and the startup system, where the modification instruction is used to indicate modifying the identifier configured by the target configuration item to the target identifier; and the startup system executing the modification instruction.
[0076] Optionally, in this embodiment, the target identifier selected by the user through the display configuration option tab displayed on the configuration option tab of the startup system of the controller may, but is not limited to, be passed to the startup system by sending a modification instruction. The startup system may, but is not limited to, modify the identifier configured by the target configuration item to the target identifier after receiving the modification instruction.
[0077] Optionally, in this embodiment, Figure 4 is an interaction schematic diagram between a controller and a startup system according to an embodiment of the present application. As Figure 4 shown, a display configuration option tab may, but is not limited to, be added to the BIOS (i.e., the startup system). The display configuration option tab is used to implement the selection of each configuration file. Optionally, a display configuration option tab may also be added to the BMC (i.e., the controller) interface at the same time to support the user in selecting different configuration files. As Figure 4As shown in the figure, the operation and maintenance personnel can either send IPMI commands through the in-band under the OS (Operating System) to the BMC to complete the selection operation of the display configuration file (i.e., the target configuration file), or complete the selection operation of the display configuration file in the BMC interface. At the same time, it supports users or operation and maintenance personnel to query the configuration file through IPMI commands. The IPMI commands used to read or write these configuration files are all OEM (Original Equipment Manufacturer) commands and are provided by the server manufacturer to users or operation and maintenance personnel.
[0078] Optionally, in this embodiment, Figure 5 is the flowchart of a method for selecting a configuration file on the startup interface through a controller according to an embodiment of the present application. Figure 1 . As Figure 5 shown, after the operation and maintenance personnel complete the selection of the display configuration tab (i.e., the "display configuration" selection) in the BMC (i.e., the controller) interface, the BMC will modify the BIOS option information (i.e., the option information for starting the system) saved locally, store the modified BIOS option information in the EEPROM (Electrically Erasable Programmable Read-Only Memory) of the BMC, and the BMC will send the modification of this option information (i.e., the modification of the target identifier) to the BIOS in the format of a json (JavaScript Object Notation) file through the redfish channel. Before this process is completed, the BMC will reject the operations of reading or modifying the target identifier in the option information from the IPMI command. Figure 6 is the flowchart of a method for selecting a configuration file on the startup interface through a controller according to an embodiment of the present application. Figure 2 . As Figure 6As shown, when the operation and maintenance personnel read the value of the display configuration tab (i.e., read the target identifier in the display configuration tab) by sending IPMI commands to the BMC under the OS (i.e., the operating system), the BMC will return the option name according to the currently saved BIOS option information (i.e., the option information for starting the system). For example, if the current value of the display configuration tab is "1" (i.e., in numerical form), the returned content is "Basic Information" (i.e., in text form) or the corresponding English name. When the operation and maintenance personnel set the value of the display configuration tab by sending IPMI commands to the BMC under the OS (i.e., when they want to select the target identifier), the IPMI command under the OS can be set by setting the name corresponding to the option value. For example, if the value of the display configuration tab to be set is "1", the setting content is "Basic Information" or the corresponding English name. After receiving the command, the BMC will modify the locally saved BIOS option information according to the corresponding information of name and value, and send the modified content of the option information to the BIOS in the form of a json file through the redfish channel.
[0079] In the case where the operation and maintenance personnel select the target identifier through the display configuration tab on the system startup display interface, after the operation and maintenance personnel complete the selection of the display configuration tab in the BIOS Setup (configuration) interface, the BIOS will save the corresponding selected value (i.e., the target identifier) in the corresponding Variable. This Variable data is physically stored in the NVRAM (Non-Volatile Random Access Memory) area of the Flash (flash memory) chip that stores the BIOS code. This Variable data will not be lost when the power is off. After the operation and maintenance personnel complete the selection of the display configuration tab in the BIOS Setup interface, an IPMI command will be sent to the BMC to notify the modification of the target identifier. When the server starts up next time, the modified target identifier will take effect. During the startup process, the BIOS will read the value of the Variable corresponding to the display configuration tab in the NVRAM area and display the content under different configuration files according to the value of the Variable. If the Variable is not modified during the next startup, that is, no modification is made from the BIOS Setup interface, but an option modification json file (i.e., a modification instruction) is received from the BMC, the BIOS will parse the json file and display the content under different configuration files according to the target identifier indicated by the json file. At the same time, the BIOS will write the modified value of the tab into the corresponding Variable for storage.
[0080] Optionally, in the embodiments of the present application, in addition to providing a selection of multiple identifiers to implement the selection of the configuration file for the startup interface, it is also possible but not limited to providing a selection of the file content within the configuration file. That is, the file content within each configuration file can be, but is not limited to being, modifiable. The user or the operation and maintenance personnel can, but are not limited to, modify the file content of each configuration file on the startup system, or can, but are not limited to, modify the file content of each configuration file on the controller. The controller will modify the configuration file information that has been saved locally, where the configuration file information is used to record the file content of each configuration file. The controller will send the modification of the configuration file information to the startup system in the form of a file through the communication channel with the startup system.
[0081] Optionally, in this embodiment, in addition to the aforementioned fixed configuration files that can be selected by the user and the configuration files that can be selected and modified by the user, the target configuration file to be displayed during the server startup phase can also be, but is not limited to being, automatically generated and automatically updated according to the operating conditions of the server.
[0082] Optionally, in this embodiment, it is possible but not limited to add an identifier for intelligent display configuration in the display configuration tab. By selecting the identifier for intelligent display configuration, the user can achieve the automatic generation and automatic update of the target configuration file.
[0083] As an optional implementation manner, it is possible but not limited to update the target configuration file automatically in the following way: before searching for the target configuration file corresponding to the target identifier from the identifiers and configuration files with a corresponding relationship, the controller of the server updates the target configuration file according to the fault conditions recorded in the system log of the server during the previous operation of the server, where the target identifier is used to indicate that the startup system starts in the intelligent display configuration mode.
[0084] Optionally, in this embodiment, it is possible but not limited to default set the startup system to start in the intelligent display configuration mode in the server. When the user does not perform a selection operation on any of the identifiers in the display configuration tab, the intelligent display configuration takes effect automatically, and the target configuration file to be displayed during the server startup phase is generated and updated by the controller of the server according to the fault conditions recorded in the system log of the server during the previous operation of the server.
[0085] Optionally, in this embodiment, the user can, but is not limited to, perform a selection operation on the identifier corresponding to the intelligent display configuration in the display configuration tab. The target identifier is used to indicate that the startup system starts in the intelligent display configuration mode. It is possible but not limited to that in the case where the startup system starts in the intelligent display configuration mode, the target configuration file is updated by the controller of the server according to the fault conditions recorded in the system log of the server during the previous operation of the server.
[0086] Optionally, in this embodiment, the system log may but is not limited to also record the situation of fault resolution. When the target identifier is used to indicate that the system starts in the intelligent display configuration mode, the controller of the server updates the target configuration file according to the fault situation and the fault resolution situation recorded in the system log of the server during the previous operation of the server.
[0087] Optionally, in this embodiment, the controller of the server updates the target configuration file according to the fault situation recorded in the system log of the server during the previous operation of the server, which may but is not limited to include: detecting the startup attribute of the server, where the startup attribute is used to indicate the startup times of the server; when it is detected that the startup attribute of the server is used to indicate that the server starts for the first time, updating the file content of the target configuration file to the basic information of the server, where the basic information includes the processor version of the server, the processor generation of the server, the memory capacity of the server, the memory model of the server, the controller firmware version of the server, the firmware version of the startup system of the server, and the network configuration initialization status of the server; when it is detected that the startup attribute of the server is used to indicate that the server is not starting for the first time, the controller updates the target configuration file according to the fault situation recorded in the system log of the server during the previous operation of the server.
[0088] Through the above content, updating the target configuration file according to the fault situation recorded in the system log of the server during the previous operation of the server makes the server information displayed in the startup phase more in line with the running situation of the server, and can better help users understand the running characteristics of the server faster.
[0089] Optionally, in this embodiment, each configuration file may but is not limited to be stored in the startup system, and the intelligent configuration file corresponding to the identifier of the intelligent display configuration may but is not limited to also be stored in the startup system. During the current operation of the server, the historical intelligent configuration file is stored in the startup system. The controller generates an updated intelligent configuration file according to the fault situation recorded in the system log of the server, modifies the historical intelligent configuration file saved locally by the controller to the updated intelligent configuration file, and the controller also sends the updated intelligent configuration file to the startup system through the communication channel with the startup system. After receiving the updated intelligent configuration file, the startup system replaces the historical intelligent configuration file corresponding to the identifier of the intelligent display configuration with the updated intelligent configuration file.
[0090] Optionally, in this embodiment, the controller may, but is not limited to, only update the intelligent configuration file on the local controller. The startup system accesses the local storage space of the controller each time it starts up. After obtaining the updated intelligent configuration file from the local storage space of the controller, the startup system updates the intelligent configuration file corresponding to the identifier of the intelligent display configuration stored in the startup system. Alternatively, the storage address of the intelligent configuration file of the startup system is recorded in the controller. After updating the local intelligent configuration file, the controller writes the updated intelligent configuration file to the storage address of the intelligent configuration file of the startup system.
[0091] As an alternative implementation, updating the target configuration file according to the fault conditions recorded in the system log of the server includes: detecting the log level of the collected system log; adjusting the fault weight of the fault subject corresponding to the system log according to the log level, where the fault weight is used to indicate the degree of the fault of the fault subject; adding the fault information of the target fault subject with a fault weight greater than or equal to the first threshold to the target configuration file, and deleting the fault information of the reference fault subject with a fault weight less than the second threshold from the target configuration file.
[0092] Optionally, in this embodiment, the log level may, but is not limited to, be used to indicate the fault level of the fault object.
[0093] Optionally, in this embodiment, the log level may, but is not limited to, include the information level, the warning level, and the critical level. Among them, the information level may, but is not limited to, be used to indicate that there is no fault in the subject in the server involved in the log, the warning level may, but is not limited to, be used to indicate that there is a risk of fault in the subject in the server involved in the log, and the critical level may, but is not limited to, be used to indicate that there has been a serious fault in the subject in the server involved in the log.
[0094] Optionally, in this embodiment, the fault subject may, but is not limited to, be a hardware device, a software program, or a server structure, etc.
[0095] Optionally, in this embodiment, adjusting the fault weight of the fault subject corresponding to the system log according to the log level may, but is not limited to, include: when it is detected that the log level of the first collected system log is the information level, adjusting the fault weight of the first subject corresponding to the first system log to a first value, where the first value is less than the second threshold; when it is detected that the log level of the second collected system log is the warning level or the critical level, adjusting the fault weight of the fault subject according to the subject type and the log level of the fault subject, where the subject type includes the hardware type and the non-hardware type.
[0096] Optionally, in this embodiment, when the fault weights of all fault subjects corresponding to the system logs in the server are all the first value, the file content of the target configuration file may be updated to the basic information of the server, where the basic information includes the hardware configuration of the server, the controller version of the server, and the network status of the server.
[0097] Optionally, in this embodiment, adjusting the fault weight of a fault subject according to the subject type and log level of the fault subject may include, but is not limited to: when the subject type of the fault subject is a non-hardware type, adjusting the fault weight of the fault subject according to the fault recovery ability of the startup system for the fault subject; when the subject type of the fault subject is a hardware type, detecting the duplicate information of the fault corresponding to the second system log, where the duplicate information is used to indicate whether the fault corresponding to the second system log is a newly occurred fault; when the duplicate information is used to indicate that the fault corresponding to the second system log is a newly occurred fault, adjusting the fault weight of the fault subject corresponding to the second system log according to the log level of the second system log; when the duplicate information is used to indicate that the fault corresponding to the second system log is not a newly occurred fault, not adjusting the fault weight of the fault subject corresponding to the second system log.
[0098] Optionally, in this embodiment, adjusting the fault weight of a fault subject according to the fault recovery ability of the startup system for the fault subject may include, but is not limited to: when the startup system does not have the ability to recover the fault of the fault subject, adjusting the fault weight of the fault subject to a second value, where the second value is greater than or equal to the first threshold; when the startup system has the ability to recover the fault of the fault subject, not adjusting the fault weight of the fault subject.
[0099] Optionally, in this embodiment, when the fault weight is the second value, the reference alarm may be added to the target configuration file.
[0100] Optionally, in this embodiment, adjusting the fault weight of the fault subject corresponding to the second system log according to the log level of the second system log may include, but is not limited to: when the log level of the second system log is the warning level, adjusting the fault weight of the fault subject from the initial fault weight to the sum of the initial fault weight and the weight adjustment increment; when the log level of the second system log is the severe level, adjusting the fault weight of the fault subject to the maximum value of the fault weight, where the maximum value is greater than the first threshold.
[0101] Optionally, in this embodiment, adding the fault information of the target fault entity whose fault weight is greater than or equal to the first threshold to the target configuration file may include, but is not limited to: adding all the fault information of the target fault entity whose fault weight is greater than or equal to the third threshold to the target configuration file, and adding partial fault information of the target fault entity whose fault weight is less than the third threshold and greater than or equal to the first threshold to the target configuration file, where the third threshold is greater than the first threshold.
[0102] Optionally, Figure 7 is a schematic diagram of a fault weight adjustment method according to an embodiment of the present application. As Figure 7 shown, the BMC controls the display content of the startup page during the BIOS startup process in real time according to the log severity level (i.e., the log level). Whenever a log is generated, the BMC will judge the severity level of the current log. If it is only the log content of the "Info" level (i.e., the information level), it means that this is the basic server information record, and the subsequent judgment is skipped. If it is the log content of the "Warning" (i.e., the warning level) or "Critical" (i.e., the severe level), the log content is parsed to analyze whether the log content includes system hardware (Fan (fan), CPU (processor), PSU (power supply), ADDIN CARD (external plug-in card), MEMORY (memory), DISK (hard disk), MAINBOARD (motherboard), PCIe device, BMC, PCH (integrated south bridge), CABLE (cable), GPU (graphics card), etc.), and record the hardware device where the alarm occurs and the fault status corresponding to the hardware device (such as overheating, Error (fault), speed reduction, bandwidth reduction, connection loss, etc.). Duplicate information is not recorded. The "Warning" and "Critical" levels correspond to different weights (i.e., weight adjustment increments). When a "Warning" alarm occurs for a certain hardware device, the weight is incremented by one. When a "Critical" alarm occurs for a certain device, the weight is incremented by three. The weight value caps at three. Duplicate alarms (the same hardware device and the same fault status) do not increase the weight. Different weight values represent different numbers of fault information displays during the BIOS startup process. Zero weight means no display, three weights mean all displays, and one and two weights mean less and more fault information displays respectively. The hardware fault types recorded by the BMC (i.e., the controller) and the weight information corresponding to the hardware (i.e., the fault weight) will be sent to the BIOS via IPMI when a restart is triggered (i.e., when the server starts up next time), and the BIOS receives the information and switches the display of different numbers of fault information.
[0103] For other alarms that do not include hardware devices, such as "chassis cover open, intrusion alarm", "Watchdog timeout alarm", "air inlet overheating", "firmware refresh failure" and other alarm information, the display content is set in advance according to the specific information. For alarms or fault information such as "chassis cover open, intrusion alarm", "air inlet overheating", and "firmware refresh failure" that cannot be processed by the BIOS (that is, the boot system cannot recover from the fault), the fixed alarm content (that is, the reference alarm) is printed and displayed during the boot process. For alarms or fault information such as "Watchdog timeout alarm" that the BIOS may analyze and process, the fault type and corresponding weight value are sent to the BIOS through IPMI when the restart is triggered, and the information is displayed on the BIOS startup interface. It should be noted that the "hardware fault type, corresponding hardware weight information" and "fault type and corresponding weight value" sent through IPMI mentioned above are transmitted and parsed through a pre-set encoding method to avoid a serious increase in boot time due to sending too long a string.
[0104] Optionally, in this embodiment, when the fault is cleared, BMC may have a log of clearing the alarm. Similarly, when a "Warning" alarm is cleared for a certain hardware device, the weight is reduced by one. When a "Critical" alarm is cleared for a certain device, the weight is reduced by three, and the weight value reaches zero. BMC will update the fault and weight information in real time, but will only send the latest information to BIOS through IPMI when a restart is triggered.
[0105] Optionally, in this embodiment, the BIOS may, but is not limited to, perform an early video graphics array function in the PEI phase (initialization phase) before memory initialization during the boot process, so that the server can display output within 10 seconds of pressing the power button. During the subsequent boot process of the BIOS, each key information that needs to be output to the display screen will be judged for the target identifier, and the display content will be output only when the identifier configured by the system configuration item is consistent with the target identifier. The display screen display content may, but is not limited to, include a customer-customized logo or a server manufacturer's logo, shortcut key prompt information (entering the BIOS Setup function shortcut key, boot item selection shortcut key, entering the PXE (Preboot eXecution Environment, pre-boot execution environment) startup environment shortcut key) and progress bar, boot process stage code, etc. These contents are distributed in the surrounding areas, and the large area in the middle is the server key information display area.
[0106] As an alternative implementation, startup progress information is displayed on the startup interface, including: displaying percentage information and stage information on the startup interface, where the startup progress information includes: percentage information and stage information. The percentage information is used to dynamically display the percentage of the progress of the server that has been started in the total startup progress, and the stage information is used to display the current startup stage of the progress that has been started among multiple startup stages of the server.
[0107] Optionally, in this embodiment, the startup progress information displayed on the startup interface may, but is not limited to, include percentage information and stage information. By double-displaying the percentage information and stage information, a clearer progress display can be provided to the user.
[0108] As an alternative implementation, the startup progress information is updated according to the running status of the startup system, including: updating the percentage of the progress that has been started in the total startup progress in the percentage information to match the running progress according to the running progress of the startup code of the startup system; updating the stage information using the stage identifier corresponding to the target startup stage of the running progress among multiple startup stages.
[0109] Optionally, in this embodiment, each startup stage may, but is not limited to, have a corresponding stage identifier, and the user can be prompted of the current startup stage through the display of the stage identifier.
[0110] As an alternative implementation, multiple startup stages include: a security stage, an initialization stage, a driver execution environment stage, and a boot device selection stage. Among them, the stage identifier of the security stage is SEC, the stage identifier of the initialization stage is PEI, the stage identifier of the driver execution environment stage is DXE, and the stage identifier of the boot device selection stage is BDS.
[0111] Optionally, in this embodiment, the stage identifier of the security stage is SEC (Security Phase), and the SEC stage mainly focuses on the initialization of server security, including but not limited to setting up a security environment, verifying the integrity and legality of the startup code, and handling the platform trust chain, etc. This is the first step in the startup process, and its purpose is to ensure that the startup code in subsequent stages has not been tampered with, so as to prevent malware or attackers from obtaining control when the system starts up.
[0112] Optionally, in this embodiment, the phase identifier in the initialization phase is PEI (Pre-EFI Initialization Phase, the initialization phase before starting the EFI (Extensible Firmware Interface)). The PEI phase is responsible for initializing the hardware resources of the server, including but not limited to the CPU, memory, PCIe bus, etc., and providing early video and serial output capabilities. The goal of this phase is to prepare a stable hardware environment for the subsequent DXE phase.
[0113] Optionally, in this embodiment, the phase identifier in the driver execution environment phase is DXE (Driver Execution Environment Phase). The DXE phase mainly loads and executes drivers, which are responsible for managing specific hardware devices and providing advanced services, such as starting disks, network devices, etc. The DXE phase also includes the identification, configuration, and loading of appropriate drivers for hardware devices.
[0114] Optionally, in this embodiment, the phase identifier in the boot device selection phase is BDS (Boot Device Selection Phase). The BDS phase is responsible for determining the boot order and selecting a boot device, such as a hard disk, network, USB device, etc. In the BDS phase, not only will the best boot device be selected according to the boot order set by the user, but also error recovery and redundancy checks for the boot device will be performed.
[0115] Optionally, in this embodiment, the verification information of the boot protection can be displayed on the boot interface, but not limited to this.
[0116] As an optional implementation manner, the verification information can be displayed in the following ways, but not limited to this: after starting the boot system of the server, the verification information of the boot protection is displayed on the boot interface; after the target duration of the phase identifier of the boot device selection phase is displayed in the phase information, the display of the verification information stops.
[0117] Optionally, in this embodiment, the verification information can be used to indicate that the boot protection verification is successful or the boot protection verification fails, but not limited to this.
[0118] Optionally, in this embodiment, the verification information of the boot protection is displayed on the boot interface only when the verification information is used to indicate that the boot protection verification fails, and the verification information of the boot protection is not displayed on the boot interface when the verification information is used to indicate that the boot protection verification is successful.
[0119] As an alternative implementation, server information is displayed on the startup interface of the system, and startup progress information is also displayed on the startup interface, including: displaying server information in the first area of the startup interface; displaying startup progress information in the second area of the startup interface.
[0120] Optionally, in this embodiment, it is possible but not limited to first display server information in the first area of the startup interface and then display startup progress information in the second area of the startup interface; or it is also possible but not limited to display server information in the first area of the startup interface while displaying startup progress information in the second area of the startup interface.
[0121] Optionally, in this embodiment, Figure 8 is a schematic diagram of a startup interface according to an embodiment of the present application Figure 1 . As Figure 8 shown, the startup interface may but is not limited to include a first area and a second area, may but is not limited to display server information in the first area, and may but is not limited to display startup progress information in the second area.
[0122] Optionally, in this embodiment, on the basis of displaying server information and startup progress information on the startup interface, it is possible but not limited to also display shortcut key information on the startup interface.
[0123] As an alternative implementation, it is possible but not limited to display shortcut key information in the following manner: after displaying startup progress information in the second area of the startup interface, display shortcut key information in the third area of the startup interface, where the shortcut key information is used to show the system operations allowed to be triggered during server startup and the shortcut keys for triggering the system operations.
[0124] Optionally, in this embodiment, Figure 9 is a schematic diagram of a startup interface according to an embodiment of the present application Figure 2 . As Figure 9 shown, the startup interface may but is not limited to include a first area, a second area, and a third area, may but is not limited to display server information in the first area, may but is not limited to display startup progress information in the second area, and may but is not limited to display shortcut key information in the third area.
[0125] Optionally, in this embodiment, the shortcut key information may but is not limited to be used to show the system operations allowed to be triggered during server startup and the shortcut keys for triggering the system operations. For example, the shortcut key information may but is not limited to include: pressing the F11 key to enter the setup interface of the startup system, etc.
[0126] Optionally, in this embodiment, Figure 10 is a schematic diagram of a startup interface according to an embodiment of the present application Figure 3 . AsFigure 10 As shown, the startup interface may, but is not limited to, include a first area, a second area, a third area, and a fourth area. Server information may, but is not limited to, be displayed in the first area, startup progress information may, but is not limited to, be displayed in the second area, shortcut key information may, but is not limited to, be displayed in the third area, and the verification information of the aforementioned startup protection may, but is not limited to, be displayed in the fourth area.
[0127] Optionally, in this embodiment, Figure 11 is a schematic diagram of a startup interface according to an embodiment of the present application Figure 4 . As Figure 11 shown, the startup interface may, but is not limited to, include a first area, a second area, a third area, a fourth area, and a fifth area. Server information may, but is not limited to, be displayed in the first area, startup progress information may, but is not limited to, be displayed in the second area, shortcut key information may, but is not limited to, be displayed in the third area, the verification information of the aforementioned startup protection may, but is not limited to, be displayed in the fourth area, and customer customization information may, but is not limited to, be displayed in the fifth area. The customer customization information may, but is not limited to, include a customer-customized logo, a server manufacturer's logo, a customer's business description, or a server manufacturer's business description, etc. When the server is started, server information may, but is not limited to, be first displayed in the first area and customer customization information may, but is not limited to, be displayed in the fifth area, then the verification information of the startup protection may, but is not limited to, be displayed in the fourth area and the startup progress information may, but is not limited to, be displayed in the second area, and then the shortcut key information may, but is not limited to, be displayed in the third area.
[0128] As an optional implementation manner, displaying shortcut key information in the third area of the startup interface includes: displaying shortcut key information in the third area of the startup interface within a target time period, where the target time period is a time interval during which system operations are allowed to be triggered; and stopping displaying the shortcut key information after the target time period.
[0129] Optionally, in this embodiment, system operations may, but are not limited to, not be executable throughout the entire startup process of the server, but may be executable within a target time period during the startup process. By displaying the shortcut key information only within the target time period and stopping displaying it after the target time period, that is, displaying the shortcut key information only during the time period when system operations can be executed and not displaying the shortcut key information during the time period when system operations cannot be executed, the situation where the user presses the shortcut key with reference to the shortcut key information but cannot execute the system operation is avoided, improving the user experience.
[0130] Optionally, in this embodiment, each system operation may or may not be executable within the target time period. Each system operation may or may not have a corresponding executable time interval within the target time period, that is, each system operation may or may not have a corresponding time interval that allows the system operation to be triggered. The system operations allowed to be triggered within each time interval may or may not be displayed within the respective time intervals within the target time period.
[0131] As an alternative implementation, after displaying the shortcut key information in the third area of the startup interface, the shortcut key information may or may not be refreshed to trigger information when it is detected that the target shortcut key is triggered. The trigger information is used to show that the target shortcut key has been triggered and that the server will execute the target system operation corresponding to the target shortcut key. After the trigger information is displayed, the server is set not to respond to the triggering of other shortcut keys.
[0132] Optionally, in this embodiment, Figure 12 is a schematic diagram of a startup interface according to an embodiment of the present application Figure 5 . As Figure 12 shown, the shortcut key information in the third area may or may not be refreshed to trigger information when the target shortcut key is triggered. On the one hand, the trigger information is used to prompt the user that the target shortcut key has been triggered and to prompt the user of the target system operation corresponding to the target shortcut key that the server will execute, improving the user experience. On the other hand, after the trigger information is displayed, the server is set not to respond to the triggering of other shortcut keys, avoiding operation conflicts between multiple system operations and ensuring that the target system operation can be accurately executed.
[0133] As an alternative implementation, server information is displayed in the first area of the startup interface, including: displaying the server information line by line in the first area of the startup interface; when the number of lines of the server information is greater than the number of lines of the first area, displaying the latest content that conforms to the number of lines of the first area in the first area and displaying a first prompt message in the first area, where the first prompt message is used to indicate that the first area allows scrolling up for display.
[0134] Optionally, in this embodiment, the server information may or may not be displayed in the first area in a line-by-line display manner. When the number of lines of the server information is greater than the number of lines of the first area, that is, when there is too much server information to be fully displayed on the display device at the same time, the latest content that conforms to the number of lines of the first area is displayed in the first area, and a first prompt message for indicating that the first area allows scrolling up for display is displayed in the first area.
[0135] Optionally, in this embodiment, the first prompt message may, but is not limited to, be a text description, for example, it may be "Press the U key to turn the page up", and the first prompt message may also, but is not limited to, be an icon. Figure 13 It is a schematic diagram of a startup interface according to an embodiment of the present application Figure 6 . As Figure 13 shown, it is possible, but not limited to, to display the first prompt message in the first area when the number of lines of server information is greater than the number of lines of the first area.
[0136] Optionally, in this embodiment, when the BIOS (i.e., the boot system) outputs display content during the boot process, there are two function commands for printing the display content to the display screen. One is of the general type, and the other is of the custom type. The custom type of printing function command will specify the x and y coordinates and the printed string as function input parameters and perform content output. The general type of printing function will uniformly call a basic printing function, and the general type of printing function only specifies the printed string as the function input parameter. In the basic printing function, appropriate coordinate calculations will be automatically performed based on information such as the current screen resolution and the specified font size. The printing will be carried out in sequence from left to right and from top to bottom. Each time printing will directly display the entire string passed in by the current function call. When a newline character '\n' is encountered in the passed-in parameter string, a newline operation will be automatically performed, and the newline means coordinate switching and continued display of content. At the same time, it should be emphasized that during the boot process, the basic printing function will save the content and coordinate data of each print in a dynamic memory area in the form of a structure. When printing, the appropriate coordinate information required for the current print will be calculated based on the saved data (i.e., the x and y coordinate positions that should be displayed for the current print line will be calculated based on the number of displayed lines and the display screen resolution). Optionally, when the printed information exceeds the maximum range supported by the current screen resolution, a scrolling operation is required. The scrolling operation first needs to clear the existing content on the screen, then subtract one line from all the y coordinates in the data structure of the printed content information (it should be noted that when the y coordinate is less than the y coordinate of the first line at this resolution, this string will not be printed), and then print and display according to the data structure of the printed content information, and finally print the newly added string. It should be noted that when the scrolling operation is executed, a global variable is set from the default 0 to 1, indicating that a scrolling behavior has occurred. When the BIOS outputs display content during the boot process, when a scrolling behavior occurs, a page up shortcut key (i.e., the first prompt message) will be provided in the BDS stage (the late boot stage) of the BIOS boot process. At this stage, the boot process information has basically been output. Since the BIOS is a single-threaded execution code and cannot continuously respond to dynamic key behaviors, after the key information has basically been printed in the late boot stage, if it cannot be fully displayed under the current resolution conditions, that is, a scrolling behavior occurs, a page up shortcut key will be provided. That is, in the late BDS stage, the scrolling behavior global variable is judged. If it is 1, a prompt box will be printed at the right edge of the display screen, and the text prompt "Page Up" (i.e., the first prompt message) will be included in the box. When the keyboard or the remote console presses the PageUp (page up) key, the corresponding shortcut key action will be performed.The shortcut key action is to first clear all the content on the screen, then increase the y - coordinates of all the content information data structures of the printed content by k lines, where k is equal to the number of times the scrolling operation is performed (it should be noted that when the y - coordinate is greater than the y - coordinate of the last line at this resolution, this string is not printed), and then perform printing and display according to the content information data structure of the printed content. At the same time, the content related to the shortcut key that has been cleared is no longer displayed (i.e., the first prompt message). It should be noted that when the startup display strategy of this application is adopted, generally, there will be no content exceeding twice the number of lines that can be displayed by the display resolution. Therefore, the up - page shortcut key also only responds once and will not significantly affect the startup time.
[0137] As an optional implementation manner, after the prompt message is displayed in the first area, it is possible but not limited to, when it is detected that the up - page operation is triggered, obtain the target information that conforms to the trigger information and the number of lines in the first area from the server information according to the trigger information of the up - page operation; display the target information in the first area and display a second prompt message in the first area, where the second prompt message is used to indicate that the first area allows down - page display.
[0138] Optionally, in this embodiment, the second prompt message can be but is not limited to a text description. For example, it can be "Press the D key to page down", and the second prompt message can also be but is not limited to an icon. Figure 14 It is a schematic diagram of a startup interface according to an embodiment of the present application Figure 7 As Figure 14 shown, it is possible but not limited to display the second prompt message in the first area when it is detected that the up - page operation is triggered and the information displayed in the first area changes to the target information that conforms to the trigger information and the number of lines in the first area.
[0139] Through the description of the above - mentioned implementation manners, those skilled in the art can clearly understand that the method according to the above - mentioned embodiments can be implemented by means of software plus a necessary general - purpose hardware platform. Of course, it can also be implemented by hardware, but in many cases, the former is a better implementation manner.
[0140] The embodiment of the present application also provides a startup display device for a server. Figure 15 It is a structural block diagram of a startup display device for a server according to an embodiment of the present application. As Figure 15 shown, the device includes:
[0141] An operation module 1502, configured to run the startup system of the server when the server is started;
[0142] The first display module 1504 is configured to display server information on the startup interface of the startup system and display startup progress information on the startup interface. The server information is used to show the configuration of the server, and the startup progress information is used to show the startup progress of the server.
[0143] The update module 1506 is configured to update the startup progress information according to the running status of the startup system.
[0144] With the above device, when the server is started, the startup system of the server is run. Server information for showing the configuration of the server is displayed on the startup interface of the startup system, and startup progress information for showing the startup progress of the server is displayed on the startup interface. The startup progress information is updated according to the running status of the startup system. During the startup process of the server, the user can also obtain the configuration of the server and the startup progress of the server, improving the transparency of the server startup process. Therefore, the technical problem of poor transparency in the server startup process in the related art can be solved, and the technical effect of improving the transparency of the server startup process and thus enhancing the user experience can be achieved.
[0145] Optionally, the first display module includes: a first display unit configured to display a target configuration item on the startup interface as server information, where the target configuration item is included in the system configuration items of the startup system.
[0146] Optionally, the target configuration item includes at least one of the following: first version information, generation information, memory information, second version information, third version information, fourth version information, address information. The first version information is used to indicate the processor version of the server, the generation information is used to indicate the processor generation of the server, the memory information is used to indicate the memory capacity of the server, the second version information is used to indicate the version number of the startup system, the third version information is used to indicate the version release time of the startup system, the fourth version information is used to indicate the controller version of the server, and the address information is used to indicate the controller address of the server.
[0147] Optionally, the first display unit is further configured to: read the target identifier configured for the target configuration item from the system configuration items; find the target configuration file corresponding to the target identifier from the identifiers and configuration files with a corresponding relationship; display the file content of the target configuration file on the startup interface as server information.
[0148] Optionally, the first display unit is further configured to: before reading the target identifier configured for the target configuration item from the system configuration items, display a display configuration tab in the configuration tab of the startup system, where the display configuration tab is used to select the identifier of the configuration file to be displayed during the server startup phase from multiple identifiers; determine the identifier that has been triggered with a selection operation among the multiple identifiers as the target identifier.
[0149] Optionally, the first display unit is further configured to: display a display configuration tab in a configuration tab of a startup system on a controller of the server;
[0150] Optionally, the first display unit is further configured to: save, by the controller, a target identifier to option information of a startup system on the controller; send, by the controller, a modification instruction to the startup system through a transmission channel between the controller and the startup system, where the modification instruction is used to indicate modifying an identifier configured by a target configuration item to the target identifier; and execute, by the startup system, the modification instruction.
[0151] Optionally, the first display unit is further configured to: before searching for a target configuration file corresponding to a target identifier from an identifier and a configuration file with a corresponding relationship, update, by a controller of the server, the target configuration file according to a failure situation recorded in a system log of the server during a previous operation of the server, where the target identifier is used to indicate that the startup system starts in a smart display configuration manner.
[0152] Optionally, the first display unit is further configured to: detect a log level of a collected system log; adjust a failure weight of a failure subject corresponding to the system log according to the log level, where the failure weight is used to indicate a failure degree of the failure subject; add failure information of a target failure subject with a failure weight greater than or equal to a first threshold to the target configuration file, and delete failure information of a reference failure subject with a failure weight less than a second threshold from the target configuration file.
[0153] Optionally, the first display module further includes: a second display unit configured to display a proportion information and a stage information on a startup interface, where the startup progress information includes: the proportion information and the stage information, the proportion information is used to dynamically display a proportion of a started progress of the server in a total startup progress, and the stage information is used to display a startup stage in which the started progress currently is in multiple startup stages of the server.
[0154] Optionally, the update module includes: a first update unit configured to update a proportion of a started progress in a total startup progress in the proportion information to match a running progress according to a running progress of a startup code of the startup system; and a second update unit configured to update the stage information by using a stage identifier of a target startup stage corresponding to the running progress in multiple startup stages.
[0155] Optionally, the multiple startup stages include: a security stage, an initialization stage, a driver execution environment stage, and a boot device selection stage, where a stage identifier of the security stage is SEC, a stage identifier of the initialization stage is PEI, a stage identifier of the driver execution environment stage is DXE, and a stage identifier of the boot device selection stage is BDS.
[0156] Optionally, the startup display device further includes: a second display module, configured to display verification information for startup protection on the startup interface; a stop module, configured to stop displaying the verification information after the stage information has shown the target duration of the stage identifier of the boot device selection stage.
[0157] Optionally, the first display module further includes: a third display unit, configured to display server information in a first area of the startup interface; a fourth display unit, configured to display startup progress information in a second area of the startup interface.
[0158] Optionally, the first display module further includes: a fifth display unit, configured to display shortcut key information in a third area of the startup interface, where the shortcut key information is used to display system operations allowed to be triggered during server startup and the shortcut keys for triggering the system operations.
[0159] Optionally, the fifth display unit is further configured to: display the shortcut key information in the third area of the startup interface within a target time period, where the target time period is the time interval during which system operations are allowed to be triggered; stop displaying the shortcut key information after the target time period.
[0160] Optionally, the fifth display unit is further configured to: after displaying the shortcut key information in the third area of the startup interface, in the case where a target shortcut key is detected to be triggered, refresh the shortcut key information to trigger information, where the trigger information is used to display that the target shortcut key has been triggered and the server will execute the target system operation corresponding to the target shortcut key, and after the trigger information is displayed, the server is set to not respond to the triggering of other shortcut keys.
[0161] Optionally, the third display unit is further configured to: display the server information line by line in the first area of the startup interface; in the case where the number of lines of the server information is greater than the number of lines of the first area, display the latest content that conforms to the number of lines of the first area in the first area and display a first prompt message in the first area, where the first prompt message is used to indicate that the first area allows upward paging display.
[0162] Optionally, the third display unit is further configured to: after displaying the prompt message in the first area, in the case where an upward paging operation is detected to be triggered, obtain target information that conforms to the trigger information and the number of lines of the first area from the server information according to the trigger information of the upward paging operation; display the target information in the first area and display a second prompt message in the first area, where the second prompt message is used to indicate that the first area allows downward paging display.
[0163] For the description of the features in the corresponding embodiments of the startup display device of the server, reference can be made to the relevant description in the corresponding embodiments of the startup display method of the server, which will not be elaborated here one by one.
[0164] An embodiment of the present application further provides an electronic device, including a memory and a processor. A computer program is stored in the memory, and the processor is configured to run the computer program to execute the steps in any of the above-mentioned embodiments of the server startup display method.
[0165] An embodiment of the present application further provides a computer-readable storage medium, in which a computer program is stored. The computer program is configured to execute the steps in any of the above-mentioned embodiments of the server startup display method when running.
[0166] In an exemplary embodiment, the above-mentioned computer-readable storage medium may include, but is not limited to: USB flash drives, read-only memories (ROMs), random access memories (RAMs), mobile hard disks, magnetic disks, or optical discs, etc., various media that can store computer programs.
[0167] An embodiment of the present application further provides a computer program product. The computer program product includes a computer program, and when the computer program is executed by a processor, it implements the steps in any of the above-mentioned embodiments of the server startup display method.
[0168] An embodiment of the present application further provides another computer program product, including a non-volatile computer-readable storage medium. The non-volatile computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, it implements the steps in any of the above-mentioned embodiments of the server startup display method.
[0169] Those skilled in the art can further realize that the units and algorithm steps of each example described in combination with the embodiments disclosed herein can be implemented by electronic hardware, computer software, or a combination of the two. To clearly illustrate the interchangeability of hardware and software, the composition and steps of each example have been generally described according to functions in the above description. Whether these functions are executed in a hardware or software manner depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered to exceed the scope of the present application.
[0170] The above has introduced in detail a server startup display method and device provided by the present application. Specific examples are used herein to elaborate on the principle and implementation manner of the present application. The description of the above embodiments is only used to help understand the method and its core idea of the present application. It should be noted that for those of ordinary skill in the art in the technical field, without departing from the principle of the present application, several improvements and modifications can be made to the present application, and these improvements and modifications also fall within the protection scope of the claims of the present application.
Claims
1. A method for starting and displaying a server, characterized in that, Including: When the server is started, run the startup system of the server; Display server information on the startup interface of the startup system, and display startup progress information on the startup interface, where the server information is used to show the configuration of the server, and the startup progress information is used to show the startup progress of the server; Update the startup progress information according to the running situation of the startup system.
2. The startup display method of the server according to claim 1, wherein The displaying server information on the startup interface of the startup system includes: Display a target configuration item on the startup interface as the server information, where the target configuration item is included in the system configuration items of the startup system.
3. The startup display method of the server according to claim 2, characterized in that, The target configuration item includes at least one of the following: first version information, generation information, memory information, second version information, third version information, fourth version information, address information. The first version information is used to indicate the processor version of the server, the generation information is used to indicate the processor generation of the server, the memory information is used to indicate the memory capacity of the server, the second version information is used to indicate the version number of the startup system, the third version information is used to indicate the version release time of the startup system, the fourth version information is used to indicate the controller version of the server, and the address information is used to indicate the controller address of the server.
4. The startup display method of the server according to claim 2, wherein The displaying the target configuration item on the startup interface as the server information includes: Read the target identifier configured by the target configuration item from the system configuration items; Find the target configuration file corresponding to the target identifier from the identifier and configuration file with a corresponding relationship; Display the file content of the target configuration file on the startup interface as the server information.
5. The startup display method of the server according to claim 4, characterized in that, Before reading the target identifier configured by the target configuration item from the system configuration items, the method further includes: Display a display configuration tab in the configuration tab of the startup system, where the display configuration tab is used to select the identifier of the configuration file to be displayed in the server startup phase from multiple identifiers; Determine the identifier that has been triggered with a selection operation among the multiple identifiers as the target identifier.
6. The startup display method of the server according to claim 5, characterized in that The displaying the display configuration tab in the configuration tab of the startup system includes: Display the display configuration tab in the configuration tab of the startup system on the controller of the server; The determining the identifier that has been triggered with a selection operation among the multiple identifiers as the target identifier includes: The controller saves the target identifier to the option information of the startup system on the controller; The controller sends a modification instruction to the startup system through a transmission channel between the controller and the startup system, where the modification instruction is used to indicate that the identifier configured by the target configuration item is modified to the target identifier; The startup system executes the modification instruction.
7. The startup display method of the server according to claim 4, characterized in that Before looking up the target configuration file corresponding to the target identifier from the identifiers and configuration files with a corresponding relationship, the method further includes: The controller of the server updates the target configuration file according to the fault conditions recorded in the system log of the server during the last run of the server, where the target identifier is used to indicate that the startup system starts in a smart display configuration mode.
8. The startup display method of the server according to claim 7, wherein The updating the target configuration file according to the fault conditions recorded in the system log of the server includes: Detecting the log level of the collected system log; Adjusting the fault weight of the fault entity corresponding to the system log according to the log level, where the fault weight is used to indicate the degree of the fault of the fault entity; Adding the fault information of the target fault entity whose fault weight is greater than or equal to the first threshold to the target configuration file, and deleting the fault information of the reference fault entity whose fault weight is less than the second threshold from the target configuration file.
9. The startup display method of the server according to claim 1, characterized in that The displaying the startup progress information on the startup interface includes: Displaying the proportion information and the stage information on the startup interface, where the startup progress information includes the proportion information and the stage information, the proportion information is used to dynamically display the proportion of the started progress of the server in the total startup progress, and the stage information is used to display the startup stage where the started progress is currently located among multiple startup stages of the server.
10. The startup display method of the server according to claim 9, characterized in that The updating the startup progress information according to the running conditions of the startup system includes: Updating the proportion of the started progress in the total startup progress in the proportion information to match the running progress according to the running progress of the startup code of the startup system; Updating the stage information with the stage identifier of the target startup stage corresponding to the running progress among the multiple startup stages.
11. The startup display method of the server according to claim 10, wherein The multiple startup stages include: a security stage, an initialization stage, a driver execution environment stage, and a boot device selection stage, where the stage identifier of the security stage is SEC, the stage identifier of the initialization stage is PEI, the stage identifier of the driver execution environment stage is DXE, and the stage identifier of the boot device selection stage is BDS.
12. The startup display method of the server according to claim 11, characterized in that, After running the startup system of the server, the method further includes: Displaying the verification information of startup protection on the startup interface; Stopping displaying the verification information after the stage information shows the target duration of the stage identifier of the boot device selection stage.
13. The server startup display method according to claim 1, characterized in that, The displaying the server information on the startup interface of the startup system and displaying the startup progress information on the startup interface includes: Displaying the server information in the first area of the startup interface; Displaying the startup progress information in the second area of the startup interface.
14. The startup display method of the server according to claim 13, characterized in that, After displaying the startup progress information in the second area of the startup interface, the method further includes: Display shortcut key information in the third area of the startup interface, where the shortcut key information is used to show the system operations allowed to be triggered during the startup of the server and the shortcut keys for triggering the system operations.
15. The startup display method of the server according to claim 14, wherein, The displaying of the shortcut key information in the third area of the startup interface includes: Display the shortcut key information in the third area of the startup interface within a target time period, where the target time period is the time interval during which the system operations are allowed to be triggered; Stop displaying the shortcut key information after the target time period.
16. The startup display method of the server according to claim 15, wherein After the shortcut key information is displayed in the third area of the startup interface, the method further includes: When it is detected that a target shortcut key is triggered, refresh the shortcut key information to trigger information, where the trigger information is used to show that the target shortcut key has been triggered and the server will execute the target system operation corresponding to the target shortcut key, and after the trigger information is displayed, the server is set not to respond to the triggering of other shortcut keys.
17. The startup display method of the server according to claim 13, characterized in that, The displaying of the server information in the first area of the startup interface includes: Display the server information line by line in the first area of the startup interface; When the number of lines of the server information is greater than the number of lines of the first area, display the latest content that conforms to the number of lines of the first area in the first area and display a first prompt message in the first area, where the first prompt message is used to indicate that the first area allows scrolling up for display.
18. The startup display method of the server according to claim 17, characterized in that, After the prompt message is displayed in the first area, the method further includes: When it is detected that an up-scrolling operation is triggered, obtain target information that conforms to the trigger information of the up-scrolling operation and the number of lines of the first area from the server information; Display the target information in the first area and display a second prompt message in the first area, where the second prompt message is used to indicate that the first area allows scrolling down for display.
19. A startup display device for a server, characterized in that, Includes: A running module, used to run the startup system of the server when the server is started; A first display module, used to display server information on the startup interface of the startup system and display startup progress information on the startup interface, where the server information is used to show the configuration of the server, and the startup progress information is used to show the startup progress of the server; An update module, used to update the startup progress information according to the running situation of the startup system.
20. An electronic device, characterized in that, Includes: A memory, used to store computer programs; A processor, used to implement the steps of the server startup display method according to any one of claims 1 to 18 when executing the computer program.
21. A computer-readable storage medium, characterized in that, A computer program is stored in the computer-readable storage medium, where the computer program, when executed by a processor, implements the steps of the server startup display method according to any one of claims 1 to 18.
22. A computer program product comprising a computer program, characterized in that, The computer program, when executed by a processor, implements the steps of the server startup display method according to any one of claims 1 to 18.
Citation Information
Patent Citations
Method and device for improving BOOT compatibility
CN102053842A
Server starting guiding method and device, electronic equipment and storage medium
CN117215659A
Server startup interface display method and device, storage medium and electronic equipment
CN118502860A
Web-based server startup progress display system and method
CN118689746A
Server startup item starting method and device
CN119917180A
Cited By
Server starting method and electronic equipment
CN121209976A