A method and system for storing graphics card firmware operation information

By writing graphics card firmware operation information into the video memory buffer and saving it as an operating system log file by the graphics card driver, the problem of the graphics card firmware information being ignored is solved, the complete storage and reliable acquisition of information is achieved, and the debugging and failure of graphics card firmware is promoted. Troubleshooting.

CN114461510BActive Publication Date: 2025-01-17NO 709 RES INST OF CHINA SHIPBUILDING IND CORP
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210071683.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-01-21
Publication Date
2025-01-17
Estimated Expiration
2042-01-21

AI Technical Summary

Technical Problem

The graphics card firmware operation information is overwhelmed by a large amount of debugging information in the debug mode of the hardware platform, or is ignored in the release mode, making it difficult for graphics card manufacturers to obtain, affecting development, debugging and troubleshooting.

Method used

Write the graphics card firmware operation information into the pre-convened video memory buffer, which is read from the graphics card driver when loading and saves it as an operating system log file, and is independent of the hardware platform's BIOS or UEFI firmware and debugging interface.

Benefits of technology

Ensure the integrity and reliability of graphics card firmware operation information, facilitate debugging and troubleshooting, reduce dependence on the hardware platform, and improve the development of graphics card firmware and hardware platform adaptability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114461510B_ABST
    Figure CN114461510B_ABST
Patent Text Reader

Abstract

The present invention discloses a method and system for saving graphics card firmware running information, wherein the saving method comprises: a video memory buffer writing step, a video memory buffer reading step and a graphics card firmware running information saving step; the operation in the video memory buffer writing step is included in the graphics card firmware transmission step; the operations in the video memory buffer reading step and the graphics card firmware running information saving step are both included in the graphics card driver; the present invention outputs the graphics card firmware running information to a visible video memory, and when the graphics card driver is loaded, the graphics card firmware running information in the visible video memory can be saved as an operating system log file, ensuring that a user obtains complete graphics card firmware log information through the operating system log file; the present invention saves the graphics card firmware running information before the graphics card controller is initialized in a main memory cache area; after the graphics card controller is initialized, the graphics card firmware running information in the main memory cache area is copied to the graphics memory buffer area.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the field of graphics card firmware and graphics card driver, and more specifically, relates to a method and system for storing graphics card firmware operation information. Background Art

[0002] The graphics card firmware operation information can indicate the running status of the graphics card and the key steps of the graphics card firmware operation. It is of great significance for the development and debugging of graphics card firmware and the location of graphics card hardware failures.

[0003] The graphics card firmware running information is usually only output to the debugging interface of the hardware platform. Since the graphics card firmware is only called by the hardware platform firmware, the graphics card firmware cannot interfere with the running process of the hardware platform firmware. In debugging mode, the hardware platform firmware usually outputs a large amount of debugging information, causing the graphics card firmware running information to be submerged by a large amount of debugging information; in release mode, the graphics card firmware running information may be ignored by the hardware platform firmware, resulting in the inability to view the graphics card firmware log information; and since the graphics card manufacturer knows very little about the circuit information and motherboard firmware information of the hardware platform, the hardware platform may not provide a debugging output interface to the outside world, which often makes it difficult for the graphics card manufacturer to obtain the graphics card firmware running information, which is not conducive to the graphics card manufacturer to develop debugging firmware and troubleshoot graphics card firmware failures on specific hardware platforms.

[0004] In order to facilitate the understanding of the present invention, the following explains relevant terms and related concepts:

[0005] Graphics card firmware: Firmware refers to those programs that are pre-installed into the internal chip of the hardware product and bundled with the hardware product; Graphics card firmware is a set of programs stored in the BIOS storage chip built into the graphics card, which is responsible for providing display functions on the monitor before the operating system is loaded. The program contains the graphics card firmware type and version information; Graphics card firmware runs before the operating system is loaded, and the operating system starts to load after running; Graphics card firmware includes two types: VBIOS and UEFI GOP; The first step when the graphics card firmware is executed is the initialization step: initializing the video memory controller; Only after the video memory controller is initialized can the data in the video memory be read and written; When the graphics card firmware is executed, the graphics card firmware operation information is continuously generated, including the graphics card firmware execution process, graphics card status, graphics card configuration information, etc.; In addition to the display step that provides display functions before the operating system is loaded, the graphics card firmware also includes a transfer step: outputting the graphics card firmware operation information to the debugging interface of the hardware platform; The transfer step is encapsulated in the graphics card firmware in the form of a print output function; The operations in the above initialization step, display step and transfer step can be named as initialization module, display module and transfer module in the graphics card firmware respectively;

