Patent ID: 8141053
Filing Date: 2012-03-20
Classification: G06F

Abstract:
1. A computer implemented method for sampling call stack information, the computer implemented method comprising: responsive to an interrupt, setting a first flag associated with a target thread in a first memory work area associated with a virtual machine and determining whether a second flag associated with the target thread in a second memory work area associated with a profiler is set, wherein the target thread is one of a plurality of threads created by the virtual machine, and wherein the second flag being set indicates whether the sampling is currently active for the target thread; responsive to a determination that the second flag is set, incrementing a counter for the target thread in the second memory work area, wherein the counter identifies a number of times that a sampling thread has been signaled to sample the target thread while the sampling of the call stack information for the target thread was active; responsive to a determination that the second flag is unset, setting the second flag; monitoring for an event corresponding to the target thread during execution of the plurality of threads created by the virtual machine; responsive to an occurrence of the event, determining whether the first flag is set; and responsive to the first flag being set, sending a request to the profiler to sample call stack information for the target thread, wherein the profiler obtains call stack information for the target thread from the virtual machine, and processes the call stack information for the target thread to generate a report of performance information for the target thread.