Operating system boot entry management method, and device, medium and computer program product

By dividing the server's boot devices into device groups and setting priorities and the number of boot items, the problem of abnormal boot programs in traditional BIOS mode is solved, improving the ease of use of the server.

WO2026086198A1PCT designated stage Publication Date: 2026-04-30INSPUR SUZHOU INTELLIGENT TECH CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2025/098843
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-10-23
Filing Date
2025-06-03
Publication Date
2026-04-30

AI Technical Summary

Technical Problem

The x86 architecture BIOS has a problem with bootloader anomalies in traditional mode, which prevents the server from starting normally.

Method used

The server's boot devices are divided into multiple device groups and managed according to priority and the number of boot items. Priority and the number of boot items are set through the BIOS settings interface to ensure that the boot program executes normally in traditional mode.

Benefits of technology

This avoids the problem of BIOS boot program malfunctions in traditional mode, improving the ease of use of server products.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2025098843_30042026_PF_FP_ABST
    Figure CN2025098843_30042026_PF_FP_ABST
Patent Text Reader

Abstract

The present application relates to the technical field of computers. Disclosed are an operating system boot entry management method, and a device, a medium and a computer program product. The method comprises: scanning boot devices of a server, and dividing the plurality of boot devices into a plurality of boot device groups; determining priorities of the plurality of boot device groups and the number of bootloader boot entries; and in descending order of the priorities, sequentially creating bootloader boot entries for corresponding boot devices, the number of which is equal to the number of bootloader boot entries, in each boot device group. In the operating system boot entry management method provided in the present application, bootloader boot entries are sequentially created in descending order of priorities for corresponding boot devices, the number of which is equal to the number of bootloader boot entries, in each boot device group, and boot entries of a server are flexibly set on the basis of user requirements, thereby avoiding the problem of bootloader exceptions caused by an excessive number of boot devices in a legacy mode of a BIOS, and improving the usability of server products.
Need to check novelty before this filing date? Find Prior Art

Description

Operating system boot item management methods, devices, media, and computer program products

[0001] Cross-reference to related applications

[0002] This application claims priority to Chinese Patent Application No. 202411481653.6, filed on October 23, 2024, entitled “Method and apparatus, medium and computer program product for managing startup items of operating system”, the entire contents of which are incorporated herein by reference. Technical Field

[0003] This application relates to the field of computer technology, and more specifically, to an operating system boot item management method, device, medium, and computer program product. Background Technology

[0004] The x86 architecture's BIOS (Basic Input Output System) includes Legacy mode and UEFI (Unified Extensible Firmware Interface) mode. Due to the x86 architecture design, in Legacy mode, the system can only allocate 128KB (kilobyte) of address space for the bootloader. This fixed address space limitation is imposed by the x86 architecture, not by the BIOS itself. When server products use Legacy mode, the accompanying devices generate bootloaders. When many such devices are installed on the server, the bootloaders generated by these devices may require more than 128KB of system address space, causing errors in the execution of some device bootloaders and rendering the server unusable.

[0005] Therefore, how to avoid BIOS boot program abnormalities in traditional mode is a technical problem that needs to be solved by those skilled in the art. Summary of the Invention

[0006] The purpose of this application is to provide an operating system boot item management method, apparatus and device, non-volatile readable storage medium and computer program product, which avoids the problem of abnormal boot program in traditional BIOS mode.

[0007] To achieve the above objectives, this application provides an operating system boot item management method, comprising:

[0008] Scan the server's boot devices and divide multiple boot devices into multiple boot device groups;

[0009] Determine the priority and number of boot items for multiple boot device groups;

[0010] Bootloader startup items are created for each boot device in the corresponding bootloader startup item group, in descending order of priority.

[0011] In some embodiments of this application, multiple boot devices are divided into multiple boot device groups, including:

[0012] Multiple startup devices are divided into multiple startup device groups according to their connection method and / or device type.

[0013] In some embodiments of this application, the connection methods include direct connection through interfaces conforming to different protocols and / or connection through different types of memory cards, and the device types include hard drives and / or network cards.

[0014] In some embodiments of this application, after dividing the multiple boot devices into multiple boot device groups, the method further includes:

[0015] The settings interface of the Basic Input / Output System displays priority setting options for multiple boot device groups and bootloader startup item number setting options;