[0006] Graphics driver: The method used to drive the graphics card, which is stored in the hard disk in the form of a graphics driver. The graphics driver is loaded when the operating system is loaded. Summary of the invention

[0007] In view of the defects of the prior art, the purpose of the present invention is to provide a method and system for storing graphics card firmware operation information, aiming to solve the problem that the graphics card firmware operation information is stored in the form of an operating system log file.

[0008] To achieve the above object, the present invention provides a method for saving graphics card firmware operation information, which is used in the graphics card firmware transmission step and the graphics card driver, and includes the following steps:

[0009] (1) Video memory buffer writing steps:

[0010] When the graphics card firmware is executed, the graphics card firmware operation information is written into a pre-agreed graphics memory buffer;

[0011] (2) Video memory buffer reading steps:

[0012] When the graphics card driver is loaded, the graphics card firmware operation information is identified and read from the graphics memory buffer;

[0013] (3) Steps to save graphics card firmware operation information:

[0014] Saving the graphics card firmware operation information as an operating system log file;

[0015] The operation in the video memory buffer writing step is included in the graphics card firmware transfer step;

[0016] The operations in the video memory buffer reading step and the graphics card firmware operation information saving step are both included in the graphics card driver.

[0017] Preferably, the video memory buffer writing step includes the following sub-steps:

[0018] (1) Main memory buffer writing sub-step:

[0019] When the graphics card firmware is executed, the graphics card firmware operation information generated before the graphics memory controller is initialized is stored in a pre-allocated main memory buffer area;

[0020] (2) First save sub-step:

[0021] After the video memory controller is initialized, a pre-agreed identification code is written starting from the starting address of the video memory buffer; then identification information is written, including the type and version information of the graphics card firmware, the offset value and the number of bytes, where the value of the number of bytes is 0; then the graphics card firmware running information in the main memory cache area is copied to the position corresponding to the offset value in the video memory buffer, and the value of the number of bytes is updated;

[0022] The identification code is used to identify whether the graphics card firmware running information exists in the graphics memory buffer;

[0023] The offset value is the number of bytes offset backward from the start address of the video memory buffer;

[0024] The number of bytes is the total number of bytes of graphics card firmware operation information stored in the graphics memory buffer;

[0025] (3) Second saving sub-step:

[0026] The graphics card firmware operation information generated after the video memory controller is initialized is written in sequence starting from the start position of the blank storage position of the video memory buffer in the order of its generation, and the value of the number of bytes is updated.

[0027] Preferably, in the video memory buffer writing step, after the video memory buffer is full, a storage mode of discarding newly generated graphics card firmware operation information or a storage mode of overwriting the oldest graphics card firmware operation information with newly generated graphics card firmware operation information can be adopted.

[0028] Preferably, the process of the video memory buffer reading step is: reading the identification code in the video memory buffer; and reading the graphics card firmware type and version information, offset value and number of bytes stored after the identification code;

[0029] The process of the graphics card firmware operation information saving step is: all the graphics card firmware operation information is read out according to the offset value and the number of bytes, and saved together with the version information as an operating system log file, and saved in the system's log directory; the operating system log file is named according to the graphics card firmware type.

[0030] Preferably, the graphics card firmware includes a preset initialization flag. If the initialization of the video memory controller is not completed, the value of the flag is no, and the main memory buffer writing sub-step is executed; otherwise, the value is true, and the first saving sub-step is executed.

[0031] The present invention provides a system for storing graphics card firmware operation information, which is used in a transmission module of graphics card firmware and a graphics card driver, and includes the following modules:

[0032] Video memory buffer write module:

