METHODS AND APPARATUS TO MANAGE OBJECT LOCKS
First Claim
1. A method to bypass an object lock, comprising:
- receiving an object lock request from a processor, the lock request associated with object lock code to lock an object;
generating object lock-bypass code based on a type of the processor, the object lock-bypass code to execute in a managed runtime in response to receiving the object lock request;
identifying a type of instruction set architecture (ISA) associated with the processor;
invoking a checkpoint instruction for the processor based on the identified ISA;
suspending the object lock code from executing and executing target code when the object is uncontended; and
allowing the object lock code to execute when the object is contended.
1 Assignment
0 Petitions
Accused Products
Abstract
Example methods and apparatus to manage object locks are disclosed. A disclosed example method includes receiving an object lock request from a processor, the lock request associated with object lock code to lock an object, and generating object lock-bypass code based on a type of the processor, the object lock-bypass code to execute in a managed runtime in response to receiving the object lock request. The example method also includes identifying a type of instruction set architecture (ISA) associated with the processor, invoking a checkpoint instruction for the processor based on the identified ISA, suspending the object lock code from executing and executing target code when the object is uncontended, and allowing the object lock code to execute when the object is contended.
43 Citations
21 Claims
-
1. A method to bypass an object lock, comprising:
-
receiving an object lock request from a processor, the lock request associated with object lock code to lock an object; generating object lock-bypass code based on a type of the processor, the object lock-bypass code to execute in a managed runtime in response to receiving the object lock request; identifying a type of instruction set architecture (ISA) associated with the processor; invoking a checkpoint instruction for the processor based on the identified ISA; suspending the object lock code from executing and executing target code when the object is uncontended; and allowing the object lock code to execute when the object is contended. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. An apparatus to bypass an object lock, comprising:
-
an exception handler monitor to receive an object lock request from a runtime environment, the lock request associated with object lock code to lock an object; a bypass code shell builder to generate object lock-bypass code; an instruction set architecture (ISA) identifier to identify a type of ISA associated with a processor executing the runtime environment, the bypass code shell builder to populate the object lock-bypass code with instructions based on the identified type of ISA; and an object lock tester to invoke a checkpoint instruction and suspend the object lock code when the object is uncontended, and to allow the object lock code when the object is contended. - View Dependent Claims (13, 14)
-
-
15. A tangible article of manufacture storing machine accessible instructions that, when executed, cause a machine to:
-
receive an object lock request from a processor, the lock request associated with object lock code to lock an object; generate object lock-bypass code based on a type of the processor, the object lock-bypass code to execute in a managed runtime in response to receiving the object lock request; identify a type of instruction set architecture (ISA) associated with the processor; invoke a checkpoint instruction for the processor based on the identified ISA; suspend the object lock code from executing and executing target code when the object is uncontended; and allow the object lock code to execute when the object is contended. - View Dependent Claims (16, 17, 18, 19, 20)
-
-
21. (canceled)
Specification