[0016] The system obtains the priority and number of bootloader startup items for multiple boot device groups through the input interface, and stores the priority and number of bootloader startup items for multiple boot device groups.

[0017] In some embodiments of this application, determining the priority of multiple boot device groups and the number of bootloader startup items includes:

[0018] Retrieve the priority and number of boot entries for multiple boot device groups stored in the database.

[0019] In some embodiments of this application, after dividing the multiple boot devices into multiple boot device groups, the method further includes:

[0020] During the startup process of the basic input / output system, determine whether the current startup mode is the unified extensible firmware interface mode;

[0021] If the current boot mode is not the Unified Extensible Firmware Interface mode, then perform the steps to display the priority setting options for multiple boot device groups and the bootloader number setting options in the Basic Input / Output System settings interface.

[0022] In some embodiments of this application, after determining whether the current boot mode is the Unified Extensible Firmware Interface mode, the method further includes:

[0023] If the current boot mode is the Unified Extensible Firmware Interface mode, the priority setting options for multiple boot device groups and the bootloader startup item quantity setting options in the settings interface will be hidden.

[0024] In some embodiments of this application, determining whether the current boot mode is a unified extensible firmware interface mode includes:

[0025] Obtain the current value of the boot mode variable of the basic input / output system, and determine whether the current boot mode is the unified extensible firmware interface mode based on the current value of the boot mode variable.

[0026] In some embodiments of this application, before determining the priority of multiple boot device groups and the number of bootloader startup items, the method further includes:

[0027] Determine if the server is booting up for the first time after refreshing the Basic Input / Output System;

[0028] If this is the first time the server has been powered on after refreshing the Basic Input / Output System, then count the number of boot devices in each of the multiple boot device groups.

[0029] In some embodiments of this application, the number of boot devices included in multiple boot device groups is counted, including:

[0030] In the process of counting the number of network interface card (NIC) devices, the total number of network ports included in the NIC device is taken as the number of NIC devices.

[0031] In some embodiments of this application, determining the priority of multiple boot device groups and the number of bootloader startup items includes:

[0032] If this is the first time the server has been powered on after a refresh of the Basic Input / Output System, then the number of boot entries in the boot device group will be set to the number of boot devices contained in the boot device group.

[0033] In some embodiments of this application, determining the priority of multiple boot device groups and the number of bootloader startup items includes:

[0034] If the server is not booting for the first time after refreshing the Basic Input / Output System, then obtain the priority of the multiple boot device groups stored and the number of bootloader startup items.

[0035] To achieve the above objectives, this application provides an operating system boot item management device, comprising:

[0036] The partitioning module is used to scan the server's boot devices and divide multiple boot devices into multiple boot device groups;

[0037] The determination module is used to determine the priority of multiple boot device groups and the number of boot items for the bootloader;

[0038] The creation module is used to create bootloader startup items for each boot device in each boot device group in descending order of priority.

[0039] To achieve the above objectives, this application provides an electronic device, comprising:

[0040] Memory, used to store computer programs;

[0041] A processor is used to implement the steps of the operating system startup item management method described above when executing computer programs.

[0042] To achieve the above objectives, this application provides a non-volatile storage medium on which a computer program is stored. When the computer program is executed by a processor, it implements the steps of the operating system boot item management method described above.

[0043] To achieve the above objectives, this application provides a computer program product, including a computer program that, when executed by a processor, implements the steps of the operating system startup item management method described above.

[0044] As can be seen from the above scheme, the operating system boot item management method provided in this application includes: scanning the boot devices of the server, dividing multiple boot devices into multiple boot device groups; determining the priority of multiple boot device groups and the number of boot program boot items; and creating boot program boot items for the corresponding number of boot program boot items in each boot device group in descending order of priority.

[0045] The operating system boot item management method provided in this application sets the priority and number of boot program boot items for each boot device group, and creates boot program boot items for each boot device group in descending order of priority. This allows for flexible configuration of server boot items according to user needs, avoiding boot program errors caused by too many boot devices in traditional BIOS mode, and improving the usability of server products. This application also discloses an operating system boot item management device, an electronic device, a non-volatile storage medium, and a computer program product, which can achieve the same technical effects.