[0033] Used to write the graphics card firmware running information into a pre-agreed video memory buffer when the graphics card firmware is executed;

[0034] Video memory buffer reading module:

[0035] Used to identify and read graphics card firmware operation information from the graphics memory buffer when the graphics card driver is loaded;

[0036] Graphics card firmware operation information storage module:

[0037] Used to save the graphics card firmware running information as an operating system log file;

[0038] The operation in the video memory buffer writing module is included in the transfer module of the graphics card firmware;

[0039] The operations in the video memory buffer reading module and the graphics card firmware operation information saving module are all included in the graphics card driver.

[0040] Preferably, the video memory buffer writing module includes the following submodules:

[0041] Main memory buffer write submodule:

[0042] Used to save the graphics card firmware operation information generated before the graphics card memory controller is initialized in a pre-allocated main memory buffer area when the graphics card firmware is executed;

[0043] Save the submodule for the first time:

[0044] Used to write a pre-agreed identification code from the start address of the video memory buffer after the video memory controller is initialized; then write identification information, including the type and version information of the graphics card firmware, the offset value and the number of bytes, where the value of the number of bytes is 0; then copy the graphics card firmware running information in the main memory cache area to the position corresponding to the offset value in the video memory buffer, and update the value of the number of bytes;

[0045] The identification code is used to identify whether the graphics card firmware running information exists in the graphics memory buffer;

[0046] The offset value is the number of bytes offset backward from the start address of the video memory buffer;

[0047] The number of bytes is the total number of bytes of graphics card firmware operation information stored in the graphics memory buffer;

[0048] Save the submodule for the first time:

[0049] The method is used to write the graphics card firmware running information generated after the video memory controller is initialized, starting from the starting position of the blank storage position of the video memory buffer in sequence according to the time sequence of its generation, and update the value of the number of bytes.

[0050] Preferably, in the video memory buffer writing module, after the video memory buffer is full, a storage mode of discarding newly generated graphics card firmware operation information or a storage mode of overwriting the oldest graphics card firmware operation information with newly generated graphics card firmware operation information can be adopted.

[0051] Preferably, the specific operations in the video memory buffer reading module are: reading the identification code in the video memory buffer; and reading the graphics card firmware type and version information, offset value and number of bytes stored after the identification code;

[0052] The specific operation in the graphics card firmware operation information saving module is: reading out all the graphics card firmware operation information according to the offset value and the number of bytes, saving it together with the version information as an operating system log file, and saving it to the system's log directory; the operating system log file is named according to the graphics card firmware type.

[0053] Preferably, the graphics card firmware includes a preset initialization flag. If the initialization of the video memory controller is not completed, the value of the flag is no, and the operation in the main memory buffer writing submodule is executed; otherwise, the value of the flag is true, and the operation in the first saving submodule is executed.

[0054] Through the above technical solution conceived by the present invention, compared with the prior art, since the present invention outputs the graphics card firmware operation information to the visible video memory, the graphics card firmware operation information in the visible video memory can be saved as an operating system log file when the graphics card driver is loaded, ensuring that the user obtains complete graphics card firmware operation information through the operating system log file;

[0055] The graphics card firmware runs in the main memory, and the graphics card firmware running information generated during the running is saved in the main memory; the operating system will ignore the data in the main memory when loading, and the data generated when the operating system is loaded may overwrite the data in the main memory, so the graphics card firmware running information in the main memory needs to be output and saved; because both the graphics card firmware and the graphics card driver can access the visible video memory, and the operating system may only access a small piece of video memory at the beginning of the visible video memory when loading, except for this small piece of video memory, no data will be written to other addresses in the visible video memory; the graphics card firmware and the graphics card driver pre-agree on a video memory buffer in the visible video memory to store the graphics card firmware running information, and keep a sufficient safety distance from the address range of the above-mentioned small piece of video memory to ensure that the pre-agreement video memory buffer will not be modified by the operating system when loading, so outputting the graphics card firmware running information to the visible video memory can ensure that the graphics card firmware running information is complete and not lost;

