CN111930595B - Display card drive verification method, device, terminal and medium - Google Patents

Display card drive verification method, device, terminal and medium Download PDF

Info

Publication number
CN111930595B
CN111930595B CN202010752108.1A CN202010752108A CN111930595B CN 111930595 B CN111930595 B CN 111930595B CN 202010752108 A CN202010752108 A CN 202010752108A CN 111930595 B CN111930595 B CN 111930595B
Authority
CN
China
Prior art keywords
display card
driver
kernel
drive
core
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
CN202010752108.1A
Other languages
Chinese (zh)
Other versions
CN111930595A (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.)
Changsha Jingmei Integrated Circuit Design Co ltd
Changsha Jingjia Microelectronics Co ltd
Original Assignee
Changsha Jingmei Integrated Circuit Design Co ltd
Changsha Jingjia Microelectronics 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 Changsha Jingmei Integrated Circuit Design Co ltd, Changsha Jingjia Microelectronics Co ltd filed Critical Changsha Jingmei Integrated Circuit Design Co ltd
Priority to CN202010752108.1A priority Critical patent/CN111930595B/en
Priority to PCT/CN2020/118630 priority patent/WO2022021596A1/en
Publication of CN111930595A publication Critical patent/CN111930595A/en
Application granted granted Critical
Publication of CN111930595B publication Critical patent/CN111930595B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3051Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/0757Error or fault detection not based on redundancy by exceeding limits by exceeding a time limit, i.e. time-out, e.g. watchdogs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/102Program control for peripheral devices where the programme performs an interfacing function, e.g. device driver

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computing Systems (AREA)
  • Control Of Indicators Other Than Cathode Ray Tubes (AREA)
  • Storage Device Security (AREA)

Abstract

The embodiment of the application provides a display card drive verification method, a display card drive verification device, a display card drive verification terminal and a display card drive verification medium, relates to computer technology, and is used for solving the problem that an in-core drive or an out-core drive of a display card in related technologies is easy to forge or tamper. The method comprises the following steps: hardware information of the display card is read correctly in the display card kernel driver, and when the display card kernel driver is matched with the read display card firmware information, a handshake channel between the display card kernel driver and the display card kernel external driver is established; when the display card kernel external drive is wrong according to the inspection data sent by the display card kernel internal drive and the inspection result determined by the preset inspection formula, and when the time-out times of the display card kernel external drive returning the inspection result exceed the set times, the handshake channel of the display card kernel internal drive and the display card kernel external drive is closed, the display card kernel external drive is determined to be abnormal, and the display card drive is controlled to finish running.

Description