[0046] It should be understood that the above general description and the following detailed description are merely exemplary and do not limit this application. Attached Figure Description

[0047] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort. The drawings are used to provide a further understanding of this disclosure and constitute a part of the specification. They are used together with the following detailed description to explain this disclosure, but do not constitute a limitation of this disclosure. In the drawings:

[0048] Figure 1 is a flowchart illustrating an operating system boot item management method according to an exemplary embodiment;

[0049] Figure 2 is a flowchart illustrating another operating system boot item management method according to an exemplary embodiment;

[0050] Figure 3 is a flowchart of an operating system boot item management method in an application embodiment provided in this application;

[0051] Figure 4 is a structural diagram of an operating system boot item management device according to an exemplary embodiment;

[0052] Figure 5 is a structural diagram of an electronic device according to an exemplary embodiment. Detailed Implementation

[0053] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of this application, and not all of them. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application. Furthermore, in the embodiments of this application, "first," "second," etc., are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence.

[0054] This application discloses an operating system boot item management method, which avoids the problem of abnormal boot program in traditional BIOS mode.

[0055] Referring to Figure 1, a flowchart of an operating system boot item management method according to an exemplary embodiment is shown in Figure 1, including:

[0056] S101: Scan the server's boot devices and divide multiple boot devices into multiple boot device groups;

[0057] In practice, the server's boot devices, that is, devices that can generate bootloader startup items, are scanned. Then, multiple boot devices are divided into multiple boot device groups, with the same boot device group containing boot devices of the same type.

[0058] As some feasible implementation methods, multiple boot devices are divided into multiple boot device groups, including: dividing multiple boot devices into multiple boot device groups according to the connection method and / or device type of the multiple boot devices.

[0059] In practical implementation, boot device groups can be divided according to the connection method between the boot device and the server. The connection method can include direct connection through interfaces that conform to different protocols, such as direct connection through SATA (Serial ATA) or NVME (Non-Volatile Memory Express). The connection method can also include connection through different types of storage cards, such as connection through RAID (Redundant Array of Independent Disks) cards or SAS (Serial Attached SCSI) cards.

[0060] Alternatively, boot devices can be grouped according to their device type, which can include hard drives, network cards, etc.

[0061] Of course, boot device groups can also be formed according to the connection method between the boot device and the server and the device type. For example, multiple boot devices can be divided into direct-connect SATA hard drives, direct-connect NVME hard drives, hard drives connected to RAID cards, hard drives connected to SAS cards, network cards, etc.

[0062] S102: Determine the priority of multiple boot device groups and the number of boot entries;

[0063] In practice, the priority and number of boot entries for each pre-configured boot device group are determined. The number of boot entries for a boot device group describes the maximum number of devices that can be used as actual boot devices in that group, and can be set between 0 and the total number of devices in the boot device group. The number of boot entries for a boot device group can include the number of boot entries for directly connected SATA hard drives, directly connected NVMe hard drives, hard drives connected to RAID cards, hard drives connected to SAS cards, and network cards.

[0064] The priority of the boot device group can include the boot priority of directly connected SATA hard drives, the boot priority of directly connected NVMe hard drives, the boot priority of hard drives connected to RAID cards, the boot priority of hard drives connected to SAS cards, and the boot priority of network cards. The priority can be set according to user needs. For example, the priority order can be set from high to low as directly connected SATA hard drives, directly connected NVMe hard drives, hard drives connected to RAID cards, hard drives connected to SAS cards, and network cards.

[0065] Of course, the priority of each startup device group can also be set automatically by the server. The priority order of each startup device group can be based on any one or a combination of startup speed, interface transmission speed, device performance, and compatibility. The faster the startup speed and interface transmission speed, the higher the priority of the startup device group. The better the device performance and the higher the compatibility, the higher the priority of the startup device group.

[0066] As some feasible implementation methods, after dividing multiple boot devices into multiple boot device groups, the method further includes: displaying priority setting options and bootloader startup item number setting options for multiple boot device groups in the settings interface of the basic input / output system; obtaining the priority and bootloader startup item number of multiple boot device groups through the input interface, and storing the priority and bootloader startup item number of multiple boot device groups; correspondingly, determining the priority and bootloader startup item number of multiple boot device groups, including: obtaining the stored priority and bootloader startup item number of multiple boot device groups.