[0056] The present invention does not rely on the BIOS or UEFI firmware of the hardware platform, and the debugging interface of the hardware platform, and only relies on the graphics card firmware and the graphics card driver to ensure that the graphics card firmware operation information is saved in the form of an operating system log file; because the graphics card firmware cannot be debugged in a single step, the debugging of the graphics card firmware is heavily dependent on the graphics card firmware operation information. This reliable graphics card firmware operation information acquisition method is very beneficial to the debugging of the graphics card firmware and the troubleshooting of hardware faults, and is of great significance to the development of graphics card firmware, the adaptation of the hardware platform and the identification of graphics card hardware faults. BRIEF DESCRIPTION OF THE DRAWINGS

[0057] Figure 1 is a flow chart of a method for storing graphics card firmware operation information provided by an embodiment of the present invention;

[0058] Figure 2 The present invention is a flowchart of a video memory buffer writing step in a method for storing video card firmware operation information provided by an embodiment of the present invention. DETAILED DESCRIPTION

[0059] In order to make the purpose, technical solution and advantages of the present invention more clearly understood, the present invention is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present invention and are not intended to limit the present invention.

[0060] like Figure 1 As shown, this embodiment provides a method for saving graphics card firmware running information, which is used in the graphics card firmware transmission step and the graphics card driver, and includes the following steps:

[0061] (1) Video memory buffer writing steps:

[0062] When the graphics card firmware is executed, the graphics card firmware operation information is written into a pre-agreed graphics memory buffer;

[0063] like Figure 2 As shown, this step includes the following sub-steps:

[0064] 1) Main memory buffer writing sub-step:

[0065] The graphics card firmware contains a pre-set initialization flag. If the video memory controller initialization is not completed, the value of the flag is false; otherwise, the value is true.

[0066] When the graphics card firmware is executed, the initialization flag is checked. If its value is negative, each piece of graphics card firmware operation information generated is saved in a pre-allocated main memory buffer in the order of its generation time, until its value becomes true, and sub-step 2) is executed;

[0067] 2) First save sub-step:

[0068] It can be seen that the size of the video memory is generally 256MB. The storage location corresponding to the offset address of 0B in the video memory is usually needed to store display buffer data and cannot be used as the storage location for graphics card firmware running information. Therefore, the storage location corresponding to the offset address of 128MB in the visible video memory is selected as the pre-agreed video memory buffer, so that a maximum of 128MB of graphics card firmware running information can be stored.

[0069] Write the identification code pre-agreed by the graphics card firmware and the graphics card driver: 0x55aa5a5a from the start address of the pre-agreed graphics memory buffer; then write the identification information, including the graphics card firmware type and version information, the offset value and the number of bytes, where the value of the number of bytes is 0; then copy the graphics card firmware running information in the pre-assigned main memory buffer area to the position corresponding to the offset value in the pre-agreed graphics memory buffer area, and update the value of the number of bytes; then release the storage space in the pre-assigned main memory buffer area; wherein the bit width of the graphics card firmware type and version information is 32 bits, and the bit width of the offset value and the number of bytes are both 32 bits;

[0070] The identification code is used to identify whether the graphics card firmware operation information exists in the pre-agreed graphics memory buffer;

[0071] The offset value is the number of bytes offset backward from the pre-agreed start address of the video memory buffer;

[0072] The number of bytes is the total number of bytes of graphics card firmware operation information stored in the pre-agreed video memory buffer;

[0073] Because data in the visible video memory can be read and written only after the video memory controller is initialized, this embodiment saves the graphics card firmware operation information before the video memory controller is initialized in a pre-allocated main memory cache area; after the video memory controller is initialized, the graphics card firmware operation information in the pre-allocated main memory cache area is copied to the pre-agreed video memory buffer area.

[0074] 3) Second save sub-step:

[0075] For the graphics card firmware operation information generated after the video memory controller is initialized, write it in sequence starting from the start position of the blank storage position of the pre-agreed video memory buffer in the order of its generation, and update the value of the number of bytes;

[0076] After the pre-agreed video memory buffer is full, a storage mode of discarding newly generated graphics firmware operation information can be adopted, or a storage mode of overwriting the oldest graphics firmware operation information with newly generated graphics firmware operation information can be adopted; no matter which storage mode is adopted, the values ​​of the offset and the number of bytes need to be updated.