Display card drive verification method, device, terminal and medium
Technical Field
The present application relates to computer technologies, and in particular, to a method, an apparatus, a terminal, and a medium for verifying a driver of a graphics card.
Background
The driver (hereinafter, simply referred to as a driver) has a function of completing data transfer between the computer operating system and the hardware device, and is a bridge between the hardware device and the operating system. The interface equivalent to hardware is driven, and the operation system can only control the work of the hardware equipment through the interface; if the driver of a device is not properly installed, the device will not function properly. Therefore, safety of driving is very important.
In the linux operating system, the drivers of the graphics card include an in-core driver and an out-core driver. In the research process, the inventor finds that the in-core drive or the out-core drive of the display card is easy to forge or tamper, and is not beneficial to the safety of terminals such as electronic equipment.
Disclosure of Invention
The embodiment of the application provides a display card drive verification method, a display card drive verification device, a display card drive verification terminal and a display card drive verification medium, which are used for solving the problem that an in-core drive or an out-core drive of a display card in the related art is very easy to forge or tamper.
A first aspect of an embodiment of the present application provides a method for verifying a display card driver, where the display card driver includes a display card kernel internal driver and a display card kernel external driver; the method comprises the following steps:
hardware information of the display card is read correctly in the display card kernel driver, and when the display card kernel driver is matched with the read display card firmware information, a handshake channel between the display card kernel driver and the display card kernel external driver is established;
when the display card kernel external drive is wrong according to the inspection data sent by the display card kernel internal drive and the inspection result determined by the preset inspection formula, and when the time-out times of the display card kernel external drive returning the inspection result exceed the set times, the handshake channel of the display card kernel internal drive and the display card kernel external drive is closed, the display card kernel external drive is determined to be abnormal, and the display card drive is controlled to finish running.
A second aspect of the embodiments of the present application provides a display card driving apparatus, where the display card driving apparatus includes a display card kernel internal driver and a display card kernel external driver; the device comprises:
the first processing unit is used for reading the hardware information of the display card in the display card kernel driver correctly and creating a handshake channel between the display card kernel driver and the display card kernel external driver when the display card kernel driver is matched with the read display card firmware information;
and the second processing unit is used for closing the handshake channel of the display card kernel internal drive and the display card kernel external drive when the display card kernel external drive determines that the checking result determined by the checking data sent by the display card kernel internal drive and the preset checking formula is wrong and the overtime frequency of the checking result returned by the display card kernel external drive exceeds the set frequency, determining that the display card kernel external drive is abnormal and controlling the display card drive to finish running.
A third aspect of the embodiments of the present application provides a terminal, including:
a memory;
a processor; and
a computer program;
wherein the computer program is stored in the memory and configured to be executed by the processor to implement the method as described in the preceding.
A fourth aspect of embodiments of the present application provides a computer-readable storage medium having a computer program stored thereon; which is executed by a processor to implement the method as described in the foregoing.
The embodiment provides a display card drive verification method, a display card drive verification device, a display card drive verification terminal and a display card drive verification medium.
Drawings
The accompanying drawings, which are included to provide a further understanding of the application and are incorporated in and constitute a part of this application, illustrate embodiment(s) of the application and together with the description serve to explain the application and not to limit the application. In the drawings:
FIG. 1 is a schematic flow chart of a method provided in an exemplary embodiment;
FIG. 2 is a schematic flow chart of a method provided in another exemplary embodiment;
FIG. 3 is a flowchart of signing an intra-core driver provided in an exemplary embodiment;
FIG. 4 is a schematic flowchart illustrating a process for detecting drivers within a graphics card core according to an exemplary embodiment;
FIG. 5 is a flowchart illustrating a process for checking handshaking between an intra-core driver and an extra-core driver of a graphics card according to an exemplary embodiment;
fig. 6 is a block diagram of an apparatus according to an exemplary embodiment.
Detailed Description
In order to make the technical solutions and advantages of the embodiments of the present application more apparent, the following further detailed description of the exemplary embodiments of the present application with reference to the accompanying drawings makes it clear that the described embodiments are only a part of the embodiments of the present application, and are not exhaustive of all embodiments. It should be noted that the embodiments and features of the embodiments in the present application may be combined with each other without conflict.
Under the linux operating system, drivers of the graphics card (hereinafter, referred to as graphics card drivers) include an in-core driver and an out-core driver. In the related art, the in-core driver or the out-core driver of the graphics card is very easy to forge or tamper due to the defects of the architectures of the in-core driver and the out-core driver of the graphics card, which is not favorable for the security of the terminal.
In order to overcome the above technical problems, the present embodiment provides a method, an apparatus, a terminal and a medium for verifying a display card driver, which can confirm the validity of the display card driver through the uninterrupted handshake communication when the display card kernel driver and the kernel driver operate, thereby facilitating to find the abnormality of the display card driver in time and preventing the display card driver from being tampered or forged.
The functions and implementation processes of the display card driver verification method provided in this embodiment are illustrated in the following with reference to the accompanying drawings.
FIG. 1 is a flow chart illustrating a method provided by an exemplary embodiment.
As shown in fig. 1, in the method for verifying a driver of a graphics card provided in this embodiment, the driver of the graphics card includes an internal driver of the graphics card and an external driver of the graphics card, and the method includes:
s101, hardware information of the display card is read correctly in the display card kernel driver, and a handshake channel between the display card kernel driver and the display card kernel external driver is established when the display card kernel driver is matched with the read display card firmware information;
s102, when the display card out-of-core driver has an error according to the inspection data sent by the display card in-core driver and the inspection result determined by the preset inspection formula, and when the overtime frequency of the display card out-of-core driver returning the inspection result exceeds the set frequency, closing a handshake channel between the display card in-core driver and the display card out-of-core driver, determining that the display card out-of-core driver is abnormal, and controlling the display card driver to finish the operation.
In step S101, when the driver in the graphics card kernel runs, the hardware information of the graphics card is read from the driver in the graphics card kernel, and the hardware information of the graphics card is obtained from the firmware of the graphics card or other locations; and when the hardware information read from the display card kernel driver is the same as the hardware information acquired from the display card, determining that the hardware information read from the display card in the display card kernel driver is correct. And when the hardware information read from the display card kernel driver is different from the hardware information acquired from the display card, determining that the display card hardware information is abnormal, and controlling the display card driver to finish the operation. Wherein, the hardware information of the display card comprises at least one of the following: device ID, graphics card model, manufacturer, etc. Of course, in other examples, the hardware information read from the driver within the graphics card core may also be compared with the hardware information of the graphics card obtained from a location such as a memory of the electronic device.
After determining that the hardware information of the display card read in the display card kernel driver is correct, reading the display card firmware information, and judging whether the display card kernel driver is matched with the display card firmware information; and when the read display card firmware information is not matched with the display card kernel internal drive, determining that the display card kernel external drive is abnormal, and controlling the display card drive to finish running. The display card firmware information may include a firmware version, and if the firmware version is a version supported by the display card extranuclear driver, it is determined that the display card extranuclear driver matches with the display card firmware information. And when the display card kernel internal driver is determined to be matched with the display card firmware information, establishing a handshake channel between the display card kernel internal driver and the display card kernel external driver. The display card kernel internal driver and the display card kernel external driver can transmit data through the handshake channel. Illustratively, the graphics card kernel driver may send the verification data to the graphics card kernel out-driver; the display card kernel external driver can return a test result obtained according to the test data to the display card kernel internal driver.
And after the handshake channel is established, clearing a counter for counting the time-out times of handshake between the display card kernel internal drive and the display card kernel external drive. After the handshake channel is established, a timer with the timing time as the set time is established. After the display card kernel driver sends the inspection data, the timer starts timing, and the counter is increased by 1 every time the timer finishes timing until the display card kernel driver receives the inspection result returned by the display card kernel driver.
The implementation process of the display card kernel internal drive and the display card kernel external drive handshake can be as follows: the display card kernel internal driver can send the inspection data to the display card kernel external driver through the handshake channel; after receiving the inspection data, the display card kernel external driver calculates the inspection data through a preset inspection formula to obtain an inspection result, and sends the obtained inspection result to the display card kernel internal driver.
And the video card kernel driver judges whether the received test result is correct. The display card kernel internal driver can process the inspection data to obtain a corresponding result, when the display card kernel internal driver can process the corresponding result obtained by the processing of the display card kernel internal driver and the inspection result returned by the display card kernel external driver are the same or matched, the fact that the inspection result returned by the display card kernel external driver is received by the display card kernel internal driver is correct is determined, otherwise, the fact that the inspection result returned by the display card kernel external driver is received by the display card kernel internal driver is incorrect is determined.
Exemplarily, when the display card intra-core driver can also determine a corresponding result according to a preset test formula, and the display card intra-core driver can match the corresponding result obtained by processing with the test result returned by the display card extra-core driver, it is determined that the test result returned by the display card extra-core driver received by the display card intra-core driver is correct; and when the corresponding result obtained by processing the display card kernel internal driver by the display card kernel internal driver is not matched with the inspection result returned by the display card kernel external driver, determining that the inspection result returned by the display card kernel internal driver to the display card kernel external driver is incorrect. In a specific implementation, the preset check formula may be a hash function or other common formula, and the specific content of the check formula is not limited in this embodiment, and may be set according to actual needs. The check data written by the display card kernel internal driver to the display card kernel external driver can be regular data; for example, the check data written by the driver in the graphics core is incremented every time, or the data written by the driver in the graphics core with other rules may be specifically set according to actual needs.
And when the test result determined by the display card kernel external drive according to the test data sent by the display card kernel internal drive and the preset test formula is correct, resetting the counter to zero and starting the next round of counting.
When the fact that the detection result returned by the display card kernel internal drive is incorrect after the display card kernel internal drive receives the detection result returned by the display card kernel external drive is determined, the overtime frequency of the detection result returned by the display card kernel external drive is obtained, when the overtime frequency exceeds the set frequency, a handshake channel between the display card kernel internal drive and the display card kernel external drive is closed, the display card kernel external drive is determined to be abnormal, and the display card drive is controlled to finish operation. And when the time difference between the time for the display card kernel external driver to return the inspection result and the time for the display card kernel internal driver to send the inspection data reaches the set time, determining that the time for the display card kernel external driver to return the inspection result is overtime.
And when the overtime times of the display card core external drive returning the test result do not exceed the set times, resetting the counter and starting the counting of the next round.
In the above example, the setting parameters such as the setting time and the setting times can be set according to actual needs, and the embodiment is not particularly limited here.
Optionally, before the display card core internal driver writes the check data into the display card core external driver, that is, before the display card core external driver reads the check data written by the display card core internal driver, the graphics desktop needs to be started, the display card core external driver is loaded, and whether the handshake channel exists is determined. Illustratively, the display card kernel internal driver can write test data into the display card kernel external driver through a handshake channel, and when the display card kernel internal driver receives feedback data obtained by the display card kernel external driver according to the test data, the handshake channel between the display card kernel internal driver and the display card kernel external driver is determined to exist; otherwise, determining that the handshake channel of the display card kernel internal drive and the display card kernel external drive does not exist.
And when the handshake channel is confirmed to exist, the display card kernel external driver reads the check data written by the display card kernel internal driver. And when confirming that the handshake channel does not exist, determining that the handshake channel of the display card kernel internal drive and the display card kernel external drive is abnormal, terminating the communication between the display card kernel internal drive and the display card kernel external drive, and controlling the display card drive to finish the operation.
The display card drive verification method provided by the embodiment can confirm the effectiveness of the display card drive through the uninterrupted handshake communication when the display card kernel driver and the kernel driver run, thereby being beneficial to finding the abnormity of the display card drive in time and preventing the display card drive from being falsified or forged.
Fig. 2 is a schematic flow chart of a method according to another exemplary embodiment.
In one possible implementation manner, the method further includes a step of determining the validity of the driver in the display card kernel, as shown in fig. 2, specifically including:
s201, when the driver in the display card core is loaded, detecting whether a key signature of the driver in the display card core is valid;
s202, loading the kernel driver of the display card when the key signature of the kernel driver of the display card is valid;
and S203, when the key signature of the driver in the display card core is invalid, determining that the driver in the display card core is abnormal, and controlling the display card driver to finish running.
In step S201, the key signature is obtained by signing the video card kernel driver according to the acquired signature key in advance, for example. Specifically, a signature key for downloading the driver in the graphics core is obtained from a manufacturer of the operating system, the driver in the graphics core is signed according to the obtained signature key, and the signed driver file in the graphics core is issued, so that the manufacturer of the operating system can obtain the signed driver file.
And acquiring the key signature of the driver in the display card core, and judging whether the key signature of the driver in the display card core is valid. Illustratively, the operating system decrypts the acquired key signature according to a signature key driven in the graphics card kernel; if the decryption is successful, the key signature of the display card kernel driver is confirmed to be valid, and the operating system can load the display card kernel driver; and if the decryption is unsuccessful, confirming that the key signature of the display card kernel driver is invalid, executing step S202, confirming that the current display card kernel driver is an illegal driver, refusing to load the current display card kernel driver by the operating system, controlling the display card driver to finish running, and executing step S203.
In this example, when the kernel of the operating system loads the kernel driver of the graphics card, the validity of the kernel driver is detected through the key signature, and when the kernel driver of the graphics card is determined to be an illegal driver, the kernel driver of the graphics card is refused to be loaded, so that the abnormity of the kernel driver of the graphics card can be found in time, and the kernel driver of the graphics card is prevented from being tampered or forged.
FIG. 3 is a flowchart of signing an intra-core driver provided in an exemplary embodiment; FIG. 4 is a schematic flowchart illustrating a process for detecting drivers within a graphics card core according to an exemplary embodiment; fig. 5 is a flowchart illustrating a process of checking a handshake between an intra-core driver and an out-core driver of a graphics card according to an exemplary embodiment.
The following describes an implementation process of the method provided in this embodiment with reference to fig. 3, fig. 4, and fig. 5.
As shown in fig. 3, the intra-core driver is signed; the method specifically comprises the following steps:
s301, obtaining a signature key driven in a display card core from an operating system manufacturer;
that is, a key file for the intra-core drive signature is obtained from an operating system manufacturer;
s302, signing the display card kernel driver by using the secret key;
namely, signing the drive file in the display card core through the acquired key file;
s303, issuing a display card kernel internal driver after signature;
that is, the signed graphics driver file in the kernel is provided to the operating system vendor.
As shown in fig. 4, when the display card intra-core driver is loaded, it is detected whether the display card intra-core driver is valid; the method specifically comprises the following steps:
s401, starting an operating system;
s402, detecting whether the signature driven in the display card core is valid;
if the result is valid, jumping to step S404; if not, jumping to step S403;
s403, prompting illegal driving, refusing loading and ending;
s404, loading the kernel driver of the display card.
As shown in fig. 5, the checking the handshake of the display card kernel internal driver and the display card kernel external driver may include:
s501, operating a display card kernel driver;
s502, reading hardware information of the display card;
specifically, the hardware information of the display card can be read from the kernel driver of the display card;
s503, judging whether the hardware information is correct or not;
if not, jumping to step S504; if the result is correct, jumping to step S505;
s504, prompting that the hardware information of the display card is abnormal and ending;
s505, reading the firmware information of the display card;
s506, judging whether the display card firmware information is matched;
if not, jumping to step S516;
s507, establishing a handshake channel between the display card kernel internal drive and the display card kernel external drive;
s508, clearing the overtime count;
specifically, the overtime count of the display card kernel internal drive and the display card kernel external drive is cleared;
s509, writing a string of regular data to the out-of-core drive;
specifically, triggering a display card kernel internal drive to write a string of regular data to a kernel external drive; this data will be received by step S523;
s510, creating a 30-second overtime timer;
s511, adding 1 to the overtime count;
specifically, the timer timeout operation of step S510 is triggered to be executed, and the "timeout count" set in step S508 is increased by 1;
s512, receiving data sent by a display card external driver;
specifically, triggering a display card kernel internal driver to receive data sent by a display card kernel external driver; i.e., the data transmitted in step S525;
s513, judging whether the data sent by the extra-core driver is correct or not;
that is, it is determined whether the data received in step S512 is correct;
if the result is correct, go to step S508; if not, jumping to step S514;
s514, judging whether the number of times of overtime counting is more than 5;
if the number of times is not up to 5, jumping to step S508; if the number of the steps reaches 5 times, jumping to the step S515;
s515, closing handshake channels of the display card kernel internal drive and the display card kernel external drive;
s516, the display card drives abnormally outside the kernel, and the response is stopped; and "ends".
The verification process further comprises:
s520, starting a graphic desktop;
s521, loading a display card kernel external driver;
s522, judging whether a handshake channel exists or not;
when the existence of the handshake channel is determined, jumping to step S523; jumping to step S526 when it is determined that the handshake channel does not exist;
s523, triggering the display card kernel external drive to read regular data of the display card kernel internal drive;
s524, triggering the display card kernel external driver to calculate the return data according to a set formula;
s525, triggering the display card kernel external drive to send return data to the display card kernel internal drive;
and S526, confirming that the handshake channels of the display card kernel internal drive and the display card kernel external drive are abnormal, terminating the communication, and ending.
By adopting the method provided by the example, when the kernel of the operating system loads the kernel driver of the display card, the validity of the kernel driver is detected through the key signature, and when the kernel driver of the display card is determined to be illegal driver, the kernel driver of the display card is refused to be loaded, so that the abnormity of the display card driver can be found in time, and the method is favorable for preventing the display card driver from being tampered or forged; the effectiveness of the display card driver can be confirmed through uninterrupted handshake communication when the display card kernel internal driver and the display card kernel external driver operate, so that the abnormity of the display card driver can be found in time, and the display card driver can be further prevented from being tampered or forged.
The present embodiment further provides a display card driving apparatus, which is an embodiment of a product corresponding to the foregoing method embodiment, and the functions and implementation processes of the apparatus may be the same as or similar to those of the foregoing embodiment, and are not described herein again.
Fig. 6 is a block diagram of an apparatus according to an exemplary embodiment.
As shown in fig. 6, the present embodiment provides a display card driving apparatus, where the display card driving apparatus includes a display card kernel internal driver and a display card kernel external driver; the device comprises:
the first processing unit 61 is configured to read that hardware information of the graphics card is correct in the graphics card kernel driver, and create a handshake channel between the graphics card kernel driver and the graphics card kernel external driver when the graphics card kernel driver matches the read graphics card firmware information;
and the second processing unit 62 is configured to, when the inspection data sent by the display card core external driver according to the display card core internal driver and the inspection result determined by the preset inspection formula are incorrect, and when it is determined that the timeout times of the display card core external driver returning the inspection result exceed the set times, close the handshake channels of the display card core internal driver and the display card core external driver, determine that the display card core external driver is abnormal, and control the display card driver to end operation.
In one possible implementation, the first processing unit 61 is further configured to: and when the hardware information of the display card is read incorrectly in the display card kernel driver, determining that the hardware information of the display card is abnormal, and controlling the display card driver to finish running.
In one possible implementation, the first processing unit 61 is further configured to: and when the display card kernel internal drive is not matched with the read display card firmware information, determining that the display card kernel external drive is abnormal, and controlling the display card drive to finish running.
In one possible implementation, the second processing unit 62 is further configured to:
clearing a counter for counting the overtime times between the display card kernel internal drive and the display card kernel external drive;
when the display card kernel drives the write-check data to the outside of the display card kernel, a timer with the timing time as the set time is established;
after the display card kernel internal drive writes the inspection data to the display card kernel external drive and before the inspection result of the display card kernel external drive is not received, the timer triggers the counter to increase by one every time one round of timing is completed.
In one possible implementation, the second processing unit 62 is further configured to:
when the display card kernel external driver determines that the detection result is correct according to the detection data sent by the display card kernel internal driver and a preset detection formula, resetting the counter;
and resetting the counter when the detection result determined by the display card out-of-core driver according to the detection data sent by the display card in-core driver and a preset detection formula is wrong, and determining that the overtime times of the display card out-of-core driver returning the detection result do not exceed the set times.
In one possible implementation, the apparatus further includes a third processing unit, configured to:
judging whether a handshake channel of the display card kernel internal drive and the display card kernel external drive exists or not; and when the handshake channel does not exist, determining that the handshake channel of the display card kernel internal drive and the display card kernel external drive is abnormal, terminating the communication between the display card kernel internal drive and the display card kernel external drive, and controlling the display card drive to finish the operation.
In one possible implementation process, the method further includes a fourth processing unit, configured to:
when the driver in the display card core is loaded, detecting whether the key signature of the driver in the display card core is valid;
loading the driver in the display card core when the key signature of the driver in the display card core is valid;
and when the key signature of the driver in the display card core is invalid, determining that the driver in the display card core is abnormal, and controlling the display card driver to finish running.
The display card driving device provided by the embodiment can confirm the effectiveness of the display card drive through the uninterrupted handshake communication when the display card kernel internal drive and the kernel external drive run, thereby being beneficial to timely finding the abnormity of the display card drive and being beneficial to preventing the display card drive from being falsified or forged. When the kernel of the operating system loads the kernel driver of the display card, the validity of the kernel driver is detected through the key signature, and the kernel driver of the display card is refused to be loaded when the kernel driver of the display card is determined to be illegal driver, so that the abnormity of the display card driver can be found in time, and the kernel driver of the display card is further favorable for preventing the display card driver from being falsified or forged.
The present embodiment provides a terminal device, including:
a memory;
a processor; and
a computer program;
wherein the computer program is stored in the memory and configured to be executed by the processor to implement the respective method.
The memory is used for storing a computer program, and the processor executes the computer program after receiving the execution instruction, and the method executed by the apparatus defined by the flow process disclosed in the foregoing corresponding embodiments can be applied to or implemented by the processor.
The Memory may comprise a Random Access Memory (RAM) and may also include a non-volatile Memory, such as at least one disk Memory. The memory can implement communication connection between the system network element and at least one other network element through at least one communication interface (which may be wired or wireless), and the internet, a wide area network, a local network, a metropolitan area network, and the like can be used.
The processor may be an integrated circuit chip having signal processing capabilities. In implementation, the steps of the method disclosed in the first embodiment may be implemented by hardware integrated logic circuits in a processor or instructions in the form of software. The Processor may be a general-purpose Processor, and includes a Central Processing Unit (CPU), a Network Processor (NP), and the like; but may also be a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), an off-the-shelf programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components. The corresponding methods, steps, and logic blocks disclosed in the embodiments of the present invention may be implemented or performed. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
The steps of the method disclosed in connection with the embodiments of the present invention may be directly implemented by a hardware decoding processor, or implemented by a combination of hardware and software elements in the decoding processor. The software elements may be located in ram, flash, rom, prom, or eprom, registers, among other storage media that are well known in the art. The storage medium is located in a memory, and a processor reads information in the memory and completes the steps of the method in combination with hardware of the processor.
The present embodiment provides a computer-readable storage medium having stored thereon a computer program; the computer program is executed by a processor in a corresponding method. For specific implementation, reference may be made to the method embodiments, which are not described herein again.
It should be noted that: unless specifically stated otherwise, the relative steps, numerical expressions, and values of the components and steps set forth in these embodiments do not limit the scope of the present invention. In all examples shown and described herein, unless otherwise specified, any particular value should be construed as merely illustrative, and not restrictive, and thus other examples of example embodiments may have different values.
The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a unit, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
As will be appreciated by one skilled in the art, embodiments of the present application may be provided as a method, system, or computer program product. Accordingly, the present application may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present application may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
The present application is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the application. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
While the preferred embodiments of the present application have been described, additional variations and modifications in those embodiments may occur to those skilled in the art once they learn of the basic inventive concepts. Therefore, it is intended that the appended claims be interpreted as including preferred embodiments and all alterations and modifications as fall within the scope of the application.
It will be apparent to those skilled in the art that various changes and modifications may be made in the present application without departing from the spirit and scope of the application. Thus, if such modifications and variations of the present application fall within the scope of the claims of the present application and their equivalents, the present application is intended to include such modifications and variations as well.

