Detecting lock acquisition hierarchy violations in multithreaded programs
First Claim
Patent Images
1. A method, comprising:
- constructing a lock acquisition hierarchy graph to facilitate monitoring of resource operations corresponding to each of a plurality of threads of a multithreaded program;
monitoring the resource operations being performed in accordance with a hierarchy; and
detecting a violation in the hierarchy, wherein the detecting of the violation is triggered with an occurrence of a change in the graph.
1 Assignment
0 Petitions
Accused Products
Abstract
A method, apparatus, and system are provided for monitoring resource operations and detecting lock acquisition hierarchy violations in multithreaded programs. In one embodiment, a lock acquisition hierarchy graph is constructed to facilitate monitoring of resource operations performed by each of a plurality of threads of a multithreaded program. The resource operations performed by each thread are monitored by a monitor. Any violation in the hierarchy is detected by a detector, which is triggered with an occurrence of a change in the graph.
-
Citations
28 Claims
-
1. A method, comprising:
-
constructing a lock acquisition hierarchy graph to facilitate monitoring of resource operations corresponding to each of a plurality of threads of a multithreaded program;
monitoring the resource operations being performed in accordance with a hierarchy; and
detecting a violation in the hierarchy, wherein the detecting of the violation is triggered with an occurrence of a change in the graph. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A system, comprising:
-
a monitor to construct a lock acquisition hierarchy graph to facilitate monitoring of resource operations corresponding to each of a plurality of threads of a multithreaded program, and monitor the resource operations being performed in accordance with a hierarchy; and
a detector to detect a violation in the hierarchy, wherein the detecting of the violation is triggered with an occurrence of a change in the graph. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. An apparatus, comprising
a processor; - and
a storage medium coupled with the processor, the storage device having stored thereon data representing sets of instructions, the sets of instructions which, when executed by the processor, cause the processor to;
construct a lock acquisition hierarchy graph to facilitate monitoring of resource operations corresponding to each of a plurality of threads of a multithreaded program, monitor the resource operations being performed in accordance with a hierarchy, and detect a violation in the hierarchy, wherein the detecting of the violation is triggered with an occurrence of a change in the graph. - View Dependent Claims (16, 17, 18, 19, 20, 21)
- and
-
22. A machine-readable medium having stored thereon data representing sets of instructions which, when executed by a machine, cause the machine to:
-
construct a lock acquisition hierarchy graph to facilitate monitoring of resource operations corresponding to each of a plurality of threads of a multithreaded program;
monitor the resource operations being performed in accordance with a hierarchy; and
detect a violation in the hierarchy, wherein the detecting of the violation is triggered with an occurrence of a change in the graph. - View Dependent Claims (23, 24, 25, 26, 27, 28)
-
Specification