[0077] The graphics card firmware runs in the main memory, and the graphics card firmware running information generated during the running is saved in the main memory; the operating system will ignore the data in the main memory when loading, and the data generated when the operating system is loaded may overwrite the data in the main memory, so the graphics card firmware running information in the main memory needs to be output and saved; because both the graphics card firmware and the graphics card driver can access the visible video memory, and the operating system may only access a small piece of video memory at the beginning of the visible video memory when loading, except for this small piece of video memory, no data will be written to other addresses in the visible video memory; the graphics card firmware and the graphics card driver pre-agree on the video memory buffer in the visible video memory to store the graphics card firmware running information, and keep a sufficient safety distance from the address range of the above-mentioned small piece of video memory to ensure that the pre-agreement video memory buffer will not be modified by the operating system when loading, so outputting the graphics card firmware running information to the visible video memory can ensure that the graphics card firmware running information is complete and not lost;

[0078] (2) Video memory buffer reading steps:

[0079] When the graphics card driver is loaded, the graphics card firmware operation information is identified and read from the pre-agreed graphics memory buffer;

[0080] The specific process is: reading the identification code in the pre-agreed video memory buffer; and reading the graphics card firmware type and version information, offset value and number of bytes stored after the identification code;

[0081] (3) Steps to save graphics card firmware operation information:

[0082] Save the graphics card firmware operation information as an operating system log file;

[0083] The specific process is: read out all the graphics card firmware running information according to the offset value and the number of bytes, save it together with the version information as an operating system log file, and save it to the system's log directory; the operating system log file is named according to the graphics card firmware type; the operating system log file of the VBIOS firmware is named vbios.log, and the operating system log file of the UEFI GOP firmware is named gop.log.

[0084] The operation in the video memory buffer writing step is included in the graphics card firmware transmission step; the operations in the video memory buffer reading step and the graphics card firmware operation information saving step are both included in the graphics card driver;

[0085] This embodiment outputs the graphics card firmware running information to the visible video memory. When the graphics card driver is loaded, the graphics card firmware running information in the visible video memory can be saved as an operating system log file, ensuring that the user obtains complete graphics card firmware running information through the operating system log file;

[0086] This embodiment does not rely on the BIOS or UEFI firmware of the hardware platform, and the debugging interface of the hardware platform. It only relies on the graphics card firmware and the graphics card driver to ensure that the graphics card firmware operation information is saved in the form of an operating system log file; because the graphics card firmware cannot be debugged step by step, the debugging of the graphics card firmware is heavily dependent on the graphics card firmware operation information. This reliable graphics card firmware operation information acquisition method is very beneficial to the debugging of the graphics card firmware and the troubleshooting of hardware faults. It is of great significance to the development of graphics card firmware, the adaptation of the hardware platform and the identification of graphics card hardware faults.

[0087] This embodiment provides a system for storing graphics card firmware operation information. The system is used in a graphics card firmware transmission module and a graphics card driver, and includes the following modules:

[0088] Pre-agreed video memory buffer write module:

[0089] When the graphics card firmware is executed, the graphics card firmware operation information is written into a pre-agreed graphics memory buffer;

[0090] Includes the following submodules:

[0091] Pre-allocated main memory buffer area write submodule:

[0092] The graphics card firmware contains a pre-set initialization flag. If the video memory controller initialization is not completed, the value of the flag is false; otherwise, the value is true.

[0093] When the graphics card firmware is executed, the initialization flag is checked. If its value is negative, each piece of graphics card firmware operation information generated is saved in a pre-allocated main memory buffer in the order of its generation time, until its value becomes true, and the operation in the first saving submodule is executed;

[0094] Save the submodule for the first time:

[0095] Writing a pre-agreed identification code from the pre-agreed start address of the video memory buffer; then writing identification information, including the graphics card firmware type and version information, offset value and byte number, where the value of the byte number is 0; then copying the graphics card firmware running information in the pre-allocated main memory buffer area to the position corresponding to the offset value in the pre-agreed video memory buffer, and updating the value of the byte number;

