CN114691223B - Method and device for transmitting BIOS logs through network - Google Patents

Method and device for transmitting BIOS logs through network Download PDF

Info

Publication number
CN114691223B
CN114691223B CN202210279828.XA CN202210279828A CN114691223B CN 114691223 B CN114691223 B CN 114691223B CN 202210279828 A CN202210279828 A CN 202210279828A CN 114691223 B CN114691223 B CN 114691223B
Authority
CN
China
Prior art keywords
bios
log
network card
early
bios log
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
CN202210279828.XA
Other languages
Chinese (zh)
Other versions
CN114691223A (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.)
Shenzhen Tong Tai Yi Information Technology Co ltd
Original Assignee
Shenzhen Tong Tai Yi Information 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 Shenzhen Tong Tai Yi Information Technology Co ltd filed Critical Shenzhen Tong Tai Yi Information Technology Co ltd
Priority to CN202210279828.XA priority Critical patent/CN114691223B/en
Publication of CN114691223A publication Critical patent/CN114691223A/en
Application granted granted Critical
Publication of CN114691223B publication Critical patent/CN114691223B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1023Server selection for load balancing based on a hash applied to IP addresses or costs
    • 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)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Debugging And Monitoring (AREA)

Abstract

The application belongs to the technical field of computers, and discloses a method and a device for transmitting BIOS logs through a network, wherein the method comprises the following steps: initializing the network card preferentially to enable the function of sending data of the network card to be available; before the network card is successfully initialized, generating an early BIOS log according to the state and operation of hardware equipment on a main board; after the network card is successfully initialized, generating a later BIOS log according to the state and operation of hardware equipment on a main board; transmitting the early BIOS log and the later BIOS log to the network card through a debuglib module; and sending the early BIOS log and the later BIOS log to a given IPV4 address through the network card. The BIOS log information is sent to a network server of the appointed IPV4 address through a network, and the BIOS log can be directly and remotely checked on another computer through the Internet without depending on external embedded chip support.

Description