[0067] In practice, users can adjust the priority order of each boot device group and the number of boot entries in each group through the BIOS settings interface. After the user makes these settings via an input interface (such as a keyboard or mouse), this information is saved. When the server starts, the system determines the boot order and the number of boot entries based on these stored priorities and boot entries.

[0068] S103: Create boot program entries for each boot device in the boot device group according to the priority from high to low.

[0069] In practice, each boot device group is processed sequentially from highest to lowest priority according to the priority order defined by the user in the BIOS settings. For each boot device group, the system generates boot entries for the corresponding number of boot devices in that group, based on the number of boot entries set by the user. Thus, when the server starts, it loads and executes the boot programs for each device in this order and according to this number, ensuring that the system can boot as expected by the user.

[0070] The operating system boot item management method provided in this application sets the priority and number of boot program boot items for each boot device group, and creates boot program boot items for each boot device group in descending order of priority. It flexibly sets the server boot items according to user needs, avoids boot program abnormality problems caused by too many boot devices in the traditional BIOS mode, and improves the usability of server products.

[0071] This application discloses an operating system startup item management method. Compared with some of the above embodiments, this embodiment further explains and optimizes the technical solution. Specifically:

[0072] Referring to Figure 2, a flowchart illustrating another operating system boot item management method according to an exemplary embodiment is shown in Figure 2, including:

[0073] S201: Determine if the server is powering on for the first time after refreshing the BIOS; if the server is powering on for the first time after refreshing the BIOS, proceed to S202; if the server is not powering on for the first time after refreshing the BIOS, proceed to S204.

[0074] In this step, check if the server is booting for the first time after its Basic Input / Output System (BIOS) has been updated. If it is the first boot, proceed to S202; otherwise, proceed directly to S204.

[0075] S202: Scan the server's boot devices and divide multiple boot devices into multiple boot device groups;

[0076] S203: Count the number of boot devices in each boot device group, set the number of boot program boot items in the boot device group to the number of boot devices in the boot device group, and proceed to S204.

[0077] In practice, if the server is booting for the first time after a BIOS update, the number of boot devices in each boot device group is counted, and the number of boot entries for each boot device group is set based on this count.

[0078] As one feasible implementation method, when counting the number of network interface card (NIC) devices, the total number of network ports contained in each NIC is used as the total number of NIC devices. In specific implementations, NIC devices are counted according to the number of their network ports; that is, the number of NIC devices is counted as the number of startup devices if each NIC contains a certain number of network ports.

[0079] S204: During the startup process of the basic input / output system, determine whether the current startup mode is the unified extensible firmware interface mode; if the current startup mode is the unified extensible firmware interface mode, proceed to S205; if the current startup mode is not the unified extensible firmware interface mode, proceed to S206.

[0080] In this step, during the BIOS boot process, the current boot mode is determined, including legacy mode and unified extensible firmware interface mode. If the current boot mode is legacy mode, proceed to S206; if the current boot mode is unified extensible firmware interface mode, proceed to S205.

[0081] As some feasible implementation methods, determining whether the current boot mode is the Unified Extensible Firmware Interface (UEMI) mode includes: obtaining the current value of the boot mode variable of the Basic Input / Output System (BIOS), and determining whether the current boot mode is the UEMI mode based on the current value of the boot mode variable. In specific implementations, the current boot mode can be determined based on the value of the BIOS boot mode variable.

[0082] S205: Hides the priority setting options for multiple boot device groups and the bootloader startup item number setting options in the settings interface of the Basic Input / Output System;

[0083] In this step, if the current boot mode is Unified Extensible Firmware Interface mode, the boot device group priority setting option and the boot loader number setting option in the BIOS settings interface are hidden, because UEFI mode may have its own boot management method.

[0084] S206: Display the priority setting options for multiple boot device groups and the bootloader startup item number setting options in the basic input / output system settings interface; obtain the priority of multiple boot device groups and the number of bootloader startup items through the input interface; and store the priority of multiple boot device groups and the number of bootloader startup items.

[0085] In this step, if the current boot mode is traditional mode, the priority setting options for the boot device group and the number of boot items will be displayed in the BIOS setup interface, allowing the user to make settings through the input interface, and then save these settings.