[0096] The identification code is used to identify whether the graphics card firmware operation information exists in the pre-agreed graphics memory buffer;

[0097] The offset value is the number of bytes offset backward from the pre-agreed start address of the video memory buffer;

[0098] The number of bytes is the total number of bytes of graphics card firmware operation information stored in the pre-agreed video memory buffer;

[0099] Save the submodule a second time:

[0100] For the graphics card firmware operation information generated after the video memory controller is initialized, write it in sequence starting from the start position of the blank storage position of the pre-agreed video memory buffer in the order of its generation, and update the value of the number of bytes;

[0101] After the pre-agreed video memory buffer is full, a storage mode of discarding newly generated graphics firmware operation information can be adopted, or a storage mode of overwriting the oldest graphics firmware operation information with newly generated graphics firmware operation information can be adopted; no matter which storage mode is adopted, the values ​​of the offset and the number of bytes need to be updated.

[0102] Pre-agreed video memory buffer reading module:

[0103] When the graphics card driver is loaded, the graphics card firmware operation information is identified and read from the pre-agreed graphics memory buffer;

[0104] The specific operation is: reading the identification code in the pre-agreed video memory buffer; and reading the graphics card firmware type and version information, offset value and number of bytes stored after the identification code;

[0105] Graphics card firmware operation information storage module:

[0106] Save the graphics card firmware operation information as an operating system log file;

[0107] The specific operation is: read out all the graphics card firmware running information according to the offset value and the number of bytes, save it together with the version information as an operating system log file, and save it to the system log directory; the operating system log file is named according to the graphics card firmware type;

[0108] The operations in the video memory buffer writing module are included in the transmission module of the graphics card firmware; the operations in the video memory buffer reading module and the graphics card firmware running information saving module are both included in the graphics card driver.

[0109] It will be easily understood by those skilled in the art that the above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions and improvements made within the spirit and principles of the present invention should be included in the protection scope of the present invention.

Claims

1. A method for storing graphics card firmware operation information, the method is used in the graphics card firmware transmission step and the graphics card driver, characterized in that: The following steps are involved: (1) Video memory buffer writing steps: When the graphics card firmware is executed, the graphics card firmware operation information is written into a pre-agreed graphics memory buffer, and the pre-agreed graphics memory buffer will not be modified when the operating system is loaded; (2) Video memory buffer reading steps: When the graphics card driver is loaded, the graphics card firmware operation information is identified and read from the graphics memory buffer; (3) Steps to save graphics card firmware operation information: Saving the graphics card firmware operation information as an operating system log file; The operation in the video memory buffer writing step is included in the graphics card firmware transfer step; The operations in the video memory buffer reading step and the graphics card firmware operation information saving step are both included in the graphics card driver.

2. The method for storing graphics card firmware operation information according to claim 1, characterized in that: The step of writing into the video memory buffer comprises the following sub-steps: (1) Main memory buffer writing sub-steps: When the graphics card firmware is executed, the graphics card firmware operation information generated before the graphics memory controller is initialized is stored in a pre-allocated main memory buffer area; (2) First save sub-step: After the video memory controller is initialized, a pre-agreed identification code is written starting from the starting address of the video memory buffer; then identification information is written, including the type and version information of the graphics card firmware, the offset value and the number of bytes, where the value of the number of bytes is 0; then the graphics card firmware running information in the main memory cache area is copied to the position corresponding to the offset value in the video memory buffer, and the value of the number of bytes is updated; The identification code is used to identify whether the graphics card firmware running information exists in the graphics memory buffer; The offset value is the number of bytes offset backward from the start address of the video memory buffer; The number of bytes is the total number of bytes of graphics card firmware operation information stored in the graphics memory buffer; (3) Second saving sub-step: The graphics card firmware operation information generated after the video memory controller is initialized is written in sequence starting from the start position of the blank storage position of the video memory buffer in the order of its generation, and the value of the number of bytes is updated.

3. The method for storing graphics card firmware operation information according to claim 1, characterized in that: In the video memory buffer writing step, after the video memory buffer is full, a storage mode of discarding newly generated graphics card firmware operation information is adopted, or a storage mode of overwriting the oldest graphics card firmware operation information with newly generated graphics card firmware operation information is adopted.