Method and device for transmitting BIOS logs through network
Technical Field
The application belongs to the technical field of computers, and discloses a method and a device for transmitting BIOS logs through a network.
Background
In the boot process of a Basic Input/output System (BIOS) boot server, scan detection, device initialization, and resource allocation and adaptation are performed on hardware devices on a server motherboard, if a boot failure System is down or other failures occur during the boot process, a start serial port control switch in a BIOS code is often required to be turned on at this time, after a storage option machine is restarted, a BIOS serial port log is collected through a serial port line or through a SOL (Serial Over Lan) interface of a baseboard management controller (Baseboard Management Controller, BMC), and problems are further analyzed and located from the start process of the BIOS.
The BIOS log reflects the running state of the BIOS during the whole process from power-up to system entry of the computer, and is the most common debug means for BIOS engineers. For a computer with an X86 architecture, a log is generated in the running process of the BIOS, and the log can be divided into an 80port log and a COM (serial port) log according to contents. Because the BIOS does not directly output the log, the desire to obtain information must rely on the support of an external embedded chip (BMC, superIO, debug card), and once support is lost (BMC failure, missing or not working), the BIOS log cannot be obtained, which is inconvenient.
COM is indeed somewhat disfavored as an interface developed for decades, and COM port connection lines are less common, which presents some difficulties for debugging personnel. COM ports are rarely used, and BIOS diagnostic cards are more specialized, essentially being owned by only the relevant practitioner. Such interface designs present difficulties to non-professionals lacking tools.
Whether desktop or notebook, server. Their behavior of outputting BIOS logs is all real-time. 80port information, COM information is output in real time, and the BIOS itself has no storage means (because if stored in the memory, the memory will lose information when powered down, if stored in the BIOS ROM, the ROM space is insufficient and data collision with the BIOS itself easily causes BIOS data corruption). The existing BIOS log recording method is in any form, and is essentially to record each piece of data transmitted from the serial port, so as to achieve the purpose of storing the BIOS log.
Disclosure of Invention
The present application is directed to a method and apparatus for transmitting a BIOS log through a network, so as to solve the above-mentioned problems in the background art.
In order to achieve the above purpose, the present application provides the following technical solutions:
in one aspect, an embodiment of the present application provides a method for transmitting a BIOS log through a network, including:
initializing the network card preferentially to enable the function of sending data of the network card to be available;
before the network card is successfully initialized, generating an early BIOS log according to the state and operation of hardware equipment on a main board;
after the network card is successfully initialized, generating a later BIOS log according to the state and operation of hardware equipment on a main board;
transmitting the early BIOS log and the later BIOS log to the network card through a debuglib module;
and sending the early BIOS log and the later BIOS log to a given IPV4 address through the network card.
In some embodiments, the early BIOS log comprises: a first early BIOS log of a stage before the completion of the memory initialization and a second early BIOS log of a stage after the completion of the memory initialization.
In some embodiments, the first early BIOS log is obtained and temporarily stored in a CPU cache;
after the memory initialization is completed, acquiring the second early BIOS log and storing the second early BIOS log into the memory;
and acquiring the first early BIOS log temporarily stored in the CPU cache, and storing the first early BIOS log into the memory.
In some embodiments, initializing the network card preferentially makes available a function of the network card to send data, including:
and preferentially operating the network card driver, initializing the network card, and enabling the network card to be available in a data sending function.
In some embodiments, transmitting the early BIOS log and the late BIOS log to the network card via a debuglib module comprises:
acquiring the early BIOS log and the later BIOS log;
transmitting the early BIOS log and the later BIOS log to a COM interface and a BIOS diagnostic card through the debuglib module;
and simultaneously transmitting the early BIOS log and the later BIOS log to the network card.
In some embodiments, before sending the early BIOS log and the late BIOS log to a given IPV4 address over the network card, further comprising:
judging whether the IPV4 address received by the network card is empty or not;
if not, judging whether the IPV4 address received by the network card accords with a format;
if yes, prompting the user to fill in the IPV4 address.
In some embodiments, determining whether the IPV4 address received by the network card conforms to a format includes:
judging whether the IPV4 address received by the network card accords with a format or not;
if yes, judging whether the network card is connected with a network;
if not, prompting the user that the IPV4 address is wrong.
In some embodiments, determining whether the network card is connected to a network includes:
judging whether the network card is connected with a network or not;
if yes, sending the BIOS log to the given IPV4 address through a network cable;
if not, prompting to connect the network.
On the other hand, the embodiment of the application also provides a device for transmitting the BIOS log through the network, which comprises:
the detection unit is used for acquiring hardware state information in the device and outputting the first early BIOS log and the second early BIOS log;
the initialization unit is used for initializing the network card, the memory and other units;
the CPU cache unit is used for temporarily storing the first early BIOS log;
the memory unit is used for temporarily storing the first early BIOS log and the second early BIOS log;
the debuglib module is used for distributing and sending the early BIOS log and the later BIOS log;
and the network card unit is used for sending the early BIOS log and the later BIOS log to the appointed IPV4 address.
The target information acquisition unit is used for acquiring the IPV4 address;
and the page display unit is used for displaying a reminding page when detecting that the acquired IPV4 address is empty or the format of the IPV4 address input by the user is wrong.
On the other hand, the embodiment of the application also provides a device for transmitting the BIOS log through the network, which comprises:
the message display unit is used for displaying the early BIOS log and the later BIOS log;
and the hard disk unit is used for storing the received early BIOS log and the received later BIOS log.
Embodiments of the present application also provide a storage medium, which when executed on a computer causes the computer to perform the method for transferring a BIOS log over a network as claimed in any one of claims 1 to 8
In summary, compared with the prior art, the application has the following beneficial effects: a method and device for transmitting BIOS log through network includes: initializing the network card preferentially to enable the function of sending data of the network card to be available; before the network card is successfully initialized, generating an early BIOS log according to the state and operation of hardware equipment on a main board; after the network card is successfully initialized, generating a later BIOS log according to the state and operation of hardware equipment on a main board; transmitting the early BIOS log and the later BIOS log to the network card through a debuglib module; and sending the early BIOS log and the later BIOS log to a given IPV4 address through the network card. The BIOS log information is sent to a network server of the appointed IPV4 address through a network, and the BIOS log can be directly and remotely checked on another computer through the Internet without depending on external embedded chip support.
Drawings
FIG. 1 is a flowchart of a method for transmitting BIOS logs over a network according to the present embodiment;
FIG. 2 is a flowchart of a method for transmitting BIOS logs over a network according to the present embodiment;
FIG. 3 is a flowchart of a method for transmitting BIOS logs over a network according to the present embodiment;
FIG. 4 is a schematic diagram of classification of BIOS logs;
FIG. 5 is a schematic diagram of a transmission flow of a conventional server BIOS log;
FIG. 6 is a schematic diagram of a machine powering up to an entry system, BIOS undergoing various stages;
FIG. 7 is a schematic diagram of a conventional transmission flow of a server BIOS log;
fig. 8 is a flowchart of hardware initialization of a method for transmitting a BIOS log over a network according to the present embodiment.
Detailed Description
The following description of the embodiments of the present application will be made clearly and completely with reference to the accompanying drawings, in which it is apparent that the embodiments described are only some embodiments of the present application, but not all embodiments. All other embodiments, which can be made by those skilled in the art based on the embodiments of the application without making any inventive effort, are intended to fall within the scope of the application.
The embodiment of the application provides a method, a device and a computer readable storage medium for transmitting a BIOS log through a network.
In addition, the technical features described above in the different embodiments of the present application may be combined with each other as long as they do not collide with each other.
Fig. 1-3 are a flow chart of a method for transmitting a BIOS log through a network according to an embodiment of the present application, including: the network card, the debug module, the motherboard, and various hardware devices on the motherboard (the motherboard and various hardware devices on the motherboard may further include more, and the specific number is not limited herein), and the motherboard is a physical Machine of a computer, which is also called a physical server, and is a name of the physical computer relative to a Virtual Machine (Virtual Machine), and the physical Machine provides a hardware environment of the Virtual Machine, which is also called a "host" or a "host".
Referring to fig. 5 and 7, the BIOS log reflects the running state of the BIOS throughout the process from powering up to entering the system, the most conventional debug approach for BIOS engineers. For a computer with an X86 architecture, a log is generated in the running process of the BIOS, and the log can be divided into an 80port log and a COM (serial port) log according to contents. The 80port log is mainly used as an external BIOS diagnostic card, and the BIOS diagnostic card is provided with a transistor for displaying two digits, which is used for displaying what stage the current BIOS is in according to the 80port information (for example, if the transistor information card is at 55, the BIOS detects that the memory is not installed, if the transistor information card is B4, the BIOS detects that the USB device is inserted, etc.). The detailed log information (debug information, etc.) is output through COM.
The COM port is not directly led out by PCH, but is led out by an external embedded controller.
The BIOS log is transmitted to an external embedded control chip by a south bridge (PCH) through an LPC bus, an SPI bus or an eSPI bus, and then the external embedded chip processes information and outputs the processed information to a COM port (namely a serial communication port and a serial port). The embedded controller is EC on a notebook, superIO on a desktop and BMC on a server. Referring to fig. 5, a transmission flow of the entire BIOS log will be described by taking a server as an example.
It should be noted that the 80port log and the COM log belong to the BIOS log (as shown in fig. 4), and are transmitted on the LPC bus, the SPI bus, or the eSPI bus, so that the BIOS diagnostic card, the PCH, and the BMC lines are connected together in the hardware design. In addition, BMC also has the ability to obtain 80port related information (obtained by communicating with BIOS using ipmi commands, not relevant to the discussion of this patent, and not described further herein).
However, with the development of the times, the COM port has the defects of large volume, low utilization rate, old interfaces and the like, the novel notebook has few COM ports in design, and the BIOS log acquisition modes of the notebook without the COM ports are special: a new set of signal lines is led out on the bus (LPC, SPI, eSPI) where PCH and EC communicate information with each other, and a debug interface is made. A special debug card is used to connect the debug interface, and the debug card processes the information and outputs the processed information.
Regardless of the platform, the BIOS indirectly outputs 80port information and COM information. That is, the user can obtain the log information during the running process of the BIOS only by the support of the external embedded chip and the BIOS diagnostic card.
The following will describe in detail. The order of the following examples is not limited to the preferred order of the examples.
A method of transmitting BIOS logs over a network, comprising: initializing the network card preferentially to enable the function of sending data of the network card to be available; before the network card is successfully initialized, generating an early BIOS log according to the state and operation of hardware equipment on a main board; after the network card is successfully initialized, generating a later BIOS log according to the state and operation of hardware equipment on a main board; transmitting the early BIOS log and the later BIOS log to the network card through a debuglib module; and sending the early BIOS log and the later BIOS log to a given IPV4 address through the network card.
It should be noted that: as illustrated in fig. 6, from machine power up to system entry, the BIOS may go through approximately 4 stages, in order SEC, PEI, DXE, BDS, respectively. In the method, partial contents in PEI and DXE phases in the BIOS operation process are adjusted and reconstructed, so that the BIOS initializes and starts the mainboard network card adapter in the early DXE phase, and a network is utilized to send the BIOS log to a designated IPV4 address.
This has the following advantages:
(1) The BIOS log can be output without external embedded chip support. And the BIOS log can be independently output to the outside under the condition that an external embedded chip (BMC, super IO) does not work, so as to reflect the starting condition of the machine.
(2) The way of outputting the log is simpler and more general. The purpose of this patent is to let BIOS utilize the network to send the log, and the computer is unlikely to not have the net gape, and whether it is wired net gape or WIFI module, the network is one of the especially important parts of computer. By using the network transmission log, a professional tool can be omitted, and the log (COM log) of the BIOS and the current running state (80 port information) can be directly checked on another computer.
(3) A new method of storing BIOS logs is provided. The BIOS may use a network to send log information to a web server specifying an IPV4 address, which logs the received BIOS. The process is in parallel relation with the traditional COM receiving and storing BIOS logs, and the process and the traditional COM receiving and storing BIOS logs are not mutually influenced.
In one embodiment, the early BIOS log comprises: a first early BIOS log of a stage before the completion of the memory initialization and a second early BIOS log of a stage after the completion of the memory initialization.
In some embodiments, the first early BIOS log is obtained and temporarily stored in a CPU cache; after the memory initialization is completed, acquiring the second early BIOS log and storing the second early BIOS log into the memory; and acquiring the first early BIOS log temporarily stored in the CPU cache, and storing the first early BIOS log into the memory.
It should be noted that: the log before the network card is started is processed as follows: the method mainly comprises the steps of relatively few logs of cores in a PEI phase and a DXE phase, modifying BIOS codes, firstly storing the first early BIOS log in a CPU cache temporarily, and transmitting the first early BIOS log stored in the CPU cache temporarily to a designated area of a memory space after the initialization of the memory is completed, wherein the generated BIOS log, namely the second early BIOS log, is synchronously stored in the designated area of the memory space after the initialization of the memory is completed and before the initialization of a network card is completed. And after the network card in the DXE stage is started, the early BIOS log information of the memory space is transmitted out through the network.
The memory space of PEI and DXE phases is different: the DXE phase uses system memory, but the PEI phase is not. The PEI late system memory is initialized to be available, and the CPU cache is used before the PEI late system memory is initialized to be available.
The design also needs to modify BIOS codes, so that the BIOS stores the log information of the PEI in the CPU buffer memory in an additional backup way, and after the initialization of the system memory of the PEI in the later stage is finished, when the BIOS is switched from the temporary memory to the system memory, the information of the memory area for storing the BIOS log is transferred to the system memory. And then, before the network card is started, the newly generated log information is continuously backed up and stored in the memory area. After the network card is started, all the stored log information is transmitted out and the memory area is released. The network port and COM port then output information together as designed for DXE above until the operating system is successfully loaded.
In one embodiment, initializing the network card preferentially makes the function of sending data of the network card available, including: and preferentially operating the network card driver, initializing the network card, and enabling the network card to be available in a data sending function.
It should be noted that: the SEC phase belongs to the security verification inside the chip. The DXE phase is a phase of initializing a large number of devices (including network cards) and installing drivers. The method is also a stage with the longest duration and the most log information in the whole BIOS operation process. Referring to FIG. 8, a DXE dispatcher of one of the DXE kernel components searches for all DXE drivers in the BIOS rom and executes in a certain order. The network card driver is included.
The execution order of the drivers has a great relationship with "The A Priori File" (a priori) throughout the DXE phase, and in fact the driver order in "The A Priori File" (a priori) is a strong order, and DXE Dispatcher will execute all the drivers it contains strictly in order. After execution, the DXE Dispatcher executes the rest of the drivers in the firmware volume according to the inter-dependency relationship between the drivers.
One of the modified points of this patent: by modifying the BIOS code, the net card driver is added to the DXE driver list contained in "The A Priori File" (a priori file), and other drivers required for driving the net card are also added to "The A Priori File" (a priori file) in an appropriate order according to the interdependence relationship. The purpose of this is to make DXE Dispatcher initialize the network card most preferentially and call the drive of the network card, so that the network card has the capability of transmitting data.
In one embodiment, transmitting the early BIOS log and the late BIOS log to the network card via a debuglib module comprises: acquiring the early BIOS log and the later BIOS log; transmitting the early BIOS log and the later BIOS log to a COM interface and a BIOS diagnostic card through the debuglib module; and simultaneously transmitting the early BIOS log and the later BIOS log to the network card.
It should be noted that: after the network card has the capability of sending data, the debuglib module in the reconstructed BIOS code (the module is the module for outputting the BIOS log) is adjusted, so that the network card is controlled to send the same data to a given IPV4 address when the BIOS log is output. Therefore, after the network card is initialized in the early stage of DXE, the network card driver is loaded, and the network card data sending function is available, the BIOS can also transmit information to the network card when outputting logs, and the network card sends the information to a server with a designated IPV4 address.
In an embodiment, before sending the early BIOS log and the late BIOS log to a given IPV4 address through the network card, further comprises: judging whether the IPV4 address received by the network card is empty or not; if not, judging whether the IPV4 address received by the network card accords with a format; if yes, prompting the user to fill in the IPV4 address.
In an embodiment, determining whether the IPV4 address received by the network card conforms to a format includes: judging whether the IPV4 address received by the network card accords with a format or not; if yes, judging whether the network card is connected with a network; if not, prompting the user that the IPV4 address is wrong.
In an embodiment, determining whether the network card is connected to a network includes: judging whether the network card is connected with a network or not; if yes, sending the BIOS log to the given IPV4 address through a network cable; if not, prompting to connect the network.
It will be appreciated that: the verification stage includes verifying whether the IPV4 address is empty, verifying whether the IPV4 address accords with a format and verifying whether a network is connected, which are all set for realizing that the network card sends the early BIOS log and the later BIOS log to the appointed IPV4 address, and can be set according to the situation of the real equipment.
The IPV4 address mentioned in the design can be added with a related option on the BIOS interface, so that a user can conveniently specify the IPV4 address of the default receiving BIOS log server. This is easier to implement than the option of interacting with the user and receiving user input information.
As can be seen from the above, the method for transmitting the BIOS log through the network according to the embodiment of the present application includes: initializing the network card preferentially to enable the function of sending data of the network card to be available; before the network card is successfully initialized, generating an early BIOS log according to the state and operation of hardware equipment on a main board; after the network card is successfully initialized, generating a later BIOS log according to the state and operation of hardware equipment on a main board; transmitting the early BIOS log and the later BIOS log to the network card through a debuglib module; and sending the early BIOS log and the later BIOS log to a given IPV4 address through the network card. The BIOS log information is sent to a network server of the appointed IPV4 address through a network, and the BIOS log can be directly and remotely checked on another computer through the Internet without depending on external embedded chip support.
In order to better implement the above method, the embodiment of the present application further provides a device for transmitting the BIOS log through a network, where the device may be specifically integrated in an electronic device, and the electronic device may be a device such as a terminal, a server, or a personal computer. For example, in this embodiment, the apparatus may include: the system comprises an initialization unit, a CPU cache unit, a memory unit, a debuglib module, a network card unit, a target information acquisition unit and a page display unit, and specifically comprises the following steps:
the detection unit is used for acquiring hardware state information in the device and outputting the first early BIOS log and the second early BIOS log;
the initialization unit is used for initializing the network card, the memory and other units;
in an embodiment, the initialization unit may specifically be configured to: initializing the network card preferentially to enable the function of sending data of the network card to be available; before the network card is successfully initialized, generating an early BIOS log according to the state and operation of hardware equipment on a main board; after the network card is successfully initialized, generating a later BIOS log according to the state and operation of hardware equipment on a main board; transmitting the early BIOS log and the later BIOS log to the network card through a debuglib module; and sending the early BIOS log and the later BIOS log to a given IPV4 address through the network card.
In another embodiment, the initialization unit may specifically be configured to: the early BIOS log includes: a first early BIOS log of a stage before the completion of the memory initialization and a second early BIOS log of a stage after the completion of the memory initialization.
In some embodiments, the first early BIOS log is obtained and temporarily stored in a CPU cache; after the memory initialization is completed, acquiring the second early BIOS log and storing the second early BIOS log into the memory; and acquiring the first early BIOS log temporarily stored in the CPU cache, and storing the first early BIOS log into the memory.
In another embodiment, the initialization unit may specifically be configured to: the network card is initialized preferentially, so that the function of sending data by the network card is available, and the method comprises the following steps: and preferentially operating the network card driver, initializing the network card, and enabling the network card to be available in a data sending function.
The CPU cache unit is used for temporarily storing the first early BIOS log;
in one embodiment, the CPU cache unit may be specifically configured to: the early BIOS log includes: a first early BIOS log of a stage before the completion of the memory initialization and a second early BIOS log of a stage after the completion of the memory initialization.
In some embodiments, the first early BIOS log is obtained and temporarily stored in a CPU cache; after the memory initialization is completed, acquiring the second early BIOS log and storing the second early BIOS log into the memory; and acquiring the first early BIOS log temporarily stored in the CPU cache, and storing the first early BIOS log into the memory.
The memory unit is used for temporarily storing the first early BIOS log and the second early BIOS log;
in one embodiment, the memory unit may specifically be configured to: the early BIOS log includes: a first early BIOS log of a stage before the completion of the memory initialization and a second early BIOS log of a stage after the completion of the memory initialization.
In some embodiments, the first early BIOS log is obtained and temporarily stored in a CPU cache;
after the memory initialization is completed, acquiring the second early BIOS log and storing the second early BIOS log into the memory; and acquiring the first early BIOS log temporarily stored in the CPU cache, and storing the first early BIOS log into the memory. The debuglib module is used for distributing and sending the early BIOS log and the later BIOS log;
in one embodiment, the debuglib module may be specifically configured to: initializing the network card preferentially to enable the function of sending data of the network card to be available; before the network card is successfully initialized, generating an early BIOS log according to the state and operation of hardware equipment on a main board; after the network card is successfully initialized, generating a later BIOS log according to the state and operation of hardware equipment on a main board; transmitting the early BIOS log and the later BIOS log to the network card through a debuglib module; and sending the early BIOS log and the later BIOS log to a given IPV4 address through the network card.
In another embodiment, the debuglib module may be specifically configured to: transmitting the early BIOS log and the later BIOS log to the network card through a debuglib module comprises acquiring the early BIOS log and the later BIOS log; transmitting the early BIOS log and the later BIOS log to a COM interface and a BIOS diagnostic card through the debuglib module; and simultaneously transmitting the early BIOS log and the later BIOS log to the network card.
(5) And the network card unit is used for sending the early BIOS log and the later BIOS log to the appointed IPV4 address.
In an embodiment, the network card unit may specifically be configured to: initializing the network card preferentially to enable the function of sending data of the network card to be available; before the network card is successfully initialized, generating an early BIOS log according to the state and operation of hardware equipment on a main board; after the network card is successfully initialized, generating a later BIOS log according to the state and operation of hardware equipment on a main board; transmitting the early BIOS log and the later BIOS log to the network card through a debuglib module; and sending the early BIOS log and the later BIOS log to a given IPV4 address through the network card.
In another embodiment, the network card unit may specifically be configured to: the network card is initialized preferentially, so that the function of sending data of the network card is available, and the function of sending data of the network card is available by operating the network card driver preferentially and initializing the network card.
In another embodiment, the network card unit may specifically be configured to: transmitting the early BIOS log and the later BIOS log to the network card through a debuglib module comprises acquiring the early BIOS log and the later BIOS log; transmitting the early BIOS log and the later BIOS log to a COM interface and a BIOS diagnostic card through the debuglib module; and simultaneously transmitting the early BIOS log and the later BIOS log to the network card.
In another embodiment, the network card unit may specifically be configured to: before the early BIOS log and the later BIOS log are sent to a given IPV4 address through the network card, judging whether the IPV4 address received by the network card is empty or not; if not, judging whether the IPV4 address received by the network card accords with a format; if yes, prompting the user to fill in the IPV4 address.
In another embodiment, the network card unit may specifically be configured to: judging whether the IPV4 address received by the network card accords with a format or not, including judging whether the IPV4 address received by the network card accords with the format or not; if yes, judging whether the network card is connected with a network; if not, prompting the user that the IPV4 address is wrong.
In another embodiment, the network card unit may specifically be configured to: in an embodiment, determining whether the network card is connected to a network includes determining whether the network card is connected to a network; if yes, sending the BIOS log to the given IPV4 address through a network cable; if not, prompting to connect the network.
(6) The target information acquisition unit is used for acquiring the IPV4 address;
in an embodiment, the target information obtaining unit may specifically be configured to: initializing the network card preferentially to enable the function of sending data of the network card to be available; before the network card is successfully initialized, generating an early BIOS log according to the state and operation of hardware equipment on a main board; after the network card is successfully initialized, generating a later BIOS log according to the state and operation of hardware equipment on a main board; transmitting the early BIOS log and the later BIOS log to the network card through a debuglib module; and sending the early BIOS log and the later BIOS log to a given IPV4 address through the network card.
In another embodiment, the target information obtaining unit may specifically be configured to: before the early BIOS log and the later BIOS log are sent to a given IPV4 address through the network card, judging whether the IPV4 address received by the network card is empty or not; if not, judging whether the IPV4 address received by the network card accords with a format; if yes, prompting the user to fill in the IPV4 address.
In another embodiment, the target information obtaining unit may specifically be configured to: judging whether the IPV4 address received by the network card accords with a format or not, including judging whether the IPV4 address received by the network card accords with the format or not; if yes, judging whether the network card is connected with a network; if not, prompting the user that the IPV4 address is wrong.
(7) And the page display unit is used for displaying a reminding page when detecting that the acquired IPV4 address is empty or the format of the IPV4 address input by the user is wrong.
In an embodiment, the page display unit may specifically be configured to: before the early BIOS log and the later BIOS log are sent to a given IPV4 address through the network card, judging whether the IPV4 address received by the network card is empty or not; if not, judging whether the IPV4 address received by the network card accords with a format; if yes, prompting the user to fill in the IPV4 address.
In another embodiment, the page display unit may be specifically configured to: judging whether the IPV4 address received by the network card accords with a format or not, including judging whether the IPV4 address received by the network card accords with the format or not; if yes, judging whether the network card is connected with a network; if not, prompting the user that the IPV4 address is wrong.
As can be seen from the above, the apparatus for transmitting a BIOS log through a network according to the embodiment of the present application includes:
the system comprises a detection unit, an initialization unit, a CPU (Central processing Unit) cache unit, a memory unit, a debuglib module, a network card unit, a target information acquisition unit and a page display unit. The BIOS log information is sent to a network server of the appointed IPV4 address through a network, and the BIOS log can be directly and remotely checked on another computer through the Internet without depending on external embedded chip support.
In order to better implement the operation of cooperating with the above devices, the embodiment of the present application further provides a device for transmitting the BIOS log through a network, where the device may be specifically integrated in an electronic device, and the electronic device may be a terminal, a server, a personal computer, or other devices. For example, in the present embodiment, the apparatus of the embodiment of the present application will be described in detail taking an example in which a device is integrated in a receiving terminal.
The apparatus may include: the message display unit and the hard disk unit are as follows:
(1) The message display unit is used for displaying the early BIOS log and the later BIOS log;
(2) And the hard disk unit is used for storing the received early BIOS log and the received later BIOS log.
Those of ordinary skill in the art will appreciate that all or a portion of the steps in the various methods of the above embodiments may be performed by instructions, or by instructions controlling associated hardware, which may be stored in a computer-readable storage medium and loaded and executed by a processor.
To this end, an embodiment of the present application provides a storage medium having stored therein a plurality of instructions capable of being loaded by a processor to perform any of the steps in the method for transmitting a BIOS log over a network provided by the embodiment of the present application. For example, the instructions may perform the steps of:
initializing the network card preferentially to enable the function of sending data of the network card to be available; before the network card is successfully initialized, generating an early BIOS log according to the state and operation of hardware equipment on a main board; after the network card is successfully initialized, generating a later BIOS log according to the state and operation of hardware equipment on a main board; transmitting the early BIOS log and the later BIOS log to the network card through a debuglib module; and sending the early BIOS log and the later BIOS log to a given IPV4 address through the network card.
Wherein the storage medium may include: read Only Memory (ROM), random access Memory (RAM, random Access Memory), magnetic or optical disk, and the like.
In summary, the application has the following beneficial effects: a method and device for transmitting BIOS log through network includes: initializing the network card preferentially to enable the function of sending data of the network card to be available; before the network card is successfully initialized, generating an early BIOS log according to the state and operation of hardware equipment on a main board; after the network card is successfully initialized, generating a later BIOS log according to the state and operation of hardware equipment on a main board; transmitting the early BIOS log and the later BIOS log to the network card through a debuglib module; and sending the early BIOS log and the later BIOS log to a given IPV4 address through the network card. The BIOS log information is sent to a network server of the appointed IPV4 address through a network, and the BIOS log can be directly and remotely checked on another computer through the Internet without depending on external embedded chip support.
It is apparent that the above examples are given by way of illustration only and are not limiting of the embodiments. Other variations or modifications of the above teachings will be apparent to those of ordinary skill in the art. It is not necessary here nor is it exhaustive of all embodiments. While still being apparent from variations or modifications that may be made by those skilled in the art are within the scope of the application.