[0086] S207: Obtain the priority and number of bootloader startup items for multiple boot device groups, and create bootloader startup items for each boot device in each boot device group in descending order of priority.

[0087] In this step, the system will create boot entries for the corresponding number of boot devices in each boot device group according to the user-defined priority and the number of boot entries, ensuring that devices are loaded in priority order during startup.

[0088] Therefore, this embodiment flexibly configures the server's boot options according to user needs, avoiding boot program abnormalities caused by too many devices being booted in the traditional BIOS mode, and improving the ease of use of the server product.

[0089] The following describes an application embodiment provided by this application, as shown in Figure 3, including the following steps:

[0090] S2_1: The boot device, which is the device that can generate a boot program, is classified according to the connection method into direct-connect SATA hard drives, direct-connect NVME hard drives, hard drives connected to RAID cards, hard drives connected to SAS cards, and network cards.

[0091] S2_2: In the BIOS setup interface, create boot program boot entry options for each type of boot device, specifically the number of boot entries for direct-connect SATA hard drives, direct-connect NVMe hard drives, RAID cards, SAS cards, and network cards. These options are used to set the maximum number of devices that can be used as boot devices for this type. These options can be set between 0 and the number of devices of this type.

[0092] S2_3: In the BIOS setup interface, create priority setting options for each type of boot device, specifically: direct-connect SATA hard drive boot priority, direct-connect NVMe hard drive boot priority, RAID card boot priority, SAS card boot priority, and network card boot priority. The default values ​​for the priorities can be set according to user needs. In this embodiment, the priority order from high to low is: direct-connect SATA hard drive, direct-connect NVMe hard drive, RAID card, SAS card, and network card.

[0093] S2_4: During the BIOS boot process, determine whether the current boot mode is traditional mode or UEFI mode.

[0094] S2_5: If the boot mode is UEFI mode, hide the boot program number and priority settings for various boot devices in the BIOS interface, and exit the scheme.

[0095] S2_6: If the boot mode is traditional mode, the BIOS interface will display the boot program number and priority settings for various boot devices.

[0096] S2_7: Iterate through all boot devices, group them according to direct-connected SATA hard drives, direct-connected NVME hard drives, hard drives connected to RAID cards, hard drives connected to SAS cards, and network cards, and count the number of devices in each group. In particular, each network card is counted according to the number of network ports.

[0097] S2_8: Determine if this is the first power-on after flashing the BIOS; if it is the first power-on after flashing the BIOS, proceed to S2_9; if it is not the first power-on after flashing the BIOS, proceed to S2_10.

[0098] S2_9: Sets the default number of startup items for each group to the number counted for the corresponding device.

[0099] S2_10: Reads the value of the preset boot device group boot number option in the BIOS.

[0100] S2_11: Reads the priority of each boot device group preset in the BIOS.

[0101] S2_12: Based on priority, create boot program entries for each device in each boot device group according to the number of boot program entries preset in that group.

[0102] The BIOS interface design categorizes boot devices (those capable of generating boot entries) according to their connection method, including but not limited to direct-connected SATA hard drives, direct-connected NVMe hard drives, hard drives connected to RAID cards, hard drives connected to SAS cards, and network cards. The BIOS setup interface creates options for the number of boot entries for each type of boot device, setting the maximum number of devices of that type that can be used as boot devices. These options can be set between 0 and the number of devices of each type; the number of boot entries for each group is set to the number of devices of each type upon the first boot. The BIOS setup interface also creates priority settings for each type of boot device, setting the priority for creating boot entries for that type of device. The default priority value can be set according to user needs. The options for the number of boot entries and priority settings for each type of boot device are only displayed in the traditional BIOS setup interface and are only effective in traditional BIOS mode; they are not effective in UEFI BIOS mode.

[0103] The following describes an operating system startup item management device provided in an embodiment of this application. The operating system startup item management device described below and the operating system startup item management method described above can be referred to each other.

[0104] Referring to Figure 4, a structural diagram of an operating system boot item management device according to an exemplary embodiment is shown in Figure 4, comprising:

[0105] The partitioning module 401 is used to scan the server's boot devices and divide multiple boot devices into multiple boot device groups;

