CN113626822B - UEFI firmware starting method and device integrating LinuxBoot - Google Patents

UEFI firmware starting method and device integrating LinuxBoot Download PDF

Info

Publication number
CN113626822B
CN113626822B CN202110722993.3A CN202110722993A CN113626822B CN 113626822 B CN113626822 B CN 113626822B CN 202110722993 A CN202110722993 A CN 202110722993A CN 113626822 B CN113626822 B CN 113626822B
Authority
CN
China
Prior art keywords
file
linuxboot
starting
uefi
firmware
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110722993.3A
Other languages
Chinese (zh)
Other versions
CN113626822A (en
Inventor
吴海波
李金锋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN202110722993.3A priority Critical patent/CN113626822B/en
Publication of CN113626822A publication Critical patent/CN113626822A/en
Application granted granted Critical
Publication of CN113626822B publication Critical patent/CN113626822B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/575Secure boot
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/572Secure firmware programming, e.g. of basic input output system [BIOS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/654Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Stored Programmes (AREA)

Abstract

The invention provides a method and a device for starting UEFI firmware of an integrated LinuxBoot, wherein the method comprises the following steps: the server manufacturer receives a LinuxBoot file, a public key and a starting mark which are sent by a user, and encapsulates the LinuxBoot file, the public key and the starting mark into UEFI BIOS firmware; in the UEFI BIOS starting process, selecting whether to load the starting of the LinuxBoot file or the starting of the original UEFI BIOS logic according to the starting mark value and whether the LinuxBoot file exists or not; when the LinuxBoot file is required to be upgraded, the upgrade tool performs signature verification on the LinuxBoot upgrade file through the public key, and performs LinuxBoot file upgrade when the signature verification passes. The invention realizes the integrated application of the UEFI BIOS firmware of the server manufacturer and the LinuxBoot function of the user.

Description

UEFI firmware starting method and device integrating LinuxBoot
Technical Field
The invention belongs to the technical field of firmware starting, and particularly relates to a method and a device for starting Unified Extensible Firmware Interface (UEFI) firmware integrating a LinuxBoot.
Background
The UEFI and Unified Extensible Firmware Interface are short for unified extensible firmware interface specification, are connected with an operating system and platform firmware, and provide a standard environment for the running state of the operating system before starting. The boot flow of the UEFI is SEC, PEI, DXE, BDS, TLS and RT sequentially, wherein the SEC, PEI and DXE phases complete the initialization of the basic hardware and the loading operation of the driver of the system, the main function of the BDS phase is to initialize the peripheral, load the UEFI driver of the peripheral and find the bootable boot items from all the bootable media, and TLS loads the operating system boot program from the selected boot items and gives the control right of the system to the operating system.
In the UEFI BIOS startup procedure, after the UEFI BIOS firmware loads an operating system startup boot program from a startup medium and gives control rights to the Linux operating system, the operating system may rescan the system peripherals and sequentially load device drivers under the operating system. The external scan and initialization operations are performed at least twice through different types of code (UEFI and Linux) from UEFI BIOS start-up to operating system load completion.
The LinuxBoot is one of important development directions of next-generation system firmware, and is that a Linux kernel is used for initializing a peripheral device, finding a bootable boot item from a bootable medium and then starting an operating system from the selected bootable item. The UEFI is combined with the LinuxBoot technology, the UEFI code mainly completes the initialization of basic hardware including a CPU, a memory and a chipset, uses the LinuxBoot to replace the initialization peripheral equipment of the BDS stage and the TSL stage of the UEFI BIOS and load the operating system function, adopts the device driver under the Linux kernel to replace the device driver and the protocol driver of the UEFI, reduces the code quantity of the UEFI BIOS firmware, and reduces the safety risk of the system firmware. Such a LinuxBoot integrated UEFI firmware will be an important development direction for next generation system firmware.
In general, the Linux boot is realized by adding a self-defined function on the basis of an open source Linux kernel by a user, and codes and functions of the Linux boot part of the user are not disclosed. The UEFI BIOS firmware of a server is typically closed source code developed by the server vendor and distributed to users in an unalterable binary package image. At present, the LinuxBoot function of a user and the UEFI BIOS firmware of a server manufacturer cannot be combined to form the UEFI BIOS firmware of the integrated LinuxBoot, that is, no application scheme capable of freely updating the LinuxBoot by the user exists at present.
This is a deficiency of the prior art, and therefore, it is necessary to provide a method and apparatus for starting UEFI firmware integrated with LinuxBoot, aiming at the above-mentioned deficiency in the prior art.
Disclosure of Invention
Aiming at the defect that the prior art lacks an application scheme for combining a user's Linux boot function and a server manufacturer's UEFI BIOS firmware to form an integrated Linux boot UEFI BIOS firmware, the invention provides a method and a device for starting the integrated Linux boot UEFI firmware, so as to solve the technical problems.
In a first aspect, the present invention provides a UEFI firmware start-up method for integrating a LinuxBoot, including the steps of:
s1, a server manufacturer receives a LinuxBoot file, a public key and a starting mark which are sent by a user, and encapsulates the LinuxBoot file, the public key and the starting mark into UEFI BIOS firmware;
s2, selecting whether to load the starting of the LinuxBoot file or the original UEFI BIOS logic starting according to the starting mark value and whether the LinuxBoot file exists in the starting process of the UEFI BIOS;
s3, when the LinuxBoot file is required to be upgraded, the upgrading tool acquires the LinuxBoot upgrading file, the LinuxBoot upgrading file is checked through a public key in UEFI BIOS firmware, and when the check passes, the LinuxBoot upgrading file is used for updating the LinuxBoot file.
Further, the specific steps of step S1 are as follows:
s11, setting a starting file storage area and a password storage area in UEFI BIOS firmware Flash by a server manufacturer;
s12, a server manufacturer receives a LinuxBoot file, a public key and a starting mark which are sent by a user;
s13, the server manufacturer stores the LinuxBoot file in a starting file storage area and stores the public key in a password storage area in the UEFI BIOS firmware compiling process;
s14, the server manufacturer stores the starting mark in an NVRAM area of the UEFI BIOS firmware Flash. NVRAM, short for Non-Volatile Random Access Memory, is a Non-volatile random access memory, which refers to a RAM that retains data after power is turned off.
Further, the specific steps of step S2 are as follows:
s21, UEFI BIOS firmware is started;
s22, finishing initialization of SEC phase and PEI phase of UEFI;
s23, entering a DXE initialization stage of UEFI, and judging whether a start flag value indicates the start of a LinuxBoot file;
if yes, go to step S24;
if not, go to step S27;
s24, judging whether a LinuxBoot file exists in a boot file storage area of the UEFI BIOS firmware;
if yes, go to step S25;
if not, go to step S27;
s25, skipping a DXE peripheral driver loading stage and entering a BDS stage;
s26, loading and executing a LinuxBoot file, initializing a peripheral by a Linux kernel, acquiring a starting item, and entering step S29;
s27, loading all DXE peripheral drivers and entering a BDS stage;
s28, initializing the peripheral equipment by using UEFI to acquire a starting item;
s29, loading a starting item by the operating system, and entering step S3. When the UEFI BIOS starts, determining whether to use the LinuxBoot to initialize the peripheral equipment and the starting system according to the value stored in the BIOS NVRAM and whether the LinuxBoot file exists in Flash; in addition, the public key file of the client is stored in the BIOSFsh, and when the client needs to update the LinuxBoot file, the secure updating of the LinuxBoot file is ensured by checking the signature of the LinuxBoot file to be updated through the public key.
Further, the specific steps of step S3 are as follows:
s31, when the LinuxBoot file is required to be upgraded, a user generates a LinuxBoot upgrade file according to an upgrade package file format, and copies the LinuxBoot upgrade file to an operating system;
s32, the upgrade tool obtains a LinuxBoot upgrade file, and reads a public key in UEFI BIOS firmware Flash through a runtime upgrade service of the BIOS;
s33, checking the label of the LinuxBoot upgrading file by the running upgrading service of the BIOS through the public key, and judging whether the checking label passes or not;
if yes, go to step S34;
if not, judging that the updating of the LinuxBoot file fails, and ending;
s34, the in-band use of the LinuxBoot upgrading file by the BIOS runtime upgrading service to update the LinuxBoot file in the UEFI BIOS firmware Flash. Under a server operating system, a user upgrades a LinuxBoot file in an in-band mode, reads the LinuxBoot upgrade file through an upgrade tool, calls a runtime upgrade service provided by a UEFI BIOS, uses a public key of the user stored in the UEFI BIOS Flash to test a signature of the LinuxBoot upgrade file, and writes the LinuxBoot file to be updated into the LinuxBoot file in the UEFI BIOS Flash if the signature is tested to pass. If the signature verification fails, the upgrade fails and the upgrade is abandoned.
Further, step S11, the server manufacturer defines a LinuxBoot upgrading binary image package structure in UEFI BIOS firmware; the LinuxBoot upgrading binary image package structure comprises a file header and a Linux upgrading file; the file header comprises a Linux file version number, a Linux file size and abstract information in front of a client private key for a Linux upgrade file;
the specific steps of step S31 are as follows:
s311, when the LinuxBoot file is required to be upgraded, preparing files according to the version number and the size of the Linux file in the LinuxBoot upgrading binary image packet structure by a user, and compiling to generate the Linux upgrading file;
s312, signing the Linux upgrade file by using a private key provided by a user in an asymmetric encryption mode to obtain abstract information; the private key corresponds to the public key and forms an asymmetrically encrypted key pair together;
s313, copying the Linux upgrade file and abstract information thereof to an operating system. The UEFI BIOS needs to define a LinuxBoot upgrading binary image package structure for a client upgrading a LinuxBoot file using a LinuxBoot function. The LinuxBoot upgrade image package structure comprises a file header and a LinuxBoot file. The file header comprises a version number, a size, abstract information and the like of a LinuxBoot file, wherein the abstract information is used for carrying out client private key signature on the LinuxBoot file; and the client compiles and generates a LinuxBoot file, then signs the LinuxBoot file by using a private key of an asymmetric encryption key pair of the client to obtain abstract information, and finally generates a LinuxBoot upgrading image file which can be upgraded according to the format requirement of a LinuxBoot upgrading image package provided by a server manufacturer.
Further, in step S33, the runtime upgrade service of the BIOS performs signature verification on the summary information of the linux boot upgrade file through the public key, and determines whether the signature verification passes. Because the public key and the private key of the client are in one-to-one correspondence, only the user can safely refresh the LinuxBoot file in the mode, the whole BIOS file is not updated by depending on a server manufacturer, and the privacy of the LinuxBoot function of the user is ensured.
In a second aspect, the present invention provides a UEFI firmware boot device integrated with a LinuxBoot, including:
the LinuxBoot file firmware encapsulation module is used for receiving a LinuxBoot file, a public key and a starting mark which are sent by a user by a server manufacturer, and encapsulating the LinuxBoot file, the public key and the starting mark into the UEFI BIOS firmware;
the starting judging module is used for selecting whether to load the starting of the LinuxBoot file or the original UEFI BIOS logic starting according to the starting mark value and whether the LinuxBoot file exists or not in the starting process of the UEFI BIOS;
the LinuxBoot file upgrading module is used for obtaining a LinuxBoot upgrading file by an upgrading tool when the LinuxBoot file is required to be upgraded, checking a signature of the LinuxBoot upgrading file through a public key in the UEFI BIOS firmware, and updating the LinuxBoot file by using the LinuxBoot upgrading file when the signature passes.
Further, the LinuxBoot file firmware package module includes:
the storage area setting unit is used for setting a starting file storage area and a password storage area in the UEFI BIOS firmware Flash by a server manufacturer;
the starting file receiving unit is used for receiving the LinuxBoot file, the public key and the starting mark which are sent by the user by the server manufacturer;
the starting file presetting unit is used for storing the LinuxBoot file in a starting file storage area and storing the public key in a password storage area in the compiling process of the UEFI BIOS firmware by a server manufacturer;
the starting mark presetting unit is used for storing the starting mark in an NVRAM area of the UEFI BIOS firmware Flash by a server manufacturer.
Further, the start judging module includes:
the starting unit is used for starting the UEFI BIOS firmware;
the basic hardware initialization unit is used for finishing the SEC phase and PEI phase initialization of the UEFI;
the starting mark judging unit is used for entering a DXE initialization stage of the UEFI and judging whether the starting mark value indicates the starting of the LinuxBoot file;
the starting file judging unit is used for judging whether the starting file storage area of the UEFI BIOS firmware has the Linux boot file or not when the starting mark indicates the start of the Linux boot file;
the DXE peripheral driver skipping unit is used for skipping the DXE peripheral driver loading stage and entering the BDS stage when the LinuxBoot file exists;
the first starting item acquisition unit is used for loading and executing a Linux boot file, initializing a peripheral by a Linux kernel and acquiring a starting item;
the DXE peripheral driver loading unit is used for loading all DXE peripheral drivers when the start mark indicates that the non-LinuxBoot file is started or the LinuxBoot file does not exist, and entering a BDS stage;
the second startup item acquisition unit is used for initializing the peripheral equipment by the UEFI and acquiring startup items;
and the starting item loading unit is used for loading the starting item by the operating system.
Further, the LinuxBoot file upgrading module includes:
the upgrade file generation unit is used for generating a LinuxBoot upgrade file according to an upgrade package file format by a user when the LinuxBoot file is required to be upgraded, and copying the LinuxBoot upgrade file to an operating system;
the public key obtaining unit is used for obtaining a LinuxBoot upgrading file by the upgrading tool and reading a public key in the UEFI BIOS firmware Flash through the runtime upgrading service of the BIOS;
the upgrade signature verification judging unit is used for verifying the LinuxBoot upgrade file through the public key by the running upgrade service of the BIOS and judging whether the verification signature passes or not;
the upgrade failure judging unit is used for judging that the upgrade of the LinuxBoot file fails when the verification sign fails;
the updating unit of the upgrade file is used for the running upgrade service of the BIOS to use the LinuxBoot upgrade file to update the LinuxBoot file in the UEFI BIOS firmware Flash in the band when the verification passes.
Further, the storage area setting unit is used for defining a LinuxBoot upgrading binary image package structure in the UEFI BIOS firmware by a server manufacturer; the LinuxBoot upgrading binary image package structure comprises a file header and a Linux upgrading file; the file header comprises a Linux file version number, a Linux file size and abstract information in front of a client private key for a Linux upgrade file;
an upgrade file generation unit including:
the upgrade file generation subunit is used for preparing files according to the version numbers and the sizes of the Linux files in the Linux file version binary image package structure when the Linux boot file is required to be upgraded, and compiling the files to generate the Linux upgrade file;
the upgrade file signing subunit is used for signing the Linux upgrade file by using a private key provided by a user in an asymmetric encryption mode to obtain abstract information; the private key corresponds to the public key and forms an asymmetrically encrypted key pair together;
and the upgrade file copying subunit is used for copying the Linux upgrade file and the abstract information thereof to the operating system.
Further, the upgrade signature verification judging unit is used for verifying the abstract information of the Linux upgrade file through the public key by the running upgrade service of the BIOS and judging whether the verification signature passes or not.
The invention has the advantages that,
the method and the device for starting the UEFI firmware of the integrated LinuxBoot realize the integrated application of the UEFI BIOS firmware of a server manufacturer and the functions of the user LinuxBoot. The method for freely and safely upgrading the LinuxBoot file by using the traditional complete UEFI BIOS of the server manufacturer or the LinuxBoot according to the requirements of different users is selected, the user using the LinuxBoot to start can freely and safely upgrade the LinuxBoot file, the problem that the server is safely brought by upgrading the LinuxBoot file is avoided, the dependence of the client on the server manufacturer is reduced, and meanwhile the maintenance cost of the server manufacturer is reduced.
In addition, the invention has reliable design principle, simple structure and very wide application prospect.
It can be seen that the present invention has outstanding substantial features and significant advances over the prior art, as well as the benefits of its implementation.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings that are required to be used in the description of the embodiments or the prior art will be briefly described below, and it will be obvious to those skilled in the art that other drawings can be obtained from these drawings without inventive effort.
Fig. 1 is a schematic flow diagram of a UEFI firmware boot method of the present invention.
Fig. 2 is a schematic diagram of a flow chart II of a UEFI firmware boot method of the present invention for integrating linuxboots.
Fig. 3 is a schematic diagram of a UEFI firmware boot device of the integrated LinuxBoot of the present invention.
In the figure, a 1-LinuxBoot file firmware encapsulation module; 1.1-a storage area setting unit; 1.2-starting a file receiving unit; 1.3-starting a file preset unit; 1.4-a start-up flag presetting unit; 2-starting a judging module; 2.1-a start-up unit; 2.2-a basic hardware initialization unit; 2.3-a start flag judging unit; 2.4-starting a file judgment unit; 2.5-DXE peripheral drive skip unit; 2.6-a first startup acquisition unit; 2.7-DXE peripheral driver loading unit; 2.8-a second startup acquisition unit; 2.9-a startup load unit; a 3-LinuxBoot file upgrading module; 3.1-an upgrade file generation unit; 3.2-a public key acquisition unit; 3, upgrading the label checking judging unit; 3.4-upgrade failure determination unit; 3.5-upgrade file update unit.
Detailed Description
In order to make the technical solution of the present invention better understood by those skilled in the art, the technical solution of the present invention will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present invention, and it is apparent that the described embodiments are only some embodiments of the present invention, not all embodiments. All other embodiments, which can be made by those skilled in the art based on the embodiments of the present invention without making any inventive effort, shall fall within the scope of the present invention.
SEC, short for Security Phase, the Security Phase is one Phase of UEFI start flow; PEI, which is abbreviated as Pre-EFI Initialization, is Pre-EFI initialization, which is a phase of the UEFI start-up procedure; BDS is short for Boot Device Selection, and boot equipment is selected as one stage in the UEFI starting flow; DXE, abbreviated as Driver Execution Environment, is an execution driven configuration environment, which is a stage in the UEFI startup procedure.
Example 1:
as shown in fig. 1, the present invention provides a UEFI firmware starting method for integrating LinuxBoot, including the following steps:
s1, a server manufacturer receives a LinuxBoot file, a public key and a starting mark which are sent by a user, and encapsulates the LinuxBoot file, the public key and the starting mark into UEFI BIOS firmware;
s2, selecting whether to load the starting of the LinuxBoot file or the original UEFI BIOS logic starting according to the starting mark value and whether the LinuxBoot file exists in the starting process of the UEFI BIOS;
s3, when the LinuxBoot file is required to be upgraded, the upgrade tool acquires the LinuxBoot upgrade file, the LinuxBoot upgrade file is checked by a public key in the UEFIBIOS firmware, and when the check passes, the LinuxBoot upgrade file is used for updating the LinuxBoot file.
Example 2:
as shown in fig. 2, the present invention provides a UEFI firmware starting method for integrating LinuxBoot, which includes the following steps:
s1, a server manufacturer receives a LinuxBoot file, a public key and a starting mark which are sent by a user, and encapsulates the LinuxBoot file, the public key and the starting mark into UEFI BIOS firmware; the method comprises the following specific steps:
s11, setting a starting file storage area and a password storage area in UEFI BIOS firmware Flash by a server manufacturer;
s12, a server manufacturer receives a LinuxBoot file, a public key and a starting mark which are sent by a user;
s13, the server manufacturer stores the LinuxBoot file in a starting file storage area and stores the public key in a password storage area in the UEFI BIOS firmware compiling process;
s14, the server manufacturer stores the starting mark in an NVRAM area of the UEFI BIOS firmware Flash. NVRAM, which is a short term for Non-Volatile Random Access Memory, is a nonvolatile random access memory, and refers to a RAM that can still hold data after power failure;
s2, selecting whether to load the starting of the LinuxBoot file or the original UEFI BIOS logic starting according to the starting mark value and whether the LinuxBoot file exists in the starting process of the UEFI BIOS; the method comprises the following specific steps:
s21, UEFI BIOS firmware is started;
s22, finishing initialization of SEC phase and PEI phase of UEFI;
s23, entering a DXE initialization stage of UEFI, and judging whether a start flag value indicates the start of a LinuxBoot file;
if yes, go to step S24;
if not, go to step S27;
s24, judging whether a LinuxBoot file exists in a boot file storage area of the UEFI BIOS firmware;
if yes, go to step S25;
if not, go to step S27;
s25, skipping a DXE peripheral driver loading stage and entering a BDS stage;
s26, loading and executing a LinuxBoot file, initializing a peripheral by a Linux kernel, acquiring a starting item, and entering step S29;
s27, loading all DXE peripheral drivers and entering a BDS stage;
s28, initializing the peripheral equipment by using UEFI to acquire a starting item;
s29, loading a starting item by the operating system, and entering a step S3;
s3, when the LinuxBoot file is required to be upgraded, an upgrade tool acquires the LinuxBoot upgrade file, the LinuxBoot upgrade file is checked by a public key in UEFI BIOS firmware, and when the check passes, the LinuxBoot upgrade file is used for updating the LinuxBoot file; the method comprises the following specific steps:
s31, when the LinuxBoot file is required to be upgraded, a user generates a LiuxBoot upgrade file according to an upgrade package file format, and copies the LinuxBoot upgrade file to an operating system;
s32, the upgrade tool obtains a LinuxBoot upgrade file, and reads a public key in UEFI BIOS firmware Flash through a runtime upgrade service of the BIOS;
s33, checking the label of the LinuxBoot upgrading file by the running upgrading service of the BIOS through the public key, and judging whether the checking label passes or not;
if yes, go to step S34;
if not, judging that the updating of the LinuxBoot file fails, and ending;
s34, the running upgrading service of the BIOS uses the LinuxBoot upgrading file to update the LinuxBoot file in the UEFIBIOS firmware Flash in-band.
Example 3:
as shown in fig. 2, the present invention provides a UEFI firmware starting method for integrating LinuxBoot, which includes the following steps:
s1, a server manufacturer receives a LinuxBoot file, a public key and a starting mark which are sent by a user, and encapsulates the LinuxBoot file, the public key and the starting mark into UEFI BIOS firmware; the method comprises the following specific steps:
s11, setting a starting file storage area and a password storage area in UEFI BIOS firmware Flash by a server manufacturer; the server manufacturer defines a LinuxBoot upgrading binary image packet structure in UEFI BIOS firmware; the LinuxBoot upgrading binary image package structure comprises a file header and a Linux upgrading file; the file header comprises a Linux file version number, a Linux file size and abstract information in front of a client private key for a Linux upgrade file;
s12, a server manufacturer receives a LinuxBoot file, a public key and a starting mark which are sent by a user;
s13, the server manufacturer stores the LinuxBoot file in a starting file storage area and stores the public key in a password storage area in the UEFI BIOS firmware compiling process;
s14, the server manufacturer stores the starting mark in an NVRAM area of the UEFI BIOS firmware Flash; NVRAM, which is a short term for Non-Volatile Random Access Memory, is a nonvolatile random access memory, and refers to a RAM that can still hold data after power failure;
s2, selecting whether to load the starting of the LinuxBoot file or the original UEFI BIOS logic starting according to the starting mark value and whether the LinuxBoot file exists in the starting process of the UEFI BIOS; the method comprises the following specific steps:
s21, UEFI BIOS firmware is started;
s22, finishing initialization of SEC phase and PEI phase of UEFI;
s23, entering a DXE initialization stage of UEFI, and judging whether a start flag value indicates the start of a LinuxBoot file;
if yes, go to step S24;
if not, go to step S27;
s24, judging whether a LinuxBoot file exists in a boot file storage area of the UEFI BIOS firmware;
if yes, go to step S25;
if not, go to step S27;
s25, skipping a DXE peripheral driver loading stage and entering a BDS stage;
s26, loading and executing a LinuxBoot file, initializing a peripheral by a Linux kernel, acquiring a starting item, and entering step S29;
s27, loading all DXE peripheral drivers and entering a BDS stage;
s28, initializing the peripheral equipment by using UEFI to acquire a starting item;
s29, loading a starting item by the operating system, and entering a step S3; the method comprises the steps that UEFI BIOS firmware needs to read the value of a start flag 'LinuxBootEnable' variable of NVRAM in the early stage of DXE, if the value is 1, the content in BIOS Flash is continuously read, whether a LinuxBoot FV area exists or not is checked, if the area exists, the content in the LinuxBoot area is read as a loadable DXE mirror program, meanwhile, the UEFI DXE drivers such as a peripheral driver are skipped to be loaded into a memory, after the UEFI BIOS enters the BDS stage, after basic setting is completed, the LinuxBoot file is directly loaded and started, the LinuxBoot initializes the peripheral through a Linux kernel, and an operating system start item on a peripheral start medium is found, so that the operation of initializing the peripheral by using the driver of the UEFI version is skipped; if the value of the starting mark, namely a variable 'LinuxBootEnable', is false or a LinuxBoot file does not exist in BIOS Flash, loading all UEFI DXE drivers according to the traditional UEFI BIOS starting logic, initializing all peripheral devices after entering a BDS stage, finding starting items from all possible starting media, and then loading operating system starting items;
s3, when the LinuxBoot file is required to be upgraded, an upgrade tool acquires the LinuxBoot upgrade file, the LinuxBoot upgrade file is checked by a public key in UEFI BIOS firmware, and when the check passes, the LinuxBoot upgrade file is used for updating the LinuxBoot file; the method comprises the following specific steps:
s31, when the LinuxBoot file is required to be upgraded, a user generates a LinuxBoot upgrade file according to an upgrade package file format, and copies the LinuxBoot upgrade file to an operating system; the method comprises the following specific steps:
s311, when the LinuxBoot file is required to be upgraded, preparing files according to the version number and the size of the Linux file in the LinuxBoot upgrading binary image packet structure by a user, and compiling to generate the Linux upgrading file;
s312, signing the Linux upgrade file by using a private key provided by a user in an asymmetric encryption mode to obtain abstract information; the private key corresponds to the public key and forms an asymmetrically encrypted key pair together;
s313, copying the Linux upgrade file and abstract information thereof to an operating system;
s32, the upgrade tool obtains a LinuxBoot upgrade file, and reads a public key in UEFI BIOS firmware Flash through a runtime upgrade service of the BIOS;
s33, checking the label of the LinuxBoot upgrading file by the running upgrading service of the BIOS through the public key, and judging whether the checking label passes or not; the running upgrading service of the BIOS performs signature verification on the abstract information of the Linux upgrading file through the public key, and judges whether the signature verification is passed or not;
if yes, go to step S34;
if not, judging that the updating of the LinuxBoot file fails, and ending;
s34, the running upgrading service of the BIOS uses the LinuxBoot upgrading file to update the LinuxBoot file in the UEFIBIOS firmware Flash in-band.
Example 4:
as shown in fig. 3, the present invention provides a UEFI firmware start device integrated with a LinuxBoot, including:
the LiuxBoot file firmware encapsulation module 1 is used for receiving a LinuxBoot file, a public key and a starting mark which are sent by a user by a server manufacturer, and encapsulating the LinuxBoot file, the public key and the starting mark into UEFI BIOS firmware;
the starting judgment module 2 is used for selecting whether to load the starting of the LinuxBoot file or the original UEFI BIOS logic starting according to the starting mark value and whether the LinuxBoot file exists in the starting process of the UEFI BIOS;
the LinuxBoot file upgrading module 3 is used for obtaining a LinuxBoot upgrading file by an upgrading tool when the LinuxBoot file is required to be upgraded, checking a signature of the LinuxBoot upgrading file through a public key in the UEFI BIOS firmware, and updating the LinuxBoot file by using the LinuxBoot upgrading file when the signature passes.
Example 5:
as shown in fig. 3, the present invention provides a UEFI firmware start device integrated with a LinuxBoot, including:
the method comprises the steps that a LinuxBoot file firmware encapsulation module 1 is used for receiving a LinuxBoot file, a public key and a starting mark which are sent by a user by a server manufacturer, and encapsulating the LinuxBoot file, the public key and the starting mark into UEFI BIOS firmware; the LinuxBoot file firmware encapsulation module 1 includes:
the storage area setting unit 1.1 is used for setting a startup file storage area and a password storage area in UEFI BIOS firmware Flash by a server manufacturer;
the starting file receiving unit 1.2 is used for receiving a LinuxBoot file, a public key and a starting mark which are sent by a user by a server manufacturer;
a startup file preset unit 1.3, configured to store a LinuxBoot file in a startup file storage area and store a public key in a password storage area in a UEFI BIOS firmware compiling process by a server manufacturer;
the starting mark presetting unit 1.4 is used for storing the starting mark in an NVRAM area of the UEFI BIOS firmware Flash by a server manufacturer;
the starting judgment module 2 is used for selecting whether to load the starting of the LinuxBoot file or the original UEFI BIOS logic starting according to the starting mark value and whether the LinuxBoot file exists in the starting process of the UEFI BIOS; the start judgment module 2 includes:
the starting unit 2.1 is used for starting the UEFI BIOS firmware;
the basic hardware initialization unit 2.2 is used for completing the SEC phase and PEI phase initialization of the UEFI;
a start flag judging unit 2.3, configured to enter a DXE initialization stage of UEFI, and judge whether the start flag value indicates that the LinuxBoot file is started;
the starting file judging unit 2.4 is used for judging whether the starting file storage area of the UEFI BIOS firmware has the LinuxBoot file or not when the starting mark indicates that the LinuxBoot file is started;
a DXE peripheral driver skipping unit 2.5, configured to skip the DXE peripheral driver loading phase and enter the BDS phase when a LinuxBoot file exists;
the first starting item obtaining unit 2.6 is used for loading and executing a Linux boot file, initializing a peripheral by a Linux kernel, and obtaining a starting item;
the DXE peripheral driver loading unit 2.7 is configured to load all DXE peripheral drivers when the start flag indicates that the non-linux boot file is started or that the non-linux boot file does not exist, and enter a BDS stage;
a second startup item obtaining unit 2.8, configured to initialize the peripheral device by using UEFI to obtain a startup item;
a boot item loading unit 2.9, configured to load a boot item by using an operating system;
the LinuxBoot file upgrading module 3 is used for obtaining a LinuxBoot upgrading file by an upgrading tool when the LinuxBoot file is required to be upgraded, checking a signature of the LinuxBoot upgrading file through a public key in the UEFI BIOS firmware, and updating the LinuxBoot file by using the LinuxBoot upgrading file when the signature passes; the LinuxBoot file upgrading module 3 includes:
the upgrade file generating unit 3.1 is used for generating a LinuxBoot upgrade file according to an upgrade package file format by a user when the LinuxBoot file is required to be upgraded, and copying the LinuxBoot upgrade file to an operating system;
the public key obtaining unit 3.2 is used for obtaining a LinuxBoot upgrading file by an upgrading tool and reading a public key in the UEFI BIOS firmware Flash through a runtime upgrading service of the BIOS;
the upgrade label checking judging unit 3.3 is used for checking labels of the LinuxBoot upgrade file by the running upgrade service of the BIOS through the public key and judging whether the labels pass or not;
the upgrade failure judging unit 3.4 is used for judging that the upgrade of the LinuxBoot file fails when the verification sign fails;
and the upgrade file updating unit 3.5 is used for using the LinuxBoot upgrade file to update the LinuxBoot file in the UEFI BIOS firmware Flash in the band by the running upgrade service of the BIOS when the verification passes.
Example 6:
as shown in fig. 3, the present invention provides a UEFI firmware start device integrated with a LinuxBoot, including:
the method comprises the steps that a LinuxBoot file firmware encapsulation module 1 is used for receiving a LinuxBoot file, a public key and a starting mark which are sent by a user by a server manufacturer, and encapsulating the LinuxBoot file, the public key and the starting mark into UEFI BIOS firmware; the LinuxBoot file firmware encapsulation module 1 includes:
the storage area setting unit 1.1 is used for setting a startup file storage area and a password storage area in UEFI BIOS firmware Flash by a server manufacturer; the server manufacturer defines a LinuxBoot upgrading binary image packet structure in UEFI BIOS firmware; the LinuxBoot upgrading binary image package structure comprises a file header and a Linux upgrading file; the file header comprises a Linux file version number, a Linux file size and abstract information in front of a client private key for a Linux upgrade file;
the starting file receiving unit 1.2 is used for receiving a LinuxBoot file, a public key and a starting mark which are sent by a user by a server manufacturer;
a startup file preset unit 1.3, configured to store a LinuxBoot file in a startup file storage area and store a public key in a password storage area in a UEFI BIOS firmware compiling process by a server manufacturer;
the starting mark presetting unit 1.4 is used for storing the starting mark in an NVRAM area of the UEFI BIOS firmware Flash by a server manufacturer;
the starting judgment module 2 is used for selecting whether to load the starting of the LinuxBoot file or the original UEFI BIOS logic starting according to the starting mark value and whether the LinuxBoot file exists in the starting process of the UEFI BIOS; the start judgment module 2 includes:
the starting unit 2.1 is used for starting the UEFI BIOS firmware;
the basic hardware initialization unit 2.2 is used for completing the SEC phase and PEI phase initialization of the UEFI;
a start flag judging unit 2.3, configured to enter a DXE initialization stage of UEFI, and judge whether the start flag value indicates that the LinuxBoot file is started;
the starting file judging unit 2.4 is used for judging whether the starting file storage area of the UEFI BIOS firmware has the LinuxBoot file or not when the starting mark indicates that the LinuxBoot file is started;
a DXE peripheral driver skipping unit 2.5, configured to skip the DXE peripheral driver loading phase and enter the BDS phase when a LinuxBoot file exists;
the first starting item obtaining unit 2.6 is used for loading and executing a Linux boot file, initializing a peripheral by a Linux kernel, and obtaining a starting item;
the DXE peripheral driver loading unit 2.7 is configured to load all DXE peripheral drivers when the start flag indicates that the non-linux boot file is started or that the non-linux boot file does not exist, and enter a BDS stage;
a second startup item obtaining unit 2.8, configured to initialize the peripheral device by using UEFI to obtain a startup item;
a boot item loading unit 2.9, configured to load a boot item by using an operating system;
the LinuxBoot file upgrading module 3 is used for obtaining a LinuxBoot upgrading file by an upgrading tool when the LinuxBoot file is required to be upgraded, checking a signature of the LinuxBoot upgrading file through a public key in the UEFI BIOS firmware, and updating the LinuxBoot file by using the LinuxBoot upgrading file when the signature passes; the LinuxBoot file upgrading module 3 includes:
the upgrade file generating unit 3.1 is used for generating a LinuxBoot upgrade file according to an upgrade package file format by a user when the LinuxBoot file is required to be upgraded, and copying the LinuxBoot upgrade file to an operating system; an upgrade file generation unit including:
the upgrade file generation subunit is used for preparing files according to the version numbers and the sizes of the Linux files in the Linux file version binary image package structure when the Linux boot file is required to be upgraded, and compiling the files to generate the Linux upgrade file;
the upgrade file signing subunit is used for signing the Linux upgrade file by using a private key provided by a user in an asymmetric encryption mode to obtain abstract information; the private key corresponds to the public key and forms an asymmetrically encrypted key pair together;
the upgrade file copying subunit is used for copying the Linux upgrade file and the abstract information thereof to the operating system;
the public key obtaining unit 3.2 is used for obtaining a LinuxBoot upgrading file by an upgrading tool and reading a public key in the UEFI BIOS firmware Flash through a runtime upgrading service of the BIOS;
the upgrade label checking judging unit 3.3 is used for checking labels of the LinuxBoot upgrade file by the running upgrade service of the BIOS through the public key and judging whether the labels pass or not; the running upgrading service of the BIOS performs signature verification on the abstract information of the Linux upgrading file through the public key;
the upgrade failure judging unit 3.4 is used for judging that the upgrade of the LinuxBoot file fails when the verification sign fails;
and the upgrade file updating unit 3.5 is used for using the LinuxBoot upgrade file to update the LinuxBoot file in the UEFI BIOS firmware Flash in the band by the running upgrade service of the BIOS when the verification passes.
The invention can be applied to the scene of the integration of the LinuxBoo starting application in computer systems such as servers, storages, switches and the like.
Although the present invention has been described in detail by way of preferred embodiments with reference to the accompanying drawings, the present invention is not limited thereto. Various equivalent modifications and substitutions may be made in the embodiments of the present invention by those skilled in the art without departing from the spirit and scope of the present invention, and it is intended that all such modifications and substitutions be within the scope of the present invention/be within the scope of the present invention as defined by the appended claims. Therefore, the protection scope of the present invention shall be subject to the protection scope of the claims.

Claims (10)

1. The UEFI firmware starting method of the integrated LinuxBoot is characterized by comprising the following steps of:
s1, a server manufacturer receives a LinuxBoot file, a public key and a starting mark which are sent by a user, and encapsulates the LinuxBoot file, the public key and the starting mark into UEFI BIOS firmware;
s2, selecting whether to load the starting of the LinuxBoot file or the original UEFI BIOS logic starting according to the starting mark value and whether the LinuxBoot file exists or not in the starting process of the UEFIBIOS;
s3, when the LinuxBoot file is required to be upgraded, the upgrading tool acquires the LinuxBoot upgrading file, the LinuxBoot upgrading file is checked through a public key in UEFI BIOS firmware, and when the check passes, the LinuxBoot upgrading file is used for updating the LinuxBoot file.
2. The method for starting up the UEFI firmware of the integrated LinuxBoot of claim 1, wherein step S1 specifically includes the following steps:
s11, setting a starting file storage area and a password storage area in UEFI BIOS firmware Flash by a server manufacturer;
s12, a server manufacturer receives a LinuxBoot file, a public key and a starting mark which are sent by a user;
s13, the server manufacturer stores the LinuxBoot file in a starting file storage area and stores the public key in a password storage area in the UEFI BIOS firmware compiling process;
s14, the server manufacturer stores the starting mark in an NVRAM area of the UEFI BIOS firmware Flash.
3. The method for starting up the UEFI firmware of the integrated LinuxBoot of claim 2, wherein step S2 specifically includes the following steps:
s21, UEFI BIOS firmware is started;
s22, finishing initialization of SEC phase and PEI phase of UEFI;
s23, entering a DXE initialization stage of UEFI, and judging whether a start flag value indicates the start of a LinuxBoot file;
if yes, go to step S24;
if not, go to step S27;
s24, judging whether a LinuxBoot file exists in a boot file storage area of the UEFI BIOS firmware;
if yes, go to step S25;
if not, go to step S27;
s25, skipping a DXE peripheral driver loading stage and entering a BDS stage;
s26, loading and executing a LinuxBoot file, initializing a peripheral by a Linux kernel, acquiring a starting item, and entering step S29;
s27, loading all DXE peripheral drivers and entering a BDS stage;
s28, initializing the peripheral equipment by using UEFI to acquire a starting item;
s29, loading a starting item by the operating system, and entering step S3.
4. The method for starting up the UEFI firmware of the integrated LinuxBoot of claim 2, wherein step S3 comprises the following specific steps:
s31, when the LinuxBoot file is required to be upgraded, a user generates a LinuxBoot upgrade file according to an upgrade package file format, and copies the LinuxBoot upgrade file to an operating system;
s32, the upgrade tool obtains a LinuxBoot upgrade file, and reads a public key in UEFI BIOS firmware Flash through a runtime upgrade service of the BIOS;
s33, checking the label of the LinuxBoot upgrading file by the running upgrading service of the BIOS through the public key, and judging whether the checking label passes or not;
if yes, go to step S34;
if not, judging that the updating of the LinuxBoot file fails, and ending;
s34, the running upgrading service of the BIOS uses the LinuxBoot upgrading file to update the LinuxBoot file in the UEFI BIOS firmware Flash in-band.
5. The method for boot-up of the unified LinuxBoot UEFI firmware of claim 4,
step S11, a server manufacturer defines a LinuxBoot upgrading binary image package structure in UEFI BIOS firmware; the LinuxBoot upgrading binary image package structure comprises a file header and a Linux upgrading file; the file header comprises a Linux file version number, a Linux file size and summary information for signing a Linux upgrade file by a client private key;
the specific steps of step S31 are as follows:
s311, when the LinuxBoot file is required to be upgraded, preparing files according to the version number and the size of the Linux file in the LinuxBoot upgrading binary image packet structure by a user, and compiling to generate the Linux upgrading file;
s312, signing the Linux upgrade file by using a private key provided by a user in an asymmetric encryption mode to obtain abstract information; the private key corresponds to the public key and forms an asymmetrically encrypted key pair together;
s313, copying the Linux upgrade file and abstract information thereof to an operating system.
6. The method for starting up the unified Linux boot-up UEFI firmware of claim 5, wherein in step S33, the runtime upgrade service of the BIOS performs signature verification on the summary information of the Linux upgrade file by using the public key, and determines whether the signature verification is passed.
7. The UEFI firmware starting device of integrated LinuxBoot is characterized by comprising:
the LinuxBoot file firmware encapsulation module (1) is used for receiving a LinuxBoot file, a public key and a starting mark which are sent by a user by a server manufacturer and encapsulating the LinuxBoot file, the public key and the starting mark into the UEFI BIOS firmware;
the starting judgment module (2) is used for selecting whether to load the starting of the LinuxBoot file or the original UEFI BIOS logic starting according to the starting mark value and whether the LinuxBoot file exists in the starting process of the UEFIBIOS;
the LinuxBoot file upgrading module (3) is used for obtaining a LinuxBoot upgrading file by an upgrading tool when the LinuxBoot file is required to be upgraded, checking the LinuxBoot upgrading file by a public key in the UEFIBIOS firmware, and updating the LinuxBoot file by using the LinuxBoot upgrading file when the checking passes.
8. The UEFI firmware boot device of the integrated LinuxBoot of claim 7, wherein the LinuxBoot file firmware package module (1) includes:
a storage area setting unit (1.1) for setting a start file storage area and a password storage area in the UEFIBIOS firmware Flash by a server manufacturer;
the starting file receiving unit (1.2) is used for receiving the LinuxBoot file, the public key and the starting mark which are sent by the user by the server manufacturer;
a starting file preset unit (1.3) for storing the LinuxBoot file in a starting file storage area and storing the public key in a password storage area in the compiling process of the UEFIBIOS firmware by a server manufacturer;
and the starting mark presetting unit (1.4) is used for storing the starting mark in an NVRAM area of the UEFIBIOS firmware Flash by a server manufacturer.
9. The LinuxBoot-integrated UEFI firmware initiation device of claim 7, wherein the initiation determination module (2) comprises:
the starting unit (2.1) is used for starting the UEFI BIOS firmware;
the basic hardware initialization unit (2.2) is used for completing the SEC phase and PEI phase initialization of the UEFI;
a start-up mark judging unit (2.3) for entering a DXE initialization stage of the UEFI and judging whether the start-up mark value indicates the start-up of the LinuxBoot file;
a start file judging unit (2.4) for judging whether the start file storage area of the UEFI BIOS firmware has the LinuxBoot file when the start flag indicates that the LinuxBoot file is started;
a DXE peripheral driver skipping unit (2.5) for skipping the DXE peripheral driver loading stage and entering the BDS stage when the LinuxBoot file exists;
the first starting item acquisition unit (2.6) is used for loading and executing a LinuxBoot file, initializing a peripheral by a Linux kernel and acquiring a starting item;
the DXE peripheral driver loading unit (2.7) is used for loading all DXE peripheral drivers when the start mark indicates that the non-LinuxBoot file is started or the LinuxBoot file does not exist, and entering a BDS stage;
a second startup item obtaining unit (2.8) for initializing the peripheral equipment by using the UEFI to obtain a startup item;
and the starting item loading unit (2.9) is used for loading the starting item by the operating system.
10. The UEFI firmware-enabled device of the integrated LinuxBoot of claim 7, wherein the LinuxBoot file upgrade module (3) includes:
the upgrade file generation unit (3.1) is used for generating a LinuxBoot upgrade file according to an upgrade package file format by a user when the LinuxBoot file is required to be upgraded, and copying the LinuxBoot upgrade file to an operating system;
the public key obtaining unit (3.2) is used for obtaining a LinuxBoot upgrading file by the upgrading tool and reading a public key in UEFI BIOS firmware Flash through a running upgrading service of the BIOS;
the upgrade signature verification judging unit (3.3) is used for verifying the LinuxBoot upgrade file through the public key by the running upgrade service of the BIOS and judging whether the verification signature passes or not;
the upgrade failure judging unit (3.4) is used for judging that the upgrade of the LinuxBoot file fails when the verification sign fails;
and the upgrade file updating unit (3.5) is used for using the LinuxBoot upgrade file to update the LinuxBoot file in the UEFIBIOS firmware Flash in the band by the running upgrade service of the BIOS when the verification passes.
CN202110722993.3A 2021-06-28 2021-06-28 UEFI firmware starting method and device integrating LinuxBoot Active CN113626822B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110722993.3A CN113626822B (en) 2021-06-28 2021-06-28 UEFI firmware starting method and device integrating LinuxBoot

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110722993.3A CN113626822B (en) 2021-06-28 2021-06-28 UEFI firmware starting method and device integrating LinuxBoot

Publications (2)

Publication Number Publication Date
CN113626822A CN113626822A (en) 2021-11-09
CN113626822B true CN113626822B (en) 2023-05-26

Family

ID=78378512

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110722993.3A Active CN113626822B (en) 2021-06-28 2021-06-28 UEFI firmware starting method and device integrating LinuxBoot

Country Status (1)

Country Link
CN (1) CN113626822B (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117529705A (en) * 2021-12-09 2024-02-06 英特尔公司 Firmware apparatus, device, method, and computer program
CN114911488B (en) * 2022-04-27 2024-04-09 北京计算机技术及应用研究所 UEFI firmware LOGO replacement and recovery method based on domestic processor platform
CN116149759B (en) * 2023-04-20 2023-07-14 深圳市吉方工控有限公司 UEFI (unified extensible firmware interface) drive unloading method and device, electronic equipment and readable storage medium

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5519712B2 (en) * 2012-01-20 2014-06-11 レノボ・シンガポール・プライベート・リミテッド Method of booting a computer and computer

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
FPGA嵌入式系统的引导实现;王淑贞等;计算机系统应用(第09期);全文 *

Also Published As

Publication number Publication date
CN113626822A (en) 2021-11-09

Similar Documents

Publication Publication Date Title
CN113626822B (en) UEFI firmware starting method and device integrating LinuxBoot
US8874892B1 (en) Assessing BIOS information prior to reversion
US7136994B2 (en) Recovery images in an operational firmware environment
US9389878B1 (en) Pre-boot management of drivers and programs
EP1634170B1 (en) Method for firmware variable storage with eager compression, fail-safe extraction and restart time compression scan
US20170220278A1 (en) Backing up firmware during initialization of device
JP6054908B2 (en) Method for repairing variable sets, computer program and computer
US8560822B1 (en) Pre-boot operating environment
JP5403771B2 (en) System and method for providing secure updates to firmware
US9881162B2 (en) System and method for auto-enrolling option ROMS in a UEFI secure boot database
KR100675518B1 (en) Modular bios update mechanism
CN109634645B (en) Firmware upgrading method and terminal
US20040255106A1 (en) Recovery of operating system configuration data by firmware of computer system
US20110145807A1 (en) Method and device for updating a computer application
US11579893B2 (en) Systems and methods for separate storage and use of system BIOS components
US20150074386A1 (en) Boot method and boot system
US8539200B2 (en) OS-mediated launch of OS-independent application
JPH11502045A (en) Method and arrangement for providing BIOS to host computer
CN101807152B (en) Basic output and input system for self verification of selection read only memory and verification method thereof
CN110874467B (en) Information processing method, device, system, processor and storage medium
US9110678B1 (en) Automated BIOS enhancements and upgrades
US20030188146A1 (en) Method of ordered execution of firmware modules in a pre-memory execution environment
JP2001075812A (en) Method and device for executing application during computer pre-boot operation
US10262309B1 (en) Augmenting a BIOS with new programs
CN109460262B (en) Method, system, android device and medium for verifying validity of main system image

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant