Patent ID: 8196116
Filing Date: 2012-06-05
Classification: G06F

Abstract:
1. A method for tracing state information of a target object, the method comprising: detecting a triggering event pertaining to the target object within an application object, wherein the application object is a thread of execution executed by a virtual machine, wherein said detecting is performed by a processor of a computer system in which the virtual machine operates, and wherein said virtual machine encapsulates details specific to hardware of the computer system such that the application object running on the virtual machine is executed in a manner independent from the hardware of the computer system; determining that a target state info object associated with the target object does not exist in a heap space of the virtual machine, wherein the target state info object is a data object dedicated to store state information of the target object, wherein the virtual machine further comprises the heap space for all application objects of the virtual machine, wherein the virtual machine allocates a memory area for a respective application object in the heap space when the respective application object is created and garbage-collects the memory area for the respective application object when the respective application object becomes inactive; creating the target state info object according to a type defined for the target state info object; storing the state information of the target object in the created target state info object; and associating the target object with the created target state info object, said associating comprising creating a weak hash map entry, said associating comprising assigning the target object to a key of the weak hash map entry, and said associating comprising assigning the target state info object to a value of the weak hash map entry, and wherein said weak hash map entry enables the virtual machine to garbage-collect the value of the weak hash map entry upon garbage-collecting the key of the weak hash map entry.