Claims (14)

1. A display card drive verification method is provided, wherein the display card drive comprises a display card kernel internal drive and a display card kernel external drive, and the method comprises the following steps:
hardware information of the display card is read correctly in the display card kernel driver, and when the display card kernel driver is matched with the read display card firmware information, a handshake channel between the display card kernel driver and the display card kernel external driver is established;
judging whether a handshake channel of the display card kernel internal drive and the display card kernel external drive exists or not; when the handshake channel does not exist, determining that the handshake channel of the display card kernel internal drive and the display card kernel external drive is abnormal, terminating the communication between the display card kernel internal drive and the display card kernel external drive, and controlling the display card kernel drive to finish the operation;
when the display card kernel external drive is wrong according to the inspection data sent by the display card kernel internal drive and the inspection result determined by the preset inspection formula, and when the time-out times of the display card kernel external drive returning the inspection result exceed the set times, the handshake channel of the display card kernel internal drive and the display card kernel external drive is closed, the display card kernel external drive is determined to be abnormal, and the display card drive is controlled to finish running.
2. The method of claim 1, further comprising: and when the hardware information of the display card is read incorrectly in the display card kernel driver, determining that the hardware information of the display card is abnormal, and controlling the display card driver to finish running.
3. The method of claim 1, further comprising: and when the display card kernel internal drive is not matched with the read display card firmware information, determining that the display card kernel external drive is abnormal, and controlling the display card drive to finish running.
4. The method of claim 1, wherein after the creating the handshake channel between the graphics kernel driver and the graphics kernel driver, further comprising:
clearing a counter for counting the overtime times of the returned test result of the display card extra-core driver;
the method further comprises the following steps:
when the display card kernel internal drive writes the inspection data to the display card kernel external drive, a timer with the timing time as the set time is established;
after the display card kernel internal drive writes the inspection data to the display card kernel external drive and before the inspection result of the display card kernel external drive is not received, the timer triggers the counter to increase by one every time one round of timing is completed.
5. The method of claim 1, further comprising:
when the display card out-of-core driver determines that the detection result is correct according to the detection data sent by the display card in-core driver and a preset detection formula, resetting the counter;
and resetting the counter when the checking result determined by the display card out-of-core driver according to the checking data sent by the display card in-core driver and a preset checking formula is wrong, and when the overtime frequency of the checking result returned by the display card out-of-core driver does not exceed the set frequency.
6. The method of claim 1, further comprising:
when the driver in the display card core is loaded, detecting whether a key signature of the driver in the display card core is valid; the key signature is obtained by signing the display card kernel internal drive according to the obtained signature key in advance;
loading the driver in the display card core when the key signature of the driver in the display card core is valid;
and when the key signature of the display card kernel driver fails, determining that the display card kernel driver is abnormal, and controlling the display card driver to finish running.
7. The utility model provides a display card drive arrangement, the display card drive includes the drive in the display card nuclear and the drive outside the display card nuclear, its characterized in that, the device includes:
the first processing unit is used for reading the hardware information of the display card in the display card kernel driver correctly and creating a handshake channel between the display card kernel driver and the display card kernel external driver when the display card kernel driver is matched with the read display card firmware information;
the second processing unit is used for closing a handshake channel between the display card kernel internal drive and the display card kernel external drive when the display card kernel external drive has an error according to the inspection data sent by the display card kernel internal drive and the inspection result determined by a preset inspection formula and when the overtime frequency of the display card kernel external drive returning the inspection result exceeds the set frequency, determining that the display card kernel external drive is abnormal and controlling the display card drive to finish the operation,
a third processing unit to:
judging whether a handshake channel of the display card kernel internal drive and the display card kernel external drive exists or not; and when the handshake channel does not exist, determining that the handshake channel of the display card kernel internal drive and the display card kernel external drive is abnormal, terminating the communication between the display card kernel internal drive and the display card kernel external drive, and controlling the display card drive to finish the operation.
8. The apparatus of claim 7, wherein the first processing unit is further configured to: and when the hardware information of the display card is read incorrectly in the display card kernel driver, determining that the hardware information of the display card is abnormal, and controlling the display card driver to finish running.
9. The apparatus of claim 7, wherein the first processing unit is further configured to: and when the display card kernel internal drive is not matched with the read display card firmware information, determining that the display card kernel external drive is abnormal, and controlling the display card drive to finish running.
10. The apparatus of claim 7, wherein the second processing unit is further configured to:
clearing a counter for counting the overtime times between the display card kernel internal drive and the display card kernel external drive;
when the display card kernel internal drive writes the inspection data to the display card kernel external drive, a timer with the timing time as the set time is established;
after the display card kernel internal drive writes the inspection data to the display card kernel external drive and before the inspection result of the display card kernel external drive is not received, the timer triggers the counter to increase by one every time one round of timing is completed.
11. The apparatus of claim 7, wherein the second processing unit is further configured to:
when the display card out-of-core driver determines that the detection result is correct according to the detection data sent by the display card in-core driver and a preset detection formula, resetting the counter;
and resetting the counter when the checking result determined by the display card out-of-core driver according to the checking data sent by the display card in-core driver and a preset checking formula is wrong, and when the overtime frequency of the checking result returned by the display card out-of-core driver does not exceed the set frequency.
12. The apparatus of claim 7, further comprising a fourth processing unit configured to:
when the driver in the display card core is loaded, detecting whether a key signature of the driver in the display card core is valid;
loading the driver in the display card core when the key signature of the driver in the display card core is valid;
and when the key signature of the display card kernel driver fails, determining that the display card kernel driver is abnormal, and controlling the display card driver to finish running.
13. A terminal, comprising:
a memory;
a processor; and
a computer program;
wherein the computer program is stored in the memory and configured to be executed by the processor to implement the method of any one of claims 1-6.
14. A computer-readable storage medium, having stored thereon a computer program; the computer program is executed by a processor to implement the method of any one of claims 1-6.
CN202010752108.1A 2020-07-30 2020-07-30 Display card drive verification method, device, terminal and medium Active CN111930595B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202010752108.1A CN111930595B (en) 2020-07-30 2020-07-30 Display card drive verification method, device, terminal and medium
PCT/CN2020/118630 WO2022021596A1 (en) 2020-07-30 2020-09-29 Display card driver verification method and device, terminal and medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010752108.1A CN111930595B (en) 2020-07-30 2020-07-30 Display card drive verification method, device, terminal and medium