[0106] Module 402 is used to determine the priority of multiple boot device groups and the number of boot items in the bootloader;

[0107] Create module 403 to create bootloader boot entries for each boot device in each boot device group in descending order of priority.

[0108] The operating system boot item management device provided in this application sets the priority and number of boot program boot items for each boot device group. Boot program boot items are created for each boot device group in descending order of priority. The boot items of the server can be flexibly set according to user needs, avoiding boot program abnormality caused by too many boot devices in the traditional BIOS mode, and improving the usability of server products.

[0109] Based on the above embodiments, in some embodiments of this application, the division module 401 is specifically used to: divide multiple startup devices into multiple startup device groups according to the connection method and / or device type of multiple startup devices.

[0110] Based on the above embodiments, in some embodiments of this application, the connection methods include direct connection through interfaces conforming to different protocols and / or connection through different types of memory cards, and the device types include hard drives and / or network cards.

[0111] Based on the above embodiments, some embodiments of this application further include:

[0112] The display module is used to display priority setting options for multiple boot device groups and bootloader startup item number setting options in the settings interface of the basic input / output system;

[0113] The storage module is used to obtain the priority and number of bootloader startup items of multiple boot device groups through the input interface, and to store the priority and number of bootloader startup items of multiple boot device groups.

[0114] Based on the above embodiments, in some embodiments of this application, the determining module 402 is specifically used to: obtain the priority of multiple boot device groups and the number of boot program startup items stored.

[0115] Based on the above embodiments, some embodiments of this application further include:

[0116] The first judgment module is used to determine whether the current startup mode is the Unified Extensible Firmware Interface mode during the startup process of the Basic Input / Output System. If the current startup mode is the Unified Extensible Firmware Interface mode, the workflow of the hidden module is started; if the current startup mode is not the Unified Extensible Firmware Interface mode, the workflow of the display module is started.

[0117] The hidden module is used to hide the priority setting options for multiple boot device groups and the bootloader startup item quantity setting options in the settings interface.

[0118] Based on the above embodiments, in some embodiments of this application, the first judgment module is specifically used to: obtain the current value of the startup mode variable of the basic input / output system, and determine whether the current startup mode is the unified extensible firmware interface mode by using the current value of the startup mode variable.

[0119] Based on the above embodiments, some embodiments of this application further include:

[0120] The second judgment module is used to determine whether the server is being powered on for the first time after refreshing the basic input / output system; if the server is being powered on for the first time after refreshing the basic input / output system, the workflow of the statistics module is started.

[0121] The statistics module is used to count the number of boot devices contained in multiple boot device groups.

[0122] Based on the above embodiments, in some embodiments of this application, the statistics module is specifically used to: in the process of counting the number of network interface card (NIC) devices, take the number of all network ports included in the NIC device as the number of NIC devices.

[0123] Based on the above embodiments, in some embodiments of this application, the determining module 402 is specifically used to: if the server is booting up for the first time after refreshing the basic input / output system, set the number of boot program startup items in the startup device group to the number of startup devices included in the startup device group.

[0124] Based on the above embodiments, in some embodiments of this application, the determining module 402 is specifically used to: if the server is not booting up for the first time after refreshing the basic input / output system, obtain the priority of the multiple boot device groups and the number of boot program startup items stored.

[0125] Regarding the apparatus in the above embodiments, the specific manner in which each module performs its operation has been described in detail in the embodiments related to the method, and will not be elaborated upon here.

[0126] Based on the hardware implementation of the above program modules, and in order to implement the method of the embodiments of this application, the embodiments of this application also provide an electronic device. FIG5 is a structural diagram of an electronic device according to an exemplary embodiment. As shown in FIG5, the electronic device includes:

[0127] Communication interface 1 enables information exchange with other devices, such as network devices;

[0128] Processor 2 is connected to communication interface 1 to enable information exchange with other devices. When running computer programs, it executes the operating system boot management method provided by one or more of the above-mentioned technical solutions. The computer program is stored on memory 3.

[0129] Of course, in practical applications, the various components in the electronic device are coupled together through bus system 4. It can be understood that bus system 4 is used to achieve communication between these components. In addition to the data bus, bus system 4 also includes a power bus, a control bus, and a status signal bus. However, for clarity, all buses are labeled as bus system 4 in Figure 5.