Claims (11)

1. A method for transmitting a BIOS log over a network, comprising:
initializing the network card preferentially to enable the function of sending data of the network card to be available;
before the network card is successfully initialized, generating an early BIOS log according to the state and operation of hardware equipment on a main board;
after the network card is successfully initialized, generating a later BIOS log according to the state and operation of hardware equipment on a main board;
transmitting the early BIOS log and the later BIOS log to the network card through a debuglib module;
and sending the early BIOS log and the later BIOS log to a given IPV4 address through the network card.
2. The method of claim 1, wherein the early BIOS log comprises: a first early BIOS log of a stage before the completion of the memory initialization and a second early BIOS log of a stage after the completion of the memory initialization.
3. The method of claim 2, wherein the first early BIOS log is obtained and temporarily stored in a CPU cache;
after the memory initialization is completed, acquiring the second early BIOS log and storing the second early BIOS log into the memory;
and acquiring the first early BIOS log temporarily stored in the CPU cache, and storing the first early BIOS log into the memory.
4. A method for transferring BIOS logs over a network as recited in claim 3, wherein preferentially initializing the network card to make available a function of the network card to send data comprises:
and preferentially operating the network card driver, initializing the network card, and enabling the network card to be available in a data sending function.
5. The method of claim 1, wherein transmitting the early BIOS log and the late BIOS log to the network card via a debuglib module comprises:
acquiring the early BIOS log and the later BIOS log;
transmitting the early BIOS log and the later BIOS log to a COM interface and a BIOS diagnostic card through the debuglib module;
and simultaneously transmitting the early BIOS log and the later BIOS log to the network card.
6. The method of claim 5, further comprising, prior to sending the early BIOS log and the late BIOS log to a given IPV4 address via the network card:
judging whether the IPV4 address received by the network card is empty or not;
if not, judging whether the IPV4 address received by the network card accords with a format;
if yes, prompting the user to fill in the IPV4 address.
7. The method of claim 6, wherein determining whether the IPV4 address received by the network card is in a format, comprises:
judging whether the IPV4 address received by the network card accords with a format or not;
if yes, judging whether the network card is connected with a network;
if not, prompting the user that the IPV4 address is wrong.
8. The method of claim 7, wherein determining whether the network card is connected to a network comprises:
judging whether the network card is connected with a network or not;
if yes, sending the BIOS log to the given IPV4 address through a network cable;
if not, prompting to connect the network.
9. An apparatus according to any one of claims 1 to 8, comprising:
the detection unit is used for acquiring hardware state information in the device and outputting a first early BIOS log and a second early BIOS log;
the initialization unit is used for initializing the network card and the memory unit;
the CPU cache unit is used for temporarily storing the first early BIOS log;
the memory unit is used for temporarily storing the first early BIOS log and the second early BIOS log;
the debuglib module is used for distributing and sending the early BIOS log and the later BIOS log;
the network card unit is used for sending the early BIOS log and the later BIOS log to the appointed IPV4 address;
the target information acquisition unit is used for acquiring the IPV4 address;
and the page display unit is used for displaying a reminding page when detecting that the acquired IPV4 address is empty or the format of the IPV4 address input by the user is wrong.
10. The apparatus as claimed in claim 9, comprising:
the message display unit is used for displaying the early BIOS log and the later BIOS log;
and the hard disk unit is used for storing the received early BIOS log and the received later BIOS log.
11. A storage medium having stored thereon a computer program which, when run on a computer, causes the computer to perform the method of transmitting BIOS logs over a network as claimed in any one of claims 1 to 8.
CN202210279828.XA 2022-03-21 2022-03-21 Method and device for transmitting BIOS logs through network Active CN114691223B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210279828.XA CN114691223B (en) 2022-03-21 2022-03-21 Method and device for transmitting BIOS logs through network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210279828.XA CN114691223B (en) 2022-03-21 2022-03-21 Method and device for transmitting BIOS logs through network

