Legal claims defining the scope of protection, as filed with the USPTO.
1. A method comprising: storing, via a processor, a bit vector comprising N bits, wherein N is a positive integer, wherein each bit in the bit vector corresponds to a respective node of a control-flow graph of an object-oriented program into which a respective probe has been inserted, and wherein each bit in the bit vector is a flag that indicates a coverage of a respective node during an execution of the object-oriented program; and storing a character string comprising, for each function of the object-oriented program: a name of the function; a name of a class to which the function belongs; a name of a file where source code associated with the class is stored; and an identifier identifying nodes of the control-flow graph that belong to the function.
2. The method of claim 1 , further comprising transmitting, via an independent software process running concurrently with the object-oriented program, the bit vector and the character string from memory to a database.
3. The method of claim 2 , wherein the bit vector and the character string are transmitted via a user datagram protocol connection.
4. The method of claim 2 , wherein the independent software process has a low priority.
5. The method of claim 1 , further comprising instrumenting a plurality of nodes selected for instrumentation from the control-flow diagram of the object-oriented program, wherein instrumenting the plurality of nodes comprises inserting probes into N nodes determined by partitioning the object-oriented program into N blocks of code, wherein any consecutive lines of code X and Y are placed in a same block only if a first execution of X implies a second execution of both X and Y.
6. The method of claim 5 , wherein partitioning the program is based on a partition of the plurality of nodes.
7. The method of claim 6 , wherein partitioning the program further comprises: determining a non-empty subset S of the plurality of nodes; partitioning the control-flow diagram into subgraphs corresponding to child nodes of subset S; and determining a respective partition for each of the subgraphs.
8. The method of claim 7 , wherein determining the non-empty subset S comprises solving a minimum-cut maximum-flow problem.
9. A data structure stored in a non-transitory computer-readable medium comprising: a bit vector comprising N bits, wherein N is a positive integer, wherein each bit in the bit vector corresponds to a respective node of a control-flow graph of an object-oriented program into which a respective probe has been inserted, and wherein each bit in the bit vector is a flag that indicates coverage of the respective node during an execution of the object-oriented program; and a character string comprising, for each function of the object-oriented program: a name of the function; a name of a class to which the function belongs; a name of a file where source code associated with the class is stored; and an identifier identifying nodes of the control-flow graph that belong to the function.
10. A system comprising: a processor; and a computer-readable storage medium having stored therein instructions which, when executed by the processor, cause the processor to perform a method comprising: storing a bit vector comprising N bits, wherein N is a positive integer, wherein each bit in the bit vector corresponds to a respective node of a control-flow graph of an object-oriented program into which a respective probe has been inserted, and wherein each bit in the bit vector is a flag that indicates a coverage of a respective node during an execution of the object-oriented program; and storing a character string comprising, for each function of the object-oriented program: a name of the function; a name of a class to which the function belongs; a name of a file where source code associated with the class is stored; and an identifier identifying nodes of the control-flow graph that belong to the function.
11. The system of claim 10 , wherein the computer-readable storage medium further stores instructions which result in the method further comprising transmitting, via an independent software process running concurrently with the object-oriented program, the bit vector and the character string from the memory to a database.
12. The method of claim 11 , wherein the bit vector and the character string are transmitted via a user datagram protocol connection.
13. The method of claim 12 , wherein the independent software process has a low priority.
14. A non-transitory computer-readable storage medium having stored therein instructions which, when executed by a processor, cause the processor to perform a method comprising: storing, via a processor, a bit vector comprising N bits, wherein N is a positive integer, wherein each bit in the bit vector corresponds to a respective node of a control-flow graph of an object-oriented program into which a respective probe has been inserted, and wherein each bit in the bit vector is a flag that indicates a coverage of a respective node during an execution of the object-oriented program; and storing a character string comprising, for each function of the object-oriented program: a name of the function; a name of a class to which the function belongs; a name of a file where source code associated with the class is stored; and an identifier identifying nodes of the control-flow graph that belong to the function.
15. The non-transitory computer-readable storage medium of claim 14 , wherein the non-transitory computer-readable storage medium further stores instructions which result in the method further comprising transmitting, via an independent software process running concurrently with the object-oriented program, the bit vector and the character string from the memory to a database.
16. The non-transitory computer-readable storage medium of claim 15 , wherein the bit vector and the character string are transmitted via a user datagram protocol connection.
17. The non-transitory computer-readable storage medium of claim 16 , wherein the independent software process has a low priority.
Unknown
January 15, 2013
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.