CN104317723B - Method and system for tracking running information of drive program - Google Patents

Method and system for tracking running information of drive program Download PDF

Info

Publication number
CN104317723B
CN104317723B CN201410647999.9A CN201410647999A CN104317723B CN 104317723 B CN104317723 B CN 104317723B CN 201410647999 A CN201410647999 A CN 201410647999A CN 104317723 B CN104317723 B CN 104317723B
Authority
CN
China
Prior art keywords
code
driver
operation information
file
llvm
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
CN201410647999.9A
Other languages
Chinese (zh)
Other versions
CN104317723A (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.)
Tsinghua University
Original Assignee
Tsinghua University
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 Tsinghua University filed Critical Tsinghua University
Priority to CN201410647999.9A priority Critical patent/CN104317723B/en
Publication of CN104317723A publication Critical patent/CN104317723A/en
Application granted granted Critical
Publication of CN104317723B publication Critical patent/CN104317723B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

The invention provides a method and a system for tracking the running information of a drive program. The method comprises obtaining the source codes of the drive program, compiling the source codes by use of an LLVM framework, inserting a first code for obtaining the running information of the drive program into the compiled codes to obtain the inserted middle codes, compiling the middle codes by use of the LLVM framework to obtain a corresponding assembling file, compiling the assembling file by use of a GCC compiler, and performing compiling linking on a first target file obtained by compiling and a second target file comprising a second code to obtain a drive program file, wherein the second code is used for generating a record file according to the running information of the drive program obtained by use of the first code. The method for tracking the running information of the drive program is capable of automatically generating the record file according to the running information of the drive program under the circumstance that the drive program runs normally, and therefore, the actual workload of the testing personnel can be reduced conveniently and the testing efficiency can be improved.

Description