[0130] The memory 3 in this embodiment is used to store various types of data to support the operation of the electronic device. Examples of such data include any computer program used to operate on the electronic device.

[0131] It is understood that memory 3 can be volatile memory or non-volatile memory, or both. Non-volatile memory can be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), ferromagnetic random access memory (FRAM), flash memory, magnetic surface memory, optical disc, or compact disc read-only memory (CD-ROM); magnetic surface memory can be disk storage or magnetic tape storage. Volatile memory can be random access memory (RAM), which is used as an external cache. By way of example, but not limitation, many forms of RAM are available, such as Static Random Access Memory (SRAM), Synchronous Static Random Access Memory (SSRAM), Dynamic Random Access Memory (DRAM), Synchronous Dynamic Random Access Memory (SDRAM), Double Data Rate Synchronous Dynamic Random Access Memory (DDRSDRAM), Enhanced Synchronous Dynamic Random Access Memory (ESDRAM), SyncLink Dynamic Random Access Memory (SLDRAM), and Direct Rambus Random Access Memory (DRRAM).The memory 3 described in the embodiments of this application is intended to include, but is not limited to, these and any other suitable types of memory.

[0132] The methods disclosed in the embodiments of this application can be applied to processor 2, or implemented by processor 2. Processor 2 may be an integrated circuit processor with signal processing capabilities. In the implementation process, each step of the above method can be completed by the integrated logic circuit of the hardware in processor 2 or by instructions in the form of software. The processor 2 may be a general-purpose processor, a DSP (Digital Signal Processing), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. Processor 2 can implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of this application. A general-purpose processor may be a microprocessor or any conventional processor, etc. The steps of the methods disclosed in the embodiments of this application can be directly manifested as being executed by a hardware decoding processor, or being executed by a combination of hardware and software modules in the decoding processor. The software modules may be located in a storage medium, which is located in memory 3. Processor 2 reads the program in memory 3 and completes the steps of the aforementioned method in conjunction with its hardware.

[0133] When processor 2 executes the program, it implements the corresponding processes in the various methods of the embodiments of this application. For the sake of brevity, these will not be described in detail here.

[0134] In an exemplary embodiment, this application also provides a non-volatile storage medium storing a computer program that can be executed by a processor 2 to complete the aforementioned method steps.

[0135] In an exemplary embodiment, this application also provides a computer program product, including a computer program that is executed by a processor 2 to perform the aforementioned method steps.

[0136] Those skilled in the art will understand that all or part of the steps of the above method embodiments can be implemented by hardware related to computer program instructions. The aforementioned computer program can be stored in a non-volatile storage medium, and when executed, it performs the steps of the above method embodiments. Alternatively, if the integrated units of this application are implemented as software functional modules and sold or used as independent products, they can also be stored in a non-volatile storage medium. Based on this understanding, the technical solutions of the embodiments of this application, in essence or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product is stored in a non-volatile storage medium and includes several instructions to cause an electronic device (which may be a personal computer, server, network device, etc.) to execute all or part of the methods of the various embodiments of this application.

[0137] The above are merely specific embodiments of this application, but the scope of protection of this application is not limited thereto. Any changes or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application.

Claims

1. A method for managing operating system startup items, characterized in that, include: Scan the server's boot devices and divide the multiple boot devices into multiple boot device groups; Determine the priority and number of bootloader startup items for the multiple boot device groups; In descending order of priority, bootloader startup items are created for each boot device in each boot device group according to the number of bootloader startup items corresponding to that bootloader startup item.

2. The operating system boot item management method according to claim 1, characterized in that, The same group of startup devices contains startup devices of the same type.

3. The operating system boot item management method according to claim 1, characterized in that, The plurality of boot devices are divided into a plurality of boot device groups, including: The multiple startup devices are divided into multiple startup device groups according to their connection method and / or device type.

4. The operating system boot item management method according to claim 3, characterized in that, The connection methods include direct connection via interfaces conforming to different protocols and / or connection via different types of memory cards, and the device types include hard drives and / or network cards.

5. The operating system boot item management method according to claim 4, characterized in that, The direct connection via interfaces conforming to different protocols includes direct connection via SATA and direct connection via NVME.

