Tracking data throughout an asset lifecycle
US-12166894-B2 · Dec 10, 2024 · US
US9600348B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9600348-B2 |
| Application number | US-201213884643-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jan 5, 2012 |
| Priority date | Jan 10, 2011 |
| Publication date | Mar 21, 2017 |
| Grant date | Mar 21, 2017 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
The present disclosure provides a computer program product and activity recording system for identifying idleness in a processor via a concurrent software environment. A thread state indicator records an indication of a synchronization state of a software thread that is associated with an identification of the software thread. A time profiler identifies a processor of the computer system being idle and records an indication that the processor is idle. A dispatch monitor identifies a dispatch of the software thread to the processor. In response to the dispatch monitor determining the indication identifies that the processor is idle and the indication of a synchronization state of the software thread indicating the software thread ceases to execute in the processor, the dispatch monitor generates a record attributing the idleness of the processor to the software thread and the indicated synchronization state.
Opening claim text (preview).
What is claimed is: 1. An activity recording system for a concurrent software environment executing software threads in a computer system, the activity recording system comprising: a software thread having a thread state indicator to record an indication of a synchronization state of the software thread, wherein the software thread ceases to execute in a processor of the computer system, the indication being associated with an identification of the software thread; a time profiler to poll, at regular time intervals, a program counter of the processor to determine that the processor is idle, and record, on a storage device in response to the polling, an indication that the processor is idle; and a dispatch monitor to identify a dispatch of the software thread to the processor, determine, in response to identifying the dispatch and based on the recorded indication that the processor is idle, that the software thread was idle prior to the dispatch, and generate, in response to determining that the software thread was idle prior to the dispatch, a record attributing an idleness of the processor to the software thread and the indicated synchronization state. 2. The activity recording system of claim 1 , wherein the time profiler further identifies an idle period for the processor as a period during which the processor is continuously idle, and wherein the record attributing the idleness attributes the idle period of the processor to both the software thread and the indicated synchronization state. 3. The activity recording system of claim 2 , wherein the processor is determined to be idle by determining that the processor has no software thread dispatched to execute therewith. 4. The activity recording system of claim 3 , further comprising a calculation component to calculate a proportion of time for which the software thread was in an indicated state. 5. The activity recording system of claim 3 , wherein the thread state indicator further records: an indication of a blocked state of the software thread, wherein during a blocked state the software thread is prevented from acquiring an exclusionary construct for achieving synchronization in the concurrent software environment; an indication of a wait state of the software thread, wherein during a wait state the software thread is waiting for processing to be undertaken by a different software thread; an indication of a ‘runnable’ state of the software thread, wherein during a runnable state the software thread is ready for execution in a processor of the computer system; and an indication of an unsynchronized state of the software thread. 6. The activity recording system of claim 5 , wherein the indication of the synchronization state of the software thread further includes an identifier of a shared resource sought for access by the software thread. 7. The activity recording system of claim 6 , further comprising: a resolver to determine a symbolic name associated with the identifier of the shared resource. 8. The activity recording system of claim 7 , wherein the time profiler is further adapted to determine that a software routine is included in a service library of routines of the software environment, and in response to determining that the software routine is included in the service library, to identify a calling routine for the software routine. 9. The activity recording system of claim 8 , wherein the time profiler identifies the calling routine using one or more of the resolver and a software call stack. 10. The activity recording system of claim 6 , wherein the shared resource is a software object. 11. The activity recording system of claim 5 , wherein the exclusionary construct is one of a lock and a monitor. 12. The activity recording system of claim 3 , wherein the synchronization state of the software thread is determined by one or more of the software thread itself and the concurrent software environment. 13. The activity recording system of claim 3 , wherein the time profiler further identifies the idle period by counting a number of regular intervals during which the processor is idle. 14. The activity recording system of claim 13 wherein the indication that the processor is idle includes the count of the number of regular intervals during which the processor is idle.
Data logging (G06F11/14, G06F11/2205 take precedence) · CPC title
where the assessed time is active or idle time · CPC title
Program synchronisation; Mutual exclusion, e.g. by means of semaphores · CPC title
the problem or solution involving locking · CPC title
Monitoring of software · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.