A kind of tracking of driver operation information and system
Technical field
The present invention relates to software testing technology field, and in particular to a kind of tracking of driver operation information and be System.
Background technology
In the operating system of computer, driver is the bridge that operating system nucleus is communicated with hardware device, often Operate in kernel state.Programmer assumes that driver will not make a mistake in design application, often.But due to driving Programming person understands that to Hardware Description Manual not enough, kernel interface improper use or system resource, using the reason such as lack of standardization, are driven Often there is substantial amounts of mistake in dynamic program.For example, in Windows XP systems, 85% system mistake is that driver causes , and the mistake that driver causes in linux system is 7 times of kernel or so.Therefore, it is necessary to carry out to driver Strict debugging and test, to avoid the generation of its mistake.
Used as debugging and the important ring during test driver, tracking driver operation information is generally all adopted Tester is artificially injected the mode of code and realizes.Although this mode can tackle test environment complicated and changeable, it is also possible to The operation information of driver is intuitively obtained, but this is probably very huge to the real work amount that tester brings , it is unfavorable for the lifting of testing efficiency.
Content of the invention
For defect of the prior art, the present invention provides a kind of tracking of driver operation information and system, Operation information that can be in the case where driver normally runs automatically according to driver generates log file, contributes to Reduce the real work amount of tester, improve testing efficiency.
In a first aspect, the invention provides a kind of tracking of driver operation information, the method includes:
Obtain the source code of driver;
The source code is compiled using LLVM frameworks, and is inserted in the code after compiling for acquisition driving journey The first code of the operation information of sequence, the intermediate code after being inserted;
The intermediate code is compiled using LLVM frameworks, corresponding assembling file is obtained;
The assembling file is compiled using GCC compilers, and to the first object file that obtains of compiling and including Second file destination of second code is compiled link, obtains driver file;
Wherein, the second code is used for the operation information generation record of the driver obtained according to the first code File.
Preferably, when driver runs the function to an operation information to be recorded, the second code is used for holding Row following steps:
Apply spin lock and shield interruption;
Record the operation information of the driver that the first code is obtained;
Release spin lock opens interrupters.
Preferably, the step of the operation information of the driver for recording the first code acquisition, including:
The operation information write buffer area of the driver that the first code is obtained;
If buffer area is full, all data of buffer area is moved to a memory node, and the memory node is inserted one The afterbody of buffer queue.
Preferably, the second code is additionally operable to set up a written document thread when driver runs, so that this writes text Part thread cycle ground is by the data in all memory nodes in the buffer queue according to the queue sequence write record text The afterbody of part.
Preferably, the operation information of the driver include the function name of any number of functions in the driver, Any multinomial in data type, parameter value and return value.
Second aspect, present invention also offers a kind of tracking system of driver operation information, including:
Acquiring unit, for obtaining the source code of driver;
LLVM insertion units, for being compiled to the source code acquired in the acquiring unit using LLVM frameworks, and Insert in the code after compiling for obtaining the first code of the operation information of driver, the middle generation after being inserted Code;
LLVM assembly units, for compiling the intermediate code that the LLVM insertion units are obtained using LLVM frameworks, obtain Corresponding assembling file;
GCC compilation units, for being compiled to the assembling file that the LLVM assembly units are obtained using GCC compilers Translate, and link is compiled to the first object file that obtains of compiling and including the second file destination of second code, driven Dynamic program file;The second code is used for the operation information of the driver obtained according to the first code and generates record text Part.
Preferably, when driver runs the function to an operation information to be recorded, the second code is specifically used In:Apply spin lock and shield interruption;Record the operation information of the driver that the first code is obtained;Release spin lock simultaneously Opens interrupters.
Preferably, when driver runs the function to an operation information to be recorded, the second code is specifically used In:Apply spin lock and shield interruption;The operation information write buffer area of the driver that the first code is obtained;If slow Qu Yiman is deposited, then all data of buffer area is moved to a memory node, and the memory node is inserted the tail of a buffer queue Portion;Release spin lock opens interrupters.
Preferably, the second code is additionally operable to set up a written document thread when driver runs, so that this writes text Part thread cycle ground is by the data in all memory nodes in the buffer queue according to the queue sequence write record text The afterbody of part.
Preferably, the operation information of the driver include the function name of any number of functions in the driver, Any multinomial in data type, parameter value and return value.
As shown from the above technical solution, the present invention is believed for obtaining the operation of driver by inserting in driver The first code of breath, and record the operation information of the driver that first code is obtained using second code and generate record text Part so that log file can be generated automatically according to operation information when driver file is run and be checked for tester, Code commissioning test are artificially injected without tester, the real work amount for reducing tester are hence helped to, is carried High testing efficiency.
Certainly, implement arbitrary product of the present invention or method is it is not absolutely required to while reaching all the above excellent Point.
Description of the drawings
In order to be illustrated more clearly that the embodiment of the present invention or technical scheme of the prior art, below will be to embodiment or existing There is accompanying drawing to be used needed for technology description to make a simple introduction, it should be apparent that, drawings in the following description are these Some bright embodiments, for those of ordinary skill in the art, on the premise of not paying creative work, can be with root Other accompanying drawings are obtained according to these accompanying drawings.
Fig. 1 is a kind of schematic flow sheet of the tracking of driver operation information in one embodiment of the invention;
Fig. 2 is that work when tracking breaks in processes when driver runs in one embodiment of the invention is illustrated Figure;
Fig. 3 is a kind of concrete compiling schematic flow sheet of driver file in one embodiment of the invention;
Fig. 4 is a kind of tracking general structure schematic diagram of driver operation information in one embodiment of the invention;
Fig. 5 is a kind of structured flowchart of the tracking system of driver operation information in one embodiment of the invention.
Specific embodiment
Purpose, technical scheme and advantage for making the embodiment of the present invention is clearer, below in conjunction with the embodiment of the present invention In accompanying drawing, to the embodiment of the present invention in technical scheme be clearly and completely described, it is clear that described embodiment is The a part of embodiment of the present invention, rather than whole embodiments.Embodiment in based on the present invention, those of ordinary skill in the art The every other embodiment obtained under the premise of creative work is not made, belongs to the scope of protection of the invention.
Driver (Device Driver) full name is device driver, is that one kind can make computer and equipment logical The separate procedure of letter, it may be said that equivalent to the interface of hardware, operating system only by this interface, could control hardware device Work, if the driver of certain equipment fails correct installation, the equipment just cisco unity malfunction.Under normal circumstances, drive Program is substantially the code job sequence for operating in operating system nucleus state, thus the operation information of driver is related to The function called to program, the variable for being used and the resource called etc..
Fig. 1 shows that a kind of flow process of tracking of driver operation information in one embodiment of the invention is illustrated Figure.Referring to Fig. 1, the method includes:
Step 101:Obtain the source code of driver;
Step 102:The source code is compiled using LLVM frameworks, and is inserted in the code after compiling for obtaining The first code of the operation information of driver is taken, the intermediate code after being inserted;
Step 103:The intermediate code is compiled using LLVM frameworks, corresponding assembling file is obtained;
Step 104:The assembling file is compiled using GCC compilers, and the first object text obtained by compiling Part and the second file destination including second code are compiled link, obtain driver file;
Wherein, the second code is used for the operation information generation record of the driver obtained according to the first code File.
It should be noted that LLVM is the frame of the framework compiler (compiler) that is write with C++ in prior art Frame system, GCC (GNU Compiler Collection, GNU compilers be set with) are a set of in prior art to be opened by GNU engineerings The compiler of the multiple programming languages of support that sends out.Traditional Linux drive program can by GCC compiler direct compilations, but this Inventive embodiments are entered to the compiling chain of conventional ADS driving program in order that the driver file for finally giving normally can be run Change is gone so that LLVM compiler framework can normally support target drives program.Specifically, can be with by LLVM frameworks The inserting of external program or code to existing code is carried out, but LLVM can not provide required kernel-driven for driver Support;And GCC is supported as the kernel-driven that conventional compiler can be for needed for driver be provided, but cannot pass through The inserting of GCC completion codes.Therefore, the embodiment of the present invention can realize LLVM according to the process of above-mentioned steps 101 to step 104 The generation of the driver file under the inserting of the first code under framework and the support of GCC compilers, thus make driver text Part includes the source code of driver simultaneously, is used for realizing the first code and second code of operation information tracking and is used for Support the necessary resource of these codes.
So as to the embodiment of the present invention obtains the first of the operation information of driver by inserting in driver Code, and record the operation information of the driver that first code is obtained using second code and generate log file so that Log file can be generated automatically according to operation information during operation driver file to check for tester, without surveying Examination personnel are artificially injected code commissioning test, hence help to the real work amount for reducing tester, improve testing efficiency.
Above-mentioned first code can specifically include function (hereinafter referred to as " the target letter for being inserted into operation information to be recorded Number ") transmission function below (following object function operation closely), with record the function name of object function, data type, parameter value, The information such as return value, such that it is able to operation information that is complete, at large reflecting driver.Number of parameters due to object function Uncertain, so needing to function header (function name, return value and data type) and each parameter information (parameter value address And data type) transmission function is called, realize the purpose for completely tracking operation information.Meanwhile, it is to reduce to source code as far as possible Sequential affect, the instruction included by each section transmission function for being inserted all should lack as much as possible.
The operation information of driver of the above-mentioned second code specifically for obtaining first code is recorded, and is generated Corresponding log file, generally can coordinate other functions by file read-write function to realize.But, driver strong simultaneously Send out property and driver present in interrupt can affect first code obtain driver operation information order thus The operation information recorded in log file can be caused to assume out of order state.When running referring to driver in the embodiment of the present invention Operating diagram Fig. 2 when tracking breaks in processes, illustrates two functions in driver in Fig. 2 left columns:Function A (a1, a2) function B (b1, b2).In order to obtain function header A, B of the two functions and four parameters of the two functions:a1, a2, b1, b2, first code can first obtain function header A and parameter a1, and need call function B to carry out interrupt processing in driver After re-record function header B and parameter b1、b2, finally re-record parameter a2So that operation information acquired in first code present A, a1、B、b1、b2、a2Such out of order.
In order to solve above-mentioned out of order problem, the second code adopted by the embodiment of the present invention will be adjusted including a normalizer The record order of operation information.Specifically, referring to the workflow after normalizer effect shown in Fig. 2 right columns, when second Before code will be recorded to the operation information with regard to function A, the normalizer in second code can apply spin lock and shield Interrupt, therefore when second code recorded parameter a1Afterwards, the interruption of generation will be shielded, and the presence due to spin lock, its The operation information of his function will not be recorded, so as to continue with recording parameterses a2Information.Treat the operation with regard to function A After the completion of information is all recorded, normalizer can release spin lock and enable again the interruption for being shielded, and receive again and interrupt Request, will now execute function B, and complete documentation will be with regard to the operation information of the function.That is, whenever driver is run to one During the function of operation information to be recorded, the second code is used for executing following steps:
Step 201:Apply spin lock and shield interruption;
Step 202:Record the operation information of the driver that the first code is obtained;
Step 203:Release spin lock opens interrupters.
It can be seen that, by way of above-mentioned applying spin lock combines shielding interruption, the fortune recorded in log file can be made Row information is present in an orderly way, solves the problems, such as that the record order caused by above-mentioned interruption is chaotic.
Further, above-mentioned steps 202 can include:
Step 2021:The operation information write buffer area of the driver that first code is obtained;
Step 2022:If buffer area is full, all data of buffer area are moved to a memory node, and by the storage section The afterbody of point one buffer queue of insertion.
That is, the second code in the embodiment of the present invention can be included for building and manage one of buffer area Point, and buffer area is then used for the data that temporarily storage needs to write log file.Memory node in due to buffer queue according to Queue sequence have recorded need write log file data, thus during written document only need to buffer queue in memory node enter Row file write operations, each function without adding the code for carrying out file write operations to driver are worked as In.Relative to the way of file of just writing direct after obtaining operation information, above-mentioned flow process can efficiently reduce written document number of times, Reduce overhead, be therefore particularly suitable for the driver very strict to timing requirements, can be prevented effectively from due to injection Code affects the even system crash of excessive caused deadlock, mistake to original drivers logical sequence.
Based on the setting of above-mentioned buffer area and buffer queue, above-mentioned second code can also include writing for setting up and managing The partial code of file thread.Specifically, including:A written document thread is set up when driver runs, so that this writes text Part thread cycle ground is by the data in all memory nodes in the buffer queue according to the queue sequence write record text The afterbody of part.Here due to periodically carrying out the operation of written document using a single thread, therefore can be with driving Thread used by program reduces tracking impact of the operation information to original drivers independently of one another, further.
Certainly, above-mentioned object function can also be the partial function of driver, can be obtained by the default needs of tester The object function of operation information is taken, and only these object functions are carried out with the inserting of first code.
Generally speaking, Fig. 3 shows the concrete compiling flow process of above-mentioned driver file:Will using LLVM compiler framework Source code file compiling is driven to generate the code file after compiling;According to user's needs, the code file after above-mentioned compiling is entered The inserting of row first code (instrumenter), generates intermediate code file;Given birth to by LLVM compiler framework by intermediate code file Into the assembly code file of corresponding platform, reuse GCC compilers and generate first object file;Will be including second code (record Device) program the second file destination and first object file one reinstate GCC compilers link generate can load driver text Part.Through above-mentioned flow process, tester can obtain corresponding log file by running driver file, get driving The operation information of program.
Fig. 4 is a kind of tracking general structure schematic diagram of driver operation information in one embodiment of the invention, Wherein, the method is mainly realized by the first code (instrumenter) and second code (recorder) that are compiled into inside driver, Instrumenter and recorder operate in kernel state together with driver, it is not necessary to extra system kernel or other modules of obtaining Support, with good independence.Instrumenter is responsible for the selection according to user, and object function in driver is inserted. Recorder is responsible for when driver runs, and the code according to inserting carries out the extraction and standardization of operation information, and by slow Deposit in area and buffer queue write journal file.The journal file of generation can be used for being driven behavior analysiss of program etc.. Following table be can be found in conjunction with false code of the above-mentioned first code with the complete track algorithm of second code institute functional:
Track algorithm false code when 1 driver of table runs
Based on same inventive concept, a kind of tracking system of driver operation information is embodiments provided, Referring to a kind of structured flowchart of the tracking system of the shown driver operation information of figure, including:
Acquiring unit 501, for obtaining the source code of driver;
LLVM insertion units 502, for being compiled to the source code acquired in the acquiring unit 501 using LLVM frameworks Translate, and insert in the code after compiling for obtaining the first code of the operation information of driver, after being inserted in Between code;
LLVM assembly units 503, for compiling the middle generation that the LLVM insertion units 502 are obtained using LLVM frameworks Code, obtains corresponding assembling file;
GCC compilation units 504, for being entered to the assembling file that the LLVM assembly units 503 are obtained using GCC compilers Row compiling, and link is compiled to the first object file that obtains of compiling and including the second file destination of second code, obtain Arrive driver file;The second code is used for the operation information of the driver obtained according to the first code and generates note Record file.
Preferably, when driver runs the function to an operation information to be recorded, the second code is specifically used In:Apply spin lock and shield interruption;Record the operation information of the driver that the first code is obtained;Release spin lock simultaneously Opens interrupters.
Preferably, when driver runs the function to an operation information to be recorded, the second code is specifically used In:Apply spin lock and shield interruption;The operation information write buffer area of the driver that the first code is obtained;If slow Qu Yiman is deposited, then all data of buffer area is moved to a memory node, and the memory node is inserted the tail of a buffer queue Portion;Release spin lock opens interrupters.
Preferably, the second code is additionally operable to set up a written document thread when driver runs, so that this writes text Part thread cycle ground is by the data in all memory nodes in the buffer queue according to the queue sequence write record text The afterbody of part.
Preferably, the operation information of the driver include the function name of any number of functions in the driver, Any multinomial in data type, parameter value and return value.
Said system can execute the tracking of any one driver operation information aforementioned, thus can solve phase Same technical problem, reaches same technique effect.
In sum, the present invention obtains the first generation of the operation information of driver by inserting in driver Code, and record the operation information of the driver that first code is obtained using second code and generate log file so that in fortune Log file can be generated automatically according to operation information during row driver file to check for tester, without test Personnel are artificially injected code commissioning test, hence help to the real work amount for reducing tester, improve testing efficiency.
It should be noted that herein, " code " word is interpreted as the carrier of computer program, which can be with " text Part ", " module ", " storage medium " etc. can be carried out equivalence replacement by the same word as computer program carrier.Such as First and second or the like relational terms are used merely to distinguish an entity or operation with another entity or operation Come, and not necessarily require or imply between these entities or operation, there is any this actual relation or order.And, Term " including ", "comprising" or its any other variant are intended to including for nonexcludability, so that including a series of The process of key element, method, article or equipment not only include those key elements, but also including be not expressly set out other will Element, or also include the key element intrinsic for this process, method, article or equipment.In the situation without more restrictions Under, the key element that limited by sentence "including a ...", it is not excluded that include the process of the key element, method, article or Also there is other identical element in equipment.
Above example only in order to technical scheme to be described, rather than a limitation;Although with reference to the foregoing embodiments The present invention has been described in detail, it will be understood by those within the art that:Which still can be to aforementioned each enforcement Technical scheme described in example is modified, or carries out equivalent to which part technical characteristic;And these modification or Replace, do not make the essence of appropriate technical solution depart from the spirit and scope of various embodiments of the present invention technical scheme.