Publications (2)

Publication Number Publication Date
CN111930595A CN111930595A (en) 2020-11-13
CN111930595B true CN111930595B (en) 2022-03-15

Family

ID=73314899

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010752108.1A Active CN111930595B (en) 2020-07-30 2020-07-30 Display card drive verification method, device, terminal and medium

Country Status (2)

Country Link
CN (1) CN111930595B (en)
WO (1) WO2022021596A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111930595B (en) * 2020-07-30 2022-03-15 长沙景嘉微电子股份有限公司 Display card drive verification method, device, terminal and medium

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE50307625D1 (en) * 2003-11-28 2007-08-16 Delphi Tech Inc Driver module and method for configuring a driver module
US8056093B1 (en) * 2006-12-07 2011-11-08 Nvidia Corporation Asynchronous kernel processing for a graphics processing system
CN101369244A (en) * 2007-08-14 2009-02-18 鸿富锦精密工业(深圳)有限公司 Graphic display card test method
CN105373747A (en) * 2015-12-09 2016-03-02 上海斐讯数据通信技术有限公司 File generation method, file verification method and systems for preventing system from being tampered
CN107342065B (en) * 2017-08-31 2020-07-10 惠科股份有限公司 Display device driving method, driving device and display device
CN107729069A (en) * 2017-10-12 2018-02-23 浪潮(北京)电子信息产业有限公司 A kind of method, apparatus of clean boot video card, computer-readable recording medium
CN108170441A (en) * 2017-12-25 2018-06-15 珠海市君天电子科技有限公司 Drive programe installation method, device, driver installation client and server
CN108958768A (en) * 2018-06-26 2018-12-07 浪潮(北京)电子信息产业有限公司 A kind of GPU firmware update, device, equipment and computer readable storage medium
CN109189638A (en) * 2018-08-20 2019-01-11 郑州云海信息技术有限公司 A kind of GPU driving detection method, device, terminal and storage medium
CN109299607A (en) * 2018-08-24 2019-02-01 珠海奔图电子有限公司 Driver safety detection method, device and image formation system
CN111352822A (en) * 2018-12-21 2020-06-30 神讯电脑(昆山)有限公司 Driver detection system and detection method thereof
CN112015476B (en) * 2019-05-31 2023-11-07 龙芯中科技术股份有限公司 Display card driving method and device, electronic equipment and storage medium
CN110472429A (en) * 2019-08-20 2019-11-19 闻泰通讯股份有限公司 Data verification method, device, electronic equipment and storage medium
CN111930595B (en) * 2020-07-30 2022-03-15 长沙景嘉微电子股份有限公司 Display card drive verification method, device, terminal and medium