6. The operating system boot item management method according to claim 4, characterized in that, The connection is made via different types of memory cards, including RAID cards and SAS cards.

7. The operating system boot item management method according to claim 1, characterized in that, After dividing the multiple boot devices into multiple boot device groups, the method further includes: The settings interface of the basic input / output system displays priority setting options for multiple boot device groups and bootloader startup item number setting options; The priority and number of bootloader startup items of multiple boot device groups are obtained through the input interface, and the priority and number of bootloader startup items of multiple boot device groups are stored.

8. The operating system boot item management method according to claim 7, characterized in that, The number of bootloader startup items in the startup device group is set between 0 and the number of devices included in the startup device group.

9. The operating system boot item management method according to claim 7, characterized in that, The priority order of each of the aforementioned startup device groups is determined based on one or a combination of any one of the following: startup speed, interface transmission speed, device performance, and compatibility.

10. The operating system boot item management method according to claim 7, characterized in that, Determining the priority and number of bootloader startup items for the multiple boot device groups includes: Obtain the priority and number of bootloader startup items for the stored multiple boot device groups.

11. The operating system boot item management method according to claim 7, characterized in that, After dividing the multiple boot devices into multiple boot device groups, the method further includes: During the startup process of the basic input / output system, it is determined whether the current startup mode is the unified extensible firmware interface mode; If the current boot mode is not the Unified Extensible Firmware Interface mode, then the step of displaying priority setting options for multiple boot device groups and bootloader startup item number setting options in the basic input / output system settings interface is performed.

12. The operating system boot item management method according to claim 11, characterized in that, After determining whether the current boot mode is the Unified Extensible Firmware Interface mode, the following steps are also included: If the current boot mode is the unified extensible firmware interface mode, then the priority setting options for multiple boot device groups and the bootloader startup item quantity setting options in the settings interface are hidden.

13. The operating system boot item management method according to claim 11, characterized in that, Determine whether the current boot mode is the Unified Extensible Firmware Interface mode, including: Obtain the current value of the startup mode variable of the basic input / output system, and determine whether the current startup mode is the unified extensible firmware interface mode based on the current value of the startup mode variable.

14. The operating system boot item management method according to claim 7, characterized in that, Before determining the priority of the multiple boot device groups and the number of boot entries, the method further includes: Determine whether the server is booting up for the first time after the basic input / output system has been refreshed; If the server is being powered on for the first time after refreshing the basic input / output system, then the number of startup devices contained in each of the multiple startup device groups will be counted.

15. The operating system boot item management method according to claim 14, characterized in that, The number of boot devices contained in each of the multiple boot device groups is counted, including: In the process of counting the number of network interface card (NIC) devices, the total number of all network ports contained in the NIC device is taken as the number of NIC devices.

16. The operating system boot item management method according to claim 14, characterized in that, Determining the priority and number of bootloader startup items for the multiple boot device groups includes: If this is the first time the server has been powered on after the basic input / output system has been refreshed, then the number of boot entries in the boot device group is set to the number of boot devices included in the boot device group.

17. The operating system boot item management method according to claim 14, characterized in that, Determining the priority and number of bootloader startup items for the multiple boot device groups includes: If the server is not booting for the first time after refreshing the basic input / output system, then obtain the priority and number of bootloader startup items of the multiple stored boot device groups.

18. An electronic device, characterized in that, include: Memory, configured to store computer programs; The processor, when configured to execute the computer program, implements the steps of the operating system boot item management method as described in any one of claims 1 to 17.

19. A non-volatile storage medium, characterized in that, The non-volatile storage medium stores a computer program, which, when executed, implements the steps of the operating system boot item management method as described in any one of claims 1 to 17.

20. A computer program product, characterized in that, It includes a computer program that, when executed, implements the steps of the operating system startup item management method as described in any one of claims 1 to 17.

Citation Information

Patent Citations

  • Method for modifying sequence of boot options of basic input / output system (BIOS)

    CN102999362A

  • Computer starting sequence adjusting method and device

    CN110888677A

  • Hard disk starting sequence management method, system and device and storage medium

    CN115080128A

  • Operating system startup item management method and device, medium and computer program product

    CN119003015A

  • Dynamic, automated monitoring and controlling of boot operations in computers

    US20160210161A1