Publications (2)

Publication Number Publication Date
CN114691223A CN114691223A (en) 2022-07-01
CN114691223B true CN114691223B (en) 2023-08-22

Family

ID=82138298

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210279828.XA Active CN114691223B (en) 2022-03-21 2022-03-21 Method and device for transmitting BIOS logs through network

Country Status (1)

Country Link
CN (1) CN114691223B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116610539B (en) * 2023-04-07 2024-04-05 合芯科技有限公司 Display system, display method, device and medium for startup self-checking information

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1595388A (en) * 2003-09-10 2005-03-16 联想(北京)有限公司 A method for acquiring BIOS information through remote configuration
CN102147763A (en) * 2010-02-05 2011-08-10 中国长城计算机深圳股份有限公司 Method, system and computer for recording weblog
CN104268068A (en) * 2014-09-24 2015-01-07 浪潮电子信息产业股份有限公司 Method for acquiring server log information
CN104391765A (en) * 2014-10-27 2015-03-04 浪潮电子信息产业股份有限公司 Method for automatically diagnosing starting fault of server
CN105867945A (en) * 2016-04-20 2016-08-17 华为技术有限公司 Method and device for starting basic input/output system (BIOS)
CN108984377A (en) * 2018-06-29 2018-12-11 深圳市同泰怡信息技术有限公司 A kind of statistics BIOS logs in method, system and the medium of log
CN109815076A (en) * 2019-03-06 2019-05-28 苏州浪潮智能科技有限公司 A kind of network interface card boot option detection method, system, terminal and storage medium
CN112445678A (en) * 2020-10-16 2021-03-05 苏州浪潮智能科技有限公司 Method for storing server system log
CN112748885A (en) * 2021-01-18 2021-05-04 联想(北京)有限公司 Information processing method, device, equipment and storage medium
CN113254286A (en) * 2021-05-28 2021-08-13 苏州浪潮智能科技有限公司 Log output method and system of server and related device
CN113806127A (en) * 2021-09-12 2021-12-17 济南浪潮数据技术有限公司 Server log collection method and device and readable storage medium

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1595388A (en) * 2003-09-10 2005-03-16 联想(北京)有限公司 A method for acquiring BIOS information through remote configuration
CN102147763A (en) * 2010-02-05 2011-08-10 中国长城计算机深圳股份有限公司 Method, system and computer for recording weblog
CN104268068A (en) * 2014-09-24 2015-01-07 浪潮电子信息产业股份有限公司 Method for acquiring server log information
CN104391765A (en) * 2014-10-27 2015-03-04 浪潮电子信息产业股份有限公司 Method for automatically diagnosing starting fault of server
CN105867945A (en) * 2016-04-20 2016-08-17 华为技术有限公司 Method and device for starting basic input/output system (BIOS)
CN108984377A (en) * 2018-06-29 2018-12-11 深圳市同泰怡信息技术有限公司 A kind of statistics BIOS logs in method, system and the medium of log
CN109815076A (en) * 2019-03-06 2019-05-28 苏州浪潮智能科技有限公司 A kind of network interface card boot option detection method, system, terminal and storage medium
CN112445678A (en) * 2020-10-16 2021-03-05 苏州浪潮智能科技有限公司 Method for storing server system log
CN112748885A (en) * 2021-01-18 2021-05-04 联想(北京)有限公司 Information processing method, device, equipment and storage medium
CN113254286A (en) * 2021-05-28 2021-08-13 苏州浪潮智能科技有限公司 Log output method and system of server and related device
CN113806127A (en) * 2021-09-12 2021-12-17 济南浪潮数据技术有限公司 Server log collection method and device and readable storage medium