Also Published As

Publication number Publication date
CN111930595A (en) 2020-11-13
WO2022021596A1 (en) 2022-02-03

Similar Documents

Publication Publication Date Title
TWI730993B (en) First communication device, communication method, and communication system
CN101681301B (en) Memory page size auto detection
JP2008131311A (en) Information processing apparatus and its control method, and program
CN109145590B (en) Function hook detection method, detection equipment and computer readable medium
CN111930595B (en) Display card drive verification method, device, terminal and medium
EP3076324A1 (en) Information processing apparatus and method of controlling the apparatus
CN108881132B (en) Application authorization method, client, server and computer readable medium
CN109074294A (en) Communication device and communication system
CN105893877B (en) Method for secure data reading and data processing system
CN117632166A (en) File burning method, device, equipment and storage medium
CN112166449A (en) Method of processing secure financial transactions using commercial off-the-shelf or internet-of-things devices
JP6094523B2 (en) Program rewriting method
CN107933499B (en) PEPS system-based key ID verification method and related device
US9449158B2 (en) Expiration time authentication system, expiration time authentication device, and expiration time authentication method for applications
US20200004608A1 (en) Information processing device and information processing method
JP6483461B2 (en) Management method, management program, management device, management system, and information processing method
US20190340112A1 (en) Test device, test method, and computer readable medium
US9304845B2 (en) Storage integrity validator
US20160283718A1 (en) Information processing device and information processing method
US11231878B2 (en) Content modification control
US10242183B2 (en) Method of executing a program by a processor and electronic entity comprising such a processor
US20200004706A1 (en) Information processing device and information processing method
JP2017091057A (en) Electronic control device and data rewrite system
US10193694B1 (en) Method and apparatus for securely configuring parameters of a system-on-a-chip (SOC)
CN112148514B (en) Watchdog resetting method and device, storage medium and electronic equipment

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