Claims (8)

1. a kind of tracking of driver operation information, it is characterised in that the method includes:
Obtain the source code of driver;
The source code is compiled using LLVM frameworks, and is inserted in the code after compiling for obtaining driver The first code of operation information, the intermediate code after being inserted;
The intermediate code is compiled using LLVM frameworks, corresponding assembling file is obtained;
The assembling file is compiled using GCC compilers, and to the first object file that obtains of compiling and including second Second file destination of code is compiled link, obtains driver file;
Wherein, the second code is used for the operation information generation record text of the driver obtained according to the first code Part, when driver runs the function to an operation information to be recorded, the second code is used for executing following steps:
Apply spin lock and shield interruption;
Record the operation information of the driver that the first code is obtained;
Release spin lock opens interrupters.
2. method according to claim 1, it is characterised in that described record driver that the first code is obtained The step of operation information, including:
The operation information write buffer area of the driver that the first code is obtained;
If buffer area is full, all data of buffer area is moved to a memory node, and the memory node insertion one is cached The afterbody of queue.
3. method according to claim 2, it is characterised in that the second code is additionally operable to build when driver runs A vertical written document thread, so that the data in all memory nodes in the buffer queue are pressed by the written document thread cycle ground According to the afterbody that queue sequence writes the log file.
4. method as claimed in any of claims 1 to 3, it is characterised in that the operation information of the driver Any multinomial in including the function name of any number of functions, data type, parameter value and return value in the driver.
5. a kind of tracking system of driver operation information, it is characterised in that include:
Acquiring unit, for obtaining the source code of driver;
LLVM insertion units, for being compiled to the source code acquired in the acquiring unit using LLVM frameworks, and are being compiled Insert in code after translating for obtaining the first code of the operation information of driver, the intermediate code after being inserted;
LLVM assembly units, for compiling the intermediate code that the LLVM insertion units are obtained using LLVM frameworks, are corresponded to Assembling file;
GCC compilation units, for being compiled to the assembling file that the LLVM assembly units are obtained using GCC compilers, and Link is compiled to the first object file that obtains of compiling and including the second file destination of second code, driver is obtained File;The second code is used for the operation information of the driver obtained according to the first code and generates log file, per When driver runs the function to an operation information to be recorded, the second code specifically for:Apply spin lock and shield Cover interruption;Record the operation information of the driver that the first code is obtained;Release spin lock opens interrupters.
6. system according to claim 5, it is characterised in that whenever driver is run to an operation information to be recorded During function, the second code specifically for:Apply spin lock and shield interruption;The driver that the first code is obtained Operation information write buffer area;If buffer area is full, all data of buffer area is moved to a memory node, and this is deposited Storage node inserts the afterbody of a buffer queue;Release spin lock opens interrupters.
7. system according to claim 6, it is characterised in that the second code is additionally operable to build when driver runs A vertical written document thread, so that the data in all memory nodes in the buffer queue are pressed by the written document thread cycle ground According to the afterbody that queue sequence writes the log file.
8. the system according to any one in claim 5 to 7, it is characterised in that the operation information of the driver Any multinomial in including the function name of any number of functions, data type, parameter value and return value in the driver.
CN201410647999.9A 2014-11-14 2014-11-14 Method and system for tracking running information of drive program Active CN104317723B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410647999.9A CN104317723B (en) 2014-11-14 2014-11-14 Method and system for tracking running information of drive program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410647999.9A CN104317723B (en) 2014-11-14 2014-11-14 Method and system for tracking running information of drive program