Also Published As

Publication number Publication date
CN114691223A (en) 2022-07-01

Similar Documents

Publication Publication Date Title
KR100990188B1 (en) A method for booting a host device from an MMC/SD device, a host device bootable from an MMC/SD device and an MMC/SD device method a host device may be booted from
US6754817B2 (en) Apparatus and method for detecting a change in system hardware configuration to reduce the amount of time to execute a post routine
US8830228B2 (en) Techniques for enabling remote management of servers configured with graphics processors
US7721080B2 (en) Management of option ROM
US20070192582A1 (en) Techniques for initializing a device on an expansion card
US8707109B2 (en) Computer apparatus, non-transitory computer-readable medium storing an error recovery control program, and error recovery control method
EP2189906A1 (en) Method and apparatus for abnormality recovering of data card, and data card
CN110162435B (en) Method, system, terminal and storage medium for starting and testing PXE of server
US6785807B1 (en) Method and system for providing bootcode support in a data processing system that uses a communications port that utilizes a first communications protocol, an external device that utilizes a second communications protocol, and a device driver that is loaded in response to booting to communicate with the external device through the communications port
US10606677B2 (en) Method of retrieving debugging data in UEFI and computer system thereof
EP3062216A1 (en) Network bios management
US10210842B2 (en) Techniques of displaying host data on a monitor connected to a service processor during pre-boot initialization stage
CN109936716B (en) Display driving realization method and system
US20080059786A1 (en) Device initiated mode switching
CN114116378A (en) Method, system, terminal and storage medium for acquiring PCIe device temperature
CN114691223B (en) Method and device for transmitting BIOS logs through network
CN112231005A (en) Method for managing FPGA (field programmable Gate array) version based on UBOOT (Universal boot on Board)
US10491736B2 (en) Computer system and method thereof for bluetooth data sharing between UEFI firmware and OS
CN110688235B (en) System and method for sharing wireless connection information between UEFI firmware and OS
CN116881929B (en) Safety protection method and device, electronic equipment and substrate controller chip
CN116627472A (en) Firmware program upgrading method and server of high-speed peripheral component equipment
EP2487598A1 (en) Data card upgrading method and device
US10509656B2 (en) Techniques of providing policy options to enable and disable system components
CN110737480B (en) Serial port driver multiplexing method and device
CN108073481B (en) Server system capable of providing hardware operation information and processing method thereof

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