4. The method for storing graphics card firmware operation information according to claim 2, wherein: The process of the video memory buffer reading step is: reading the identification code in the video memory buffer; and reading the graphics card firmware type and version information, offset value and number of bytes stored after the identification code; The process of the step of saving the graphics card firmware operation information is as follows: reading out all the graphics card firmware operation information according to the offset value and the number of bytes, saving it together with the version information as an operating system log file, and saving it in the system log directory; The operating system log file is named according to the graphics card firmware type.

5. The method for storing graphics card firmware operation information according to claim 2, wherein: The graphics card firmware includes a preset initialization flag. If the initialization of the video memory controller is not completed, the value of the flag is no, and the main memory buffer writing sub-step is executed; otherwise, the value is true, and the first saving sub-step is executed.

6. A system for storing graphics card firmware operation information, the system is used in a transmission module of graphics card firmware and a graphics card driver, characterized in that: Includes the following modules: Video memory buffer write module: Used to write the graphics card firmware operation information into a pre-agreed graphics memory buffer when the graphics card firmware is executed, and the pre-agreed graphics memory buffer will not be modified when the operating system is loaded; Video memory buffer reading module: Used to identify and read graphics card firmware running information from the graphics memory buffer when the graphics card driver is loaded; Graphics card firmware operation information storage module: Used to save the graphics card firmware running information as an operating system log file; The operation in the video memory buffer writing module is included in the transfer module of the graphics card firmware; The operations in the video memory buffer reading module and the graphics card firmware operation information saving module are all included in the graphics card driver.

7. The system for storing graphics card firmware operation information according to claim 6, characterized in that: The video memory buffer write module Includes the following submodules: Main memory buffer write submodule: When the graphics card firmware is executed, the graphics card firmware operation information generated before the graphics card memory controller is initialized is stored in a pre-allocated main memory buffer area; Save the submodule for the first time: Used to write a pre-agreed identification code from the start address of the video memory buffer after the video memory controller is initialized; then write identification information, including the type and version information of the graphics card firmware, the offset value and the number of bytes, where the value of the number of bytes is 0; then copy the graphics card firmware running information in the main memory cache area to the position corresponding to the offset value in the video memory buffer, and update the value of the number of bytes; The identification code is used to identify whether the graphics card firmware running information exists in the graphics memory buffer; The offset value is the number of bytes offset backward from the start address of the video memory buffer; The number of bytes is the total number of bytes of graphics card firmware operation information stored in the graphics memory buffer; Save the submodule for the first time: The method is used to write the graphics card firmware running information generated after the video memory controller is initialized, starting from the starting position of the blank storage position of the video memory buffer in sequence according to the time sequence of its generation, and update the value of the number of bytes.

8. The system for storing graphics card firmware operation information according to claim 6, characterized in that: In the video memory buffer writing module, after the video memory buffer is full, a storage mode of discarding newly generated graphics card firmware operation information is adopted, or a storage mode of overwriting the oldest graphics card firmware operation information with newly generated graphics card firmware operation information is adopted.

9. The system for storing graphics card firmware operation information according to claim 7, characterized in that: The specific operations in the video memory buffer reading module are: reading the identification code in the video memory buffer; and reading the graphics card firmware type and version information, offset value and number of bytes stored after the identification code; The specific operation of the graphics card firmware operation information saving module is: reading all the graphics card firmware operation information according to the offset value and the number of bytes, saving it together with the version information as an operating system log file, and saving it to the system log directory; The operating system log file is named according to the graphics card firmware type.

10. The system for storing graphics card firmware operation information according to claim 7, wherein: The graphics card firmware includes a preset initialization flag. If the initialization of the video memory controller is not completed, the value of the flag is no, and the operation in the main memory buffer writing submodule is executed; otherwise, the value is true, and the operation in the first saving submodule is executed.

Citation Information

Patent Citations

  • Method for refreshing BIOS by display card in Linux system

    CN107766072A

  • Cross-platform video card firmware translation execution method, device, apparatus and readable medium

    CN109471668A