Publications (2)

Publication Number Publication Date
CN104317723A CN104317723A (en) 2015-01-28
CN104317723B true CN104317723B (en) 2017-02-22

Family

ID=52372958

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410647999.9A Active CN104317723B (en) 2014-11-14 2014-11-14 Method and system for tracking running information of drive program

Country Status (1)

Country Link
CN (1) CN104317723B (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104699605B (en) * 2015-03-02 2017-11-17 清华大学 The code coverage measuring method and device of a kind of driver
CN106155897B (en) * 2015-04-16 2020-12-08 腾讯科技(深圳)有限公司 Service processing method and device
CN108959085B (en) * 2018-06-25 2020-09-01 清华大学 Method and system for detecting sleep error of kernel module in atomic context
CN110569106B (en) * 2019-08-27 2022-11-15 Oppo广东移动通信有限公司 Code loading method and device, electronic equipment and computer readable medium

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102419728A (en) * 2011-11-01 2012-04-18 北京邮电大学 Method for determining software test process sufficiency based on coverage rate quantitative indicators
CN103559121A (en) * 2013-09-23 2014-02-05 清华大学 Drive configuration debugging method based on log injection

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102053906A (en) * 2009-10-30 2011-05-11 国际商业机器公司 System and method for collecting program runtime information

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102419728A (en) * 2011-11-01 2012-04-18 北京邮电大学 Method for determining software test process sufficiency based on coverage rate quantitative indicators
CN103559121A (en) * 2013-09-23 2014-02-05 清华大学 Drive configuration debugging method based on log injection

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"FPSFI:一种基于LLVM架构的驱动错误隔离机制";甄凯等;《小型微型计算机系统》;20131031;第34卷(第10期);文章第3.1节及图3 *

Also Published As

Publication number Publication date
CN104317723A (en) 2015-01-28

Similar Documents

Publication Publication Date Title
CN105022630B (en) A kind of assembly management system and assembly management method
CN108509185B (en) System and method for arbitrary software logic modeling
CN106126204B (en) A kind of information system based on modularized design is iterative to expand and develop method
CN103092742B (en) Program log recording optimization method and system
CN104317723B (en) Method and system for tracking running information of drive program
CN101840352A (en) Method and device for monitoring database connection pool
US8656349B2 (en) Systems and methods for template reverse engineering
US8418134B2 (en) Method for efficiently managing property types and constraints in a prototype based dynamic programming language
US9367306B2 (en) Method for transforming a multithreaded program for general execution
CN103440457B (en) Based on the binary program analytic system of process simulation
CN108874438A (en) Patch generation method, device, electronic equipment and computer program product
CN103365776A (en) Parallel system weak consistency verifying method and system based on deterministic replay
CN113296786B (en) Data processing method, device, electronic equipment and storage medium
CN105446725A (en) Method and system for model driven development
CN104915287A (en) Method and system for unit testing
US20210182035A1 (en) Rapid Code Compiling System
CN110362312A (en) A kind of syntax conversion compiling system and method suitable for a variety of frames
CN102135877B (en) Automated construction method and device
CN103810099A (en) Code tracing method and code tracing system
CN104049947A (en) Dynamic Rename Based Register Reconfiguration Of A Vector Register File
CN107122203B (en) Configuration file setting method and device
Chaki et al. The ComFoRT reasoning framework
CN107544811A (en) Ios platform hides method, storage medium, electronic equipment and the system of dylib files
Demuth et al. Automatically generating and adapting model constraints to support co-evolution of design models
US8843908B2 (en) Compiler validation via program verification

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant