CN109710538A - A kind of static detection method for state related defects in large scale system - Google Patents
A kind of static detection method for state related defects in large scale system Download PDFInfo
- Publication number
- CN109710538A CN109710538A CN201910042564.4A CN201910042564A CN109710538A CN 109710538 A CN109710538 A CN 109710538A CN 201910042564 A CN201910042564 A CN 201910042564A CN 109710538 A CN109710538 A CN 109710538A
- Authority
- CN
- China
- Prior art keywords
- path
- icfet
- constraint
- large scale
- scale system
- 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.)
- Granted
Links
- 230000007547 defect Effects 0.000 title claims abstract description 28
- 230000003068 static effect Effects 0.000 title claims abstract description 26
- 238000001514 detection method Methods 0.000 title claims abstract description 22
- 238000000034 method Methods 0.000 claims abstract description 89
- 238000004458 analytical method Methods 0.000 claims abstract description 29
- 238000010586 diagram Methods 0.000 claims abstract description 14
- 238000005206 flow analysis Methods 0.000 claims abstract description 14
- 230000008569 process Effects 0.000 claims description 42
- 238000004364 calculation method Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000009466 transformation Effects 0.000 description 4
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000035945 sensitivity Effects 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Landscapes
- Debugging And Monitoring (AREA)
- Stored Programmes (AREA)
Abstract
The present invention relates to a kind of static detection methods for state related defects in large scale system, and defect relevant to state in large scale system is abstracted as to the form of finite state machine expression first.Secondly based on symbolic execution technique generate interprocedual control stream executes tree (ICFET), and propose one newly path constraint is indicated based on the path code/decoding algorithm in section.It is then based on ICFET and carries out alias analysis and data-flow analysis in a manner of context-sensitive and path-sensitive, track the stream of each object of each specified type, to identify the sequence of events that may occur on object.Programme diagram finally raw according to ICFET and alias analysis and data flow point division, the figure accessibility based on constraint is carried out to calculate, if undefined in finite state machine or error condition can be reached up to side, an object or a group objects can be driven to undefined or error condition the sequence of events in specification, generation error report by then existing.
Description
Technical field
The present invention relates to a kind of static detection methods for state related defects in large scale system, belong to software work
Journey, computer system, high-performance calculation interleaving techniques application field.
Background technique
Large scope software system includes operating system, web browser, database, database processing engine etc., it is constituted
The pillar of modern computing.Since these systems are widely used in every field, thereby, it is ensured that its reliability is most important.To the greatest extent
It is more reliable that plumber's industry and academia are constantly dedicated to these systems, but mistake still often occurs in large scope software system.
The common type of error of one kind is relevant to state in large scope software system: in a limited event sequence
Column occur after interested object, a mistake occur by object driving to a wrong state.For example no longer make
Do not discharged after to obtain lock, the opening documentor being not turned off after completing file access, or never again
It is not discharged when using comprising data or the region of storage allocation of dual release etc..Being related to the object of such mistake usually can be with
It is described by the finite state machine (FSM) with its possible state.
Program Static Analysis is based on predefined rule or model, and by scanning source code, whether Validation Code meets
A kind of code analysis techniques of the indexs such as safety, reliability.Static Analysis Technology does not need operation program, can be in software
Defect is found that before deployment, convenient for automation, is widely used in security breaches detection field in recent years.
Effective relevant mistake of detecting state needs accurately to track the state conversion of each interested object, and needs
There is context sensitivity and path-sensitive accurately to report real mistake simultaneously.Therefore traditional static analytical technology
Very big memory is needed when detecting the state related defects in large scale system to record the shape of each interested object
State transitional information, and need to take considerable time and be calculated to generate testing result.
Summary of the invention
Technical problem: the present invention provides a kind of static detection method for state related defects in large scale system, mesh
Be to solve the problems, such as that the prior art is difficult to detect the state related defects in large scale system, can be to very big code
Library executes the accurate and expansible static check of finite state attribute, efficiently, accurately detects a variety of in large scale system
Mistake, including source-Receiver Problem (such as resource leakage), abnormality processing mistake (such as lacking error handling code) or type shape
State is relevant wrong (such as inappropriate documentor used).These are all normal in modern distributive computing system
See mistake.
Technical solution: the present invention proposes a kind of static detection method for state related defects in large scale system, should
Defect relevant to state in large scale system is abstracted as the form of finite state machine expression by method first.Secondly based on symbol
Number execute technology generate interprocedual control stream executes tree (ICFET), and propose one newly the path code based on section/
Decoding algorithm indicates path constraint.It is then based on ICFET and carries out alias analysis in a manner of context-sensitive and path-sensitive
And data-flow analysis, the stream of each object of each specified type is tracked, to identify the event sequence that may occur on object
Column.Programme diagram finally raw according to ICFET and alias analysis and data flow point division, carries out the figure accessibility based on constraint
It calculates, if can reach undefined in finite state machine or error condition up to side, existing can be by an object or one
Group objects drives to undefined or error condition the sequence of events in specification, generation error report.
Method proposed by the present invention is made of front-end and back-end, and front end is by two graphic generator groups based on compiler
At Program transformation is two different graphical representations by they, and one is used for alias analysis, another is used for data-flow analysis.
Rear end is the graphics engine based on disk, handles very big tablet pattern using quick SSD, the figure generated to front end
Shape carries out the calculating of the figure accessibility based on constraint.
The step of this method includes are as follows:
1) control stream executes tree (ICFET) between creating static process using semiology analysis, obtains path constraint.
1.1) tree (CFET) is executed firstly, for control stream in each method generating process in program, with representation method
In all possible Control flow path.Then process internal procedure interior coding/decoding algorithm based on section, control stream are defined
Path can uniquely be expressed as the section on CFET, can compactly be encoded to a pair of of integer, and each edge in figure is not taken
Band Boolean formulas, but include the coding based on section of constraint, which, which can be used as, quickly positions road in the figure computing interval
Diameter and the index for calculating its constraint.In decoding, for encoding section [IDstart, IDend], from IDendPostorder traversal arrives
IDstart, the constraint of each node, which is carried out conjunction, can be obtained decoded path constraint information.
1.2) CFET is extended by increasing the side call/return, increases interprocedual path constraint, generating process for it
Between control stream execute tree (ICFET).Increase call/return when being to connect call from point of invocation to the root of called method
Node returns at calling from each method return place of called method connection side return.Then path is compiled in expansion process
Code/decoding algorithm provides interprocedual path code/decoding algorithm to indicate interprocedual path constraint information.In order to effectively right
Interprocedual path is encoded, we by by path representation be section sequence come path code algorithm in expansion process, often
Path segments in a section representation method.It, can be to mistake by repeating path decoding algorithm in process to each section
Path is decoded between journey.
2) alias analysis is carried out to program, program is converted to the figure comprising Alias information, calculated for subsequent alias
It prepares.
2.1) method each in program is carried out analyzing in process respectively.The given context suitable for alias analysis without
It closes grammer and carrys out the constraint that designated analysis must comply with, during execution, analyze traversing graph to find its label and syntax rule
The path matched, and addition transmitting side on these paths, while according to the path of path code algorithm calculating each edge in process
It encodes to indicate the path constraint information for needing to meet.
2.2) for appearing in each variable v (such as b in multiple basic blocks1, b2..., bn), if on ICFET from
Block biTo bjThere are paths, we are each such basic block biCreate individual vertex vi, and from viTo vjIt is artificial to add
Side.
2.3) process internal program figure is given, based on the insensitive calling figure of context precalculated, with side from bottom to top
Formula increases the corresponding side call/return, and calculates its path code according to interprocedual path code algorithm, then will be adjusted
It is cloned into call method with method program figure inline to realize.
3) data-flow analysis is carried out to program, is the form of corresponding figure by Program transformation.The process is similar with step 2:
3.1) according to being analyzed in the context-free grammar of data-flow analysis carry out process.
3.2) for appearing in each variable v (such as b in multiple basic blocks1, b2..., bn), if on ICFET from
Block biTo bjThere are paths, we are each such basic block biCreate individual vertex vi, and from viTo vjIt is artificial to add
Side.
3.3) process internal program figure is given, based on the insensitive calling figure of context precalculated, with side from bottom to top
Formula increases the corresponding side call/return, and calculates its path code according to interprocedual path code algorithm, then will be adjusted
It is cloned into call method with method program figure inline to realize.
4) two programme diagrams generated to step 2 and step 3 carry out the calculating of the figure accessibility based on path constraint.
4.1) ICFET is completely loaded into memory.
4.2) input figure is divided into one group of lesser subregion being stored on disk.
4.3) calculating centered on an opposite side is carried out, i.e., checks an opposite side every time, this is obtained according to path decoding algorithm
The path constraint of one opposite side calculates it merging and constrains and generate new coding.In each iteration, two side subregions are added
It is downloaded in memory.
4.4) after each iteration, related work is handled.Then, scheduler selects two other subregions to be loaded into
Next iteration is carried out in memory.Iteration is calculated until can not find new side.
The utility model has the advantages that the present invention proposes a kind of static detection method for state related defects in large scale system, tool
Have it is following the utility model has the advantages that
(1) of the present invention a kind of in large scale system in the static detection method of state related defects, it is above
Hereafter sensitive and path-sensitive mode carries out alias analysis and data-flow analysis, can effectively eliminate infeasible other
Name relationship and inaccessible data flow, improve the precision of defects detection.
(2) of the present invention a kind of in large scale system in the static detection method of state related defects, rear end
Graphics engine based on the hard disk is selected to carry out figure accessibility based on constraint and calculate, can to large-scale data into
Row is accurate to be calculated.
(3) of the present invention a kind of in large scale system in the static detection method of state related defects, entirely
Method stand-alone environment run, developer is used daily, can themselves desktop computer/notebook electricity
Code check is executed on brain without accessing cluster.
(4) of the present invention a kind of in the static detection method of state related defects, being proposed in large scale system
A kind of new path code/decoding technique based on section effectively indicates path constraint, and indicates path in original form
Constraint (i.e. Boolean formulas) compare, based on the expression of sequence of intervals by path constraint from more complicated character string be converted to by
The section of digital representation, and by the merging reduction to section to the repeated access and calculating of path constraint.Although each edge
There is still a need for the memory spaces of variable-size, but this storage is limited by method call depth on path.It is practicing
In, the usual very little of this depth.
Detailed description of the invention
Fig. 1 is the static detection method schematic diagram of state related defects in the large scale system of the embodiment of the present invention.
Fig. 2 is path constraint decoding algorithm schematic diagram in the process of the embodiment of the present invention.
Fig. 3 is the expression on side and context-free grammar figure in the alias analysis of the embodiment of the present invention.
Fig. 4 is the figure accessibility schematic diagram of calculation flow based on path constraint of the embodiment of the present invention.
Fig. 5 is the static detection method front end of state related defects in the large scale system of the embodiment of the present invention, rear end structure
At schematic diagram.
Specific embodiment
The present invention is made further specifically below in conjunction with the drawings and specific embodiments.
The present embodiment proposes a kind of static detection method for state related defects in large scale system, first will be big
Defect relevant to state is abstracted as the form of finite state machine expression in scale systems.It is produced secondly based on symbolic execution technique
Raw interprocedual control stream executes tree (ICFET), and proposes the new path code/decoding algorithm based on section come table
Show path constraint.It is then based on alias analysis and data-flow analysis that ICFET carries out context-sensitive and path-sensitive, finally
According to the raw programme diagram of ICFET and alias analysis and data flow point division, it is based on using graphics engine based on the hard disk
The figure accessibility of constraint calculates, and effectively detects defect relevant to state in large scale system.Attached drawing 1 gives on a large scale
The static finite state flag check method schematic diagram of system.
The method that the present embodiment proposes is made of front-end and back-end, and front end is by two graphic generators based on compiler
Composition, Program transformation is two different graphical representations by they, and one is used for alias analysis, another is used for data flow point
Analysis.Rear end is the graphics engine based on disk, handles very big tablet pattern using quick SSD, generates to front end
Figure carries out the calculating of the figure accessibility based on constraint.As shown in figure 5, front-end and back-end constitute schematic diagram.
A specific embodiment of the invention are as follows:
1) control stream executes tree (ICFET) between creating static process using semiology analysis, obtains path constraint.
1.1) firstly, for each method in program, the interior control stream of generating process executes tree (CFET), with the side of expression
All possible Control flow path in method.Basic block each in method is expressed as node, each nonleaf node is one
Branch point, its two child nodes are true and false branch.Then distributing ID: root node ID for it is the true of the node that 0, ID is n
Branch ID is 2*n+2, and false ramification ID is 2*n+1.This method of salary distribution guarantees that each node in CFET is assigned with uniquely
ID, and the ID for passing through a node can simply calculate the ID of father node very much.Then it defines in the process based on section
Process interior coding/decoding algorithm, Control flow path can uniquely be expressed as the section [ID on CFETstart, IDend], it can
To be compactly encoded to a pair of of integer, each edge in figure does not carry Boolean formulas, but includes the volume based on section of constraint
Code, the coding can be used as in figure computing interval quick location path and calculate the index of its constraint.In decoding, attached drawing 2
Path decoding algorithm in process is given, for encoding section [IDstart, IDend], from IDendPostorder traversal is to IDstart, will
The constraint of each node, which carries out conjunction, can be obtained decoded path constraint information.
1.2) increase interprocedual path constraint by increasing the side call/return.The side call is connected to being adjusted from point of invocation
With the root node of method, returned at calling from each method return place of called method connection side return.Then it propagates through
Path code/decoding algorithm in journey provides interprocedual path code/decoding algorithm to indicate interprocedual path constraint information.For
The path ICFET is effectively encoded, is span list by path representation, the path segments in each section representation method.Physics
On be stored in the actual coding in interprocedual path in side using following format: { 2, [123,312], 21, [45,890] }.This
In 2 record paths length, 21 be path segments in two processes that connection is encoded by [123,312] and [45,890]
The ID on the side call.It, can be to interprocedual road by repeating path decoding algorithm in the process in attached drawing 2 to each section
Diameter is decoded.
2) alias analysis is carried out to program, program is converted to the figure comprising Alias information, calculated for subsequent alias
It prepares.Alias analysis can be expressed as the figure Reachability question based on grammer.
2.1) method each in program is carried out analyzing in process respectively.Attached drawing 3 is the table on the side suitable for alias analysis
Show and context-free grammar carrys out the constraint that designated analysis must comply with.The figure that this process generates constructs in this way: top
Point indicates variable, and side indicates assignment.Each edge has a label, indicates the semanteme of this assignment.Attached drawing 3 (a) gives
The representation on the sentence of 4 important seed types and corresponding side in alias analysis.Attached drawing 3 (b) is corresponding context-free
Grammer, if object o can be flowed to variable u and v (that is, (o, u) ∈ flowTo and (o, v) ∈ flowTo), u and v have not
Name relationship.During execution, traversing graph is analyzed to find its label and the matched path of syntax rule, and on these paths
Addition transmitting side, while the path code of each edge is calculated to indicate the road for needing to meet according to path code algorithm in process
Diameter constraint information.
2.2) for appearing in each variable v (such as b in multiple basic blocks1, b2..., bn), if on ICFET from
Block biTo bjThere are paths, we are each such basic block biCreate individual vertex vi, and from viTo vjIt is artificial to add
Side.If existing than containing object out in basic block 0 and basic block 2, and in ICFET from basic block 0 to the road of basic block 2
Then object out is respectively created for the two basic blocks in diameter0And out1, then increase from out0To out1Be identified as assign,
It is constrained to the side of { [0,2] }.
2.3) process internal program figure is given, based on the insensitive calling figure of context precalculated, with side from bottom to top
Formula increases the corresponding side call/return, and calculates its path code according to interprocedual path code algorithm, then will be adjusted
It is cloned into call method with method program figure inline to realize.Increase first parameter transmitting while and value return while, then will be by
Side inside call method is cloned into call method.Actual parameter in caller is connected to called by parameter transmitting side
Corresponding formal parameter in the clone of person.It is with an assign label and a single element list { cidIndicate, wherein cid
It is the corresponding side call ID in ICFET.Similar, value returns to side and the return variable in the clone of callee is connected to tune
Left side (LHS) variable of the point of invocation of user.It has an assign label and single element list { rid, wherein ridIt is
The ID on side is accordingly returned in ICFET.
3) data-flow analysis is carried out to program, is the form of corresponding figure by Program transformation.The process is similar with step 2,
Here complicated description is not done:
3.1) according to being analyzed in the context-free grammar of data-flow analysis carry out process.
3.2) for appearing in each variable v (such as b in multiple basic blocks1, b2..., bn), if on ICFET from
Block biTo bjThere are paths, we are each such basic block biCreate individual vertex vi, and from viTo vjArtificial edged.
3.3) process internal program figure is given, based on the insensitive calling figure of context precalculated, with side from bottom to top
Formula increases the corresponding side call/return, and calculates its path code according to interprocedual path code algorithm, then will be adjusted
It is cloned into call method with method program figure inline to realize.
4) two programme diagrams generated to step 2 and step 3 carry out the calculating of the figure accessibility based on path constraint.Other
The alias of execution route sensitivity calculates on name analysis programme diagram.Then the number of path-sensitive is carried out to data-flow analysis programme diagram
According to stream calculation.During this stage, alias, which calculates the alias result generated, will retain in memory, to answer data-flow analysis
Alias inquiry.Status information finally is extracted in each program point of data-flow computation, and checks that it is with detection for FSM
It is no that there are mistakes.Alias calculate and data-flow computation process be likewise, attached drawing 4 give the figure based on path constraint can
Up to property calculation process:
4.1) ICFET is completely loaded into memory.
4.2) input figure is divided into one group of lesser subregion being stored on disk.Each subregion by vertex logic
Section definition, and include that source summit falls in all sides in section.
4.3) calculating centered on an opposite side is carried out, i.e., checks an opposite side every time, it is calculated and merges constraint and new
Coding.In each iteration, two side subregions are loaded into memory.We are with an opposite sideAndFor, l hereaAnd lbFor the assignment type on two sides, i1And i2It is the section for representing two paths in ICFET
Sequence needs to be done as follows:
1. calculating combination constraint first, need to i1And i2Decoding.If i1And i2It all only include a single section, then
By path decoding algorithm in the process in attached drawing 2 respectively to i1And i2It is decoded, i.e., from IDendPostorder traversal is to IDstart,
The constraint of each node is subjected to conjunction.If i1And/or i2Comprising the side a call/return ID, or be by
Multiple sequence of intervals of the side call/return connection, then to i1And i2In section repeat path in the process in attached drawing 2
Decoding algorithm, it is i that the constraint in subinterval, which is then carried out conjunction,1And i2Constraint decoding result.Next, will be related
Two subpath i1And i2Constraint merge into conjunction form, indicate the constraint of combinatorial path.
2. using SMT solver judge combinatorial path constraint whether can meet, if can meet, increase by one from x to
The path of z needs to calculate new coding for it.If i1And i2It is not the side call/return, such as { [a, b] }, { [b, c] },
It is then new to be encoded to { [a, c] };If i1Or i2It only include the ID on a side call/return, such as { [a, b] } and { ci, then
New is encoded to { [a, b], ci,[0,0]};If i1And i2It all include multiple sections, and i1And i2In call/return ID
It is a pair of of call/return pairs, such as { [a, b], ci, [0,0] } and { [0, d], ri, [b, c] }, then new coding is { [a, c] };
If i1 and i2 include multiple sections, and the call/return ID in i1 and i2 is unpaired, such as { [a, b], ci,[0,0]}
{ [0, d], cj, [0,0] }, then new coding is { [a, b], ci,[0,d],cj,[0,0]}。
4.4) after each iteration, related work is handled, for example need to repartition super large subregion, to ensure
Subregion is balance, and will not increase beyond memory size after adding new side.Then, scheduler selects two
Other subregions are loaded into memory carry out next iteration.Iteration is calculated until can not find new side.
The above, only presently preferred embodiments of the present invention are disclosed above, however are not limited to this programme, any
Those skilled in the art are not departing from this programme technical proposal scope, when the technology contents using the disclosure above
It makes a little change or is modified to the equivalent embodiment of equivalent variations, but all contents without departing from the technical program, according to this
Any simple modification to the above embodiments of the technical spirit of invention, equivalent variations and modification, still fall within skill of the present invention
In the range of art scheme.
Claims (5)
1. a kind of static detection method for state related defects in large scale system, it is characterised in that:
Defect relevant to state in large scale system is abstracted as the form of finite state machine expression by this method first;Secondly base
Interprocedual control stream is generated in symbolic execution technique and executes tree (ICFET), and is proposed the new path based on section and compiled
Code/decoding algorithm indicates path constraint;It is then based on ICFET and carries out alias point in a manner of context-sensitive and path-sensitive
Analysis and data-flow analysis, track the stream of each object of each specified type, to identify the event sequence that may occur on object
Column;Programme diagram finally raw according to ICFET and alias analysis and data flow point division, it is reachable to carry out the figure based on path constraint
Property calculate, if undefined in finite state machine or error condition can be reached up to side, exist can by an object or
One group objects drives to undefined or error condition the sequence of events in specification, generation error report.
2. the static detection method according to claim 1 for state related defects in large scale system, feature exist
In:
Path code/the decoding technique based on section effectively indicates path constraint, specific steps are as follows:
Tree (CFET) is executed firstly, for control stream in each method generating process in program, with all in representation method
Possible Control flow path, and define path code/decoding algorithm in process;Then expanded by increasing the side call/return
Control stream, which executes control between tree (CFET) generating process and flows, in exhibition process executes tree (ICFET), from the point of invocation connection side call to
The root node of called method returns at calling from each method return place of called method connection side return;Likewise,
Interprocedual path code/decoding algorithm is realized by path code/decoding algorithm in expansion process effectively to indicate path
Constraint.
3. the static detection method according to claim 1 for state related defects in large scale system, feature exist
In:
It is described based on ICFET with the alias analysis of context-sensitive and path-sensitive, specific steps are as follows:
Method each in program is carried out analyzing in process respectively;It is necessary come designated analysis based on given context-free grammar
The constraint followed analyzes traversing graph to find its label and the matched path of syntax rule, and addition transmitting on these paths
Side;For appearing in each variable v (such as b in multiple basic blocks1, b2..., bn), if from block b on ICFETiTo bjIn the presence of
Path, for each such basic block biCreate individual vertex vi, and from viTo vjArtificial edged;During execution, increase
Each edge calculate path code all in accordance with path code algorithm in process to indicate that this edge needs the path constraint that meets;So
Increase interprocedual information afterwards, for given process internal program figure, based on the insensitive calling figure of context precalculated, with certainly
Mode on down increases the corresponding side call/return, and calculates its path code according to interprocedual path code algorithm, so
Called method program figure is cloned into call method afterwards inline to realize.
4. the static detection method according to claim 1 for state related defects in large scale system, feature exist
In:
It is described based on ICFET with the data-flow analysis of context-sensitive and path-sensitive, specific steps are as follows:
According to being analyzed in the context-free grammar of data-flow analysis carry out process;For appearing in each of multiple basic blocks
Variable v (such as b1, b2..., bn), if from block b on ICFETiTo bjThere are paths, for each such basic block biCreation is single
Only vertex vi, and from viTo vjArtificial edged;Given process internal program figure, based on the insensitive tune of context precalculated
With figure, increase the corresponding side call/return in a manner of from bottom to top, and its road is calculated according to interprocedual path code algorithm
Called method program figure, is then cloned into call method inline to realize by diameter coding.
5. the static detection method according to claim 1 for state related defects in large scale system, feature exist
In:
The figure accessibility based on path constraint calculates, specific steps are as follows:
First ICFET is completely loaded into memory before calculating;Then input figure is divided into one group be stored on disk
Lesser subregion;The calculating centered on an opposite side is carried out later, i.e., checks an opposite side every time, calculates it merging constraint and new
Coding;In each iteration, two side subregions are loaded into memory;After each iteration, related work is handled;So
Afterwards, scheduler selects two other subregions to be loaded into memory carry out next iteration;Iteration is calculated until can not find new side.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910042564.4A CN109710538B (en) | 2019-01-17 | 2019-01-17 | Static detection method for state-related defects in large-scale system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910042564.4A CN109710538B (en) | 2019-01-17 | 2019-01-17 | Static detection method for state-related defects in large-scale system |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109710538A true CN109710538A (en) | 2019-05-03 |
CN109710538B CN109710538B (en) | 2021-05-28 |
Family
ID=66262249
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910042564.4A Active CN109710538B (en) | 2019-01-17 | 2019-01-17 | Static detection method for state-related defects in large-scale system |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109710538B (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113961475A (en) * | 2021-12-22 | 2022-01-21 | 清华大学 | Protocol-oriented error processing defect detection method and system |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101286132A (en) * | 2008-06-02 | 2008-10-15 | 北京邮电大学 | Test method and system based on software defect mode |
US20090119649A1 (en) * | 2007-11-02 | 2009-05-07 | Klocwork Corp. | Static analysis defect detection in the presence of virtual function calls |
CN103106134A (en) * | 2011-11-10 | 2013-05-15 | 阿里巴巴集团控股有限公司 | Detecting method, device and system for performance deficiency |
CN103294594A (en) * | 2013-05-08 | 2013-09-11 | 南京大学 | Test based static analysis misinformation eliminating method |
US20140019946A1 (en) * | 2012-03-15 | 2014-01-16 | Nec Laboratories America, Inc. | Layered decomposition for scalable static data race detection of concurrent programs |
CN104536883A (en) * | 2014-12-05 | 2015-04-22 | 北京邮电大学 | Static defect detecting method and system thereof |
CN105159828A (en) * | 2015-08-25 | 2015-12-16 | 中国人民解放军信息工程大学 | Context sensitivity detection method for source code level |
CN106021116A (en) * | 2016-06-07 | 2016-10-12 | 北京信息科技大学 | Inaccessible function call path detection method in complex system |
US20170075789A1 (en) * | 2015-09-10 | 2017-03-16 | Google Inc. | Method and apparatus for generating, capturing, storing, and loading debug information for failed tests scripts |
US20170337118A1 (en) * | 2016-05-20 | 2017-11-23 | Oracle International Corporation | Selective object sensitive points-to analysis |
-
2019
- 2019-01-17 CN CN201910042564.4A patent/CN109710538B/en active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090119649A1 (en) * | 2007-11-02 | 2009-05-07 | Klocwork Corp. | Static analysis defect detection in the presence of virtual function calls |
CN101286132A (en) * | 2008-06-02 | 2008-10-15 | 北京邮电大学 | Test method and system based on software defect mode |
CN103106134A (en) * | 2011-11-10 | 2013-05-15 | 阿里巴巴集团控股有限公司 | Detecting method, device and system for performance deficiency |
US20140019946A1 (en) * | 2012-03-15 | 2014-01-16 | Nec Laboratories America, Inc. | Layered decomposition for scalable static data race detection of concurrent programs |
CN103294594A (en) * | 2013-05-08 | 2013-09-11 | 南京大学 | Test based static analysis misinformation eliminating method |
CN104536883A (en) * | 2014-12-05 | 2015-04-22 | 北京邮电大学 | Static defect detecting method and system thereof |
CN105159828A (en) * | 2015-08-25 | 2015-12-16 | 中国人民解放军信息工程大学 | Context sensitivity detection method for source code level |
US20170075789A1 (en) * | 2015-09-10 | 2017-03-16 | Google Inc. | Method and apparatus for generating, capturing, storing, and loading debug information for failed tests scripts |
US20170337118A1 (en) * | 2016-05-20 | 2017-11-23 | Oracle International Corporation | Selective object sensitive points-to analysis |
CN106021116A (en) * | 2016-06-07 | 2016-10-12 | 北京信息科技大学 | Inaccessible function call path detection method in complex system |
Non-Patent Citations (3)
Title |
---|
潘秋红等: "Android应用中SQL注入漏洞静态检测方法", 《JOURNAL OF FRONTIERS OF COMPUTER SCIENCE AND TECHNOLOGY》 * |
黄晖等: "一种面向源代码的整数溢出缺陷静态检测方法", 《中国科学技术大学学报》 * |
黄浩华等: "静动态结合的恶意Android应用自动检测技术", 《信息安全学报》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113961475A (en) * | 2021-12-22 | 2022-01-21 | 清华大学 | Protocol-oriented error processing defect detection method and system |
CN113961475B (en) * | 2021-12-22 | 2022-04-15 | 清华大学 | Protocol-oriented error processing defect detection method and system |
Also Published As
Publication number | Publication date |
---|---|
CN109710538B (en) | 2021-05-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7340475B2 (en) | Evaluating dynamic expressions in a modeling application | |
JP3858000B2 (en) | Verification method of combinational circuit using filtering type approach | |
US8930919B2 (en) | Modernization of legacy software systems based on modeled dependencies | |
US9367428B2 (en) | Transparent performance inference of whole software layers and context-sensitive performance debugging | |
CN102567200A (en) | Parallelization security hole detecting method based on function call graph | |
CN101751333A (en) | Method, computer program and computer system for assisting in analyzing program | |
KR102013582B1 (en) | Apparatus and method for detecting error and determining corresponding position in source code of mixed mode application program source code thereof | |
CN103914379B (en) | Fault is automatically injected the method with fault detect and system thereof | |
CN110059006A (en) | Code audit method and device | |
CN105159827A (en) | Reliability accelerated testing method for GUI software | |
CN102141959B (en) | Test case generation method restrained by context-free grammar | |
CN109408385B (en) | A kind of disfigurement discovery method based on mischief rule and classifying feedback | |
CN108763064A (en) | A kind of code tester generation method and device based on black box function and machine learning | |
CN111045670B (en) | Method and device for identifying multiplexing relationship between binary code and source code | |
Buinevich et al. | Method for partial recovering source code of telecommunication devices for vulnerability search | |
Abdurazik et al. | Using coupling-based weights for the class integration and test order problem | |
CN103793653B (en) | A kind of program dependence based on tree optimization analyzes method and system | |
CN109725900B (en) | SMV (simple message modeling) model construction method of register transmission level Verilog code | |
CN112631925B (en) | Method for detecting single-variable atom violation defect | |
CN109710538A (en) | A kind of static detection method for state related defects in large scale system | |
CN105302547A (en) | Fault injection method for Verilog HDL design | |
Zengler et al. | Encoding the Linux kernel configuration in propositional logic | |
JP2008269585A (en) | Coverage measuring instrument for property description, and program | |
CN103914381A (en) | Method for generating function summary information related to temporal security attribute defect modes | |
RU2364930C2 (en) | Generation method of knowledgebases for systems of verification of distributed computer complexes software and device for its implementation |
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 |