Methods and systems for determining and displaying activities of concurrent processes
OwnerMichael L. Boucher, Kristopher Richards +1inventors
InventorsMichael L. Boucher, Kristopher Richards, Jeremy C. Week
Life of this patent
Estimating the term…
Abstract
Methods, systems and articles of manufacture consistent with the present invention determine the state of each thread when a selected thread is in a selected state, and quantify this information during a measuring period. Methods, systems and articles of manufacture consistent with the present invention also determine the state of each thread when any of the threads is in a selected state, and quantify this information during a measuring period.
Claims73
A method in a data processing system having a program with a plurality of threads having a plurality of states, the method comprising the steps of:
- running the program and determining the state of each thread during a measuring period, wherein the measuring period comprises a plurality of time intervals;
- receiving user input indicating a selected one of the plurality of states;
- receiving user input indicating a selected one of the plurality of threads;
- determining a portion of the measuring period during which the selected thread is in the selected state;
- determining, during the portion of the measuring period, whether another thread other than the selected thread is in another state other than the selected state;
- and
- when it is determined that the other thread is in the other state, determining an amount of time that the other thread is in the other state.
A method in a data processing system having a program with a plurality of threads having a plurality of states, wherein the program executes during a measuring period and the measuring period comprises a plurality of time intervals, the method comprising the steps of:
- receiving user input indicating one of the plurality of states to anchor;
- receiving user input indicating a selected one of the plurality of threads;
- determining a portion of the measuring period during which the selected thread is in the anchored state;
- determining, during the portion of the measuring period, whether another thread other than the selected thread is in another state other than the anchored state;
- and
- when it is determined that the other thread is in the other state, determining an amount of time that the other thread is in the other state.
A method in a data processing system having a program with a plurality of threads having a plurality of states, wherein the program executes during a measuring period and the measuring period comprises a plurality of time intervals, the method comprising the steps of:
- receiving user input indicating a selected one of the plurality of states;
- receiving user input indicating a selected one of the plurality of threads;
- and
- determining a portion of the measuring period during which the selected thread is in the selected state.
A method in a data processing system having a program with a plurality of states, wherein the program executes via a plurality of paths during a measuring period, the method comprising the steps of:
- receiving user input indicating a selected one of the plurality of states;
- receiving user input indicating a selected one of the plurality of paths of execution;
- and
- determining a portion of the measuring period during which the selected path of execution is in the selected state.
A method in a data processing system having a program with a plurality of threads having a plurality of states, the method comprising the steps of:
- running the program and determining the state of each thread during a measuring period, wherein the measuring period comprises a plurality of time intervals;
- receiving user input indicating a selected one of the plurality of states;
- receiving user input indicating a selected one of the plurality of threads;
- determining a portion of the measuring period during which the selected thread is in the selected state;
- determining, during the portion of the measuring period, whether another thread other than the selected thread is in the selected state;
- and
- when it is determined that the other thread is in the selected state, determining an amount of time that the other thread is in the selected state.
A method in a data processing system having a program with a plurality of threads having a plurality of states, wherein the program executes during a measuring period and the measuring period comprises a plurality of time intervals, the method comprising the steps of:
- receiving user input indicating one of the plurality of states to anchor;
- receiving user input indicating a selected one of the plurality of threads;
- determining a portion of the measuring period during which the selected thread is in the anchored state;
- determining, during the portion of the measuring period, whether another thread other than the selected thread is in the anchored state;
- and
- when it is determined that the other thread is in the anchored state, determining an amount of time that the other thread is in the anchored state.
A method in a data processing system having a program with a plurality of threads having a plurality of states, the method comprising the steps of:
- running the program and determining the state of each thread during a measuring period, wherein the measuring period comprises a plurality of time intervals;
- receiving user input indicating a selected one of the plurality of states;
- determining a portion of the measuring period during which any of the plurality of threads is in the selected state;
- determining, during the portion of the measuring period, whether a selected one of the plurality of threads is in another state other than the selected state;
- and
- when it is determined that the selected thread is in the other state, determining an amount of time that the selected thread is in the other state.
A method in a data processing system having a program with a plurality of threads having a plurality of states, wherein the program executes during a measuring period and the measuring period comprises a plurality of time intervals, the method comprising the steps of:
- receiving user input indicating one of the plurality of states to anchor;
- determining a portion of the measuring period during which any of the plurality of threads is in the anchored state;
- determining, during the portion of the measuring period, whether a selected one of the plurality of threads is in another state other than the anchored state;
- and
- when it is determined that the selected thread is in the other state, determining an amount of time that the selected thread is in the other state.
A method in a data processing system having a program with a plurality of threads having a plurality of states, wherein the program executes during a measuring period and the measuring period comprises a plurality of time intervals, the method comprising the steps of:
- receiving user input indicating a selected one of the plurality of states;
- and
- determining a portion of the measuring period during which any of the plurality of threads is in the selected state.
A method in a data processing system having a program with a plurality of states, wherein the program executes via a plurality of paths during a measuring period, the method comprising the steps of:
- receiving user input indicating a selected one of the plurality of states;
- and
- determining a portion of the measuring period during which any of the plurality of paths of execution is in the selected state.
A method in a data processing system having a program with a plurality of threads having a plurality of states, the method comprising the steps of:
- running the program and determining the state of each thread during a measuring period, wherein the measuring period comprises a plurality of time intervals;
- receiving user input indicating a selected one of the plurality of states;
- determining a portion of the measuring period during which any of the plurality of threads is in the selected state;
- determining, during the portion of the measuring period, whether a selected one of the plurality of threads is in the selected state;
- and
- when it is determined that the selected thread is in the selected state, determining an amount of time that the selected thread is in the selected state.
A method in a data processing system having a program with a plurality of threads having a plurality of states, wherein the program executes during a measuring period and the measuring period comprises a plurality of time intervals, the method comprising the steps of:
- receiving user input indicating one of the plurality of states to anchor;
- determining a portion of the measuring period during which any of the plurality of threads is in the anchored state;
- determining, during the portion of the measuring period, whether a selected one of the plurality of threads is in the anchored state;
- and
- when it is determined that the selected thread is in the anchored state, determining an amount of time that the selected thread is in the anchored state.
A computer-readable medium containing instructions for controlling a data processing system to perform a method, the data processing system having a program with a plurality of threads having a plurality of states, the method comprising the steps of:
- running the program and determining the state of each thread during a measuring period, wherein the measuring period comprises a plurality of time intervals;
- receiving user input indicating a selected one of the plurality of states;
- receiving user input indicating a selected one of the plurality of threads;
- determining a portion of the measuring period during which the selected thread is in the selected state;
- determining, during the portion of the measuring period, whether another thread other than the selected thread is in another state other than the selected state;
- and
- when it is determined that the other thread is in the other state, determining an amount of time that the other thread is in the other state.
A computer-readable medium containing instructions for controlling a data processing system to perform a method, the data processing system having a program with a plurality of threads having a plurality of states, wherein the program executes during a measuring period and the measuring period comprises a plurality of time intervals, the method comprising the steps of:
- receiving user input indicating one of the plurality of states to anchor;
- receiving user input indicating a selected one of the plurality of threads;
- determining a portion of the measuring period during which the selected thread is in the anchored state;
- determining, during the portion of the measuring period, whether another thread other than the selected thread is in another state other than the anchored state;
- and
- when it is determined that the other thread is in the other state, determining an amount of time that the other thread is in the other state.
A computer-readable medium containing instructions for controlling a data processing system to perform a method, the data processing system having a program with a plurality of threads having a plurality of states, wherein the program executes during a measuring period and the measuring period comprises a plurality of time intervals, the method comprising the steps of:
- receiving user input indicating a selected one of the plurality of states;
- receiving user input indicating a selected one of the plurality of threads;
- and
- determining a portion of the measuring period during which the selected thread is in the selected state.
A computer-readable medium containing instructions for controlling a data processing system to perform a method, the data processing system having a program with a plurality of states, wherein the program executes via a plurality of paths during a measuring period, the method comprising the steps of:
- receiving user input indicating a selected one of the plurality of states;
- receiving user input indicating a selected one of the plurality of paths of execution;
- and
- determining a portion of the measuring period during which the selected path of execution is in the selected state.
A computer-readable medium containing instructions for controlling a data processing system to perform a method, the data processing system having a program with a plurality of threads having a plurality of states, the method comprising the steps of:
- running the program and determining the state of each thread during a measuring period, wherein the measuring period comprises a plurality of time intervals;
- receiving user input indicating a selected one of the plurality of states;
- receiving user input indicating a selected one of the plurality of threads;
- determining a portion of the measuring period during which the selected thread is in the selected state;
- determining, during the portion of the measuring period, whether another thread other than the selected thread is in the selected state;
- and
- when it is determined that the other thread is in the selected state, determining an amount of time that the other thread is in the selected state.
A computer-readable medium containing instructions for controlling a data processing system to perform a method, the data processing system having a program with a plurality of threads having a plurality of states, wherein the program executes during a measuring period and the measuring period comprises a plurality of time intervals, the method comprising the steps of:
- receiving user input indicating one of the plurality of states to anchor;
- receiving user input indicating a selected one of the plurality of threads;
- determining a portion of the measuring period during which the selected thread is in the anchored state;
- determining, during the portion of the measuring period, whether another thread other than the selected thread is in the anchored state;
- and
- when it is determined that the other thread is in the anchored state, determining an amount of time that the other thread is in the anchored state.
A computer-readable medium containing instructions for controlling a data processing system to perform a method, the data processing system having a program with a plurality of threads having a plurality of states, the method comprising the steps of:
- running the program and determining the state of each thread during a measuring period, wherein the measuring period comprises a plurality of time intervals;
- receiving user input indicating a selected one of the plurality of states;
- determining a portion of the measuring period during which any of the plurality of threads is in the selected state;
- determining, during the portion of the measuring period, whether a selected one of the plurality of threads is in another state other than the selected state;
- and
- when it is determined that the selected thread is in the other state, determining an amount of time that the selected thread is in the other state.
A computer-readable medium containing instructions for controlling a data processing system to perform a method, the data processing system having a program with a plurality of threads having a plurality of states, wherein the program executes during a measuring period and the measuring period comprises a plurality of time intervals, the method comprising the steps of:
- receiving user input indicating one of the plurality of states to anchor;
- determining a portion of the measuring period during which any of the plurality of threads is in the anchored state;
- determining, during the portion of the measuring period, whether a selected one of the plurality of threads is in another state other than the anchored state;
- and
- when it is determined that the selected thread is in the other state, determining an amount of time that the selected thread is in the other state.
A computer-readable medium containing instructions for controlling a data processing system to perform a method, the data processing system having a program with a plurality of threads having a plurality of states, wherein the program executes during a measuring period and the measuring period comprises a plurality of time intervals, the method comprising the steps of:
- receiving user input indicating a selected one of the plurality of states;
- and
- determining a portion of the measuring period during which any of the plurality of threads is in the selected state.
A computer-readable medium containing instructions for controlling a data processing system to perform a method, the data processing system having a program with a plurality of states, wherein the program executes via a plurality of paths during a measuring period, the method comprising the steps of:
- receiving user input indicating a selected one of the plurality of states;
- and
- determining a portion of the measuring period during which any of the plurality of paths of execution is in the selected state.
A computer-readable medium containing instructions for controlling a data processing system to perform a method, the data processing system having a program with a plurality of threads having a plurality of states, the method comprising the steps of:
- running the program and determining the state of each thread during a measuring period, wherein the measuring period comprises a plurality of time intervals;
- receiving user input indicating a selected one of the plurality of states;
- determining a portion of the measuring period during which any of the plurality of threads is in the selected state;
- determining, during the portion of the measuring period, whether a selected one of the plurality of threads is in the selected state;
- and
- when it is determined that the selected thread is in the selected state, determining an amount of time that the selected thread is in the selected state.
A computer-readable medium containing instructions for controlling a data processing system to perform a method, the data processing system having a program with a plurality of threads having a plurality of states, wherein the program executes during a measuring period and the measuring period comprises a plurality of time intervals, the method comprising the steps of:
- receiving user input indicating one of the plurality of states to anchor;
- determining a portion of the measuring period during which any of the plurality of threads is in the anchored state;
- determining, during the portion of the measuring period, whether a selected one of the plurality of threads is in the anchored state;
- and
- when it is determined that the selected thread is in the anchored state, determining an amount of time that the selected thread is in the anchored state.
A data processing system comprising:
- a memory device further comprising
- a target program with a plurality of threads having a plurality of states, wherein the target program executes during a measuring period and the measuring period comprises a plurality of time intervals;
- and
- a monitoring program that receives user input indicating one of the plurality of states to anchor, that receives user input indicating a selected one of the plurality of threads, that determines a portion of the measuring period during which the selected thread is in the anchored state, that determines, during the portion of the measuring period, whether another thread other than the selected thread is in another state other than the anchored state, and when it is determined that the other thread is in the other state, the monitoring program determines an amount of time that the other thread is in the other state;
- and
- a processor for running the target program and the monitoring program.
A data processing system comprising:
- a memory device further comprising:
- a target program with a plurality of threads having a plurality of states, wherein the target program executes during a measuring period and the measuring period comprises a plurality of time intervals;
- and
- a monitoring program that receives user input indicating a selected one of the plurality of states, that receives user input indicating a selected one of the plurality of threads, and that determines a portion of the measuring period during which the selected thread is in the selected state;
- and
- a processor for running the target program and the monitoring program.
A data processing system comprising:
- a memory device further comprising:
- a target program with a plurality of threads having a plurality of states, wherein the target program executes during a measuring period and the measuring period comprises a plurality of time intervals;
- and
- a monitoring program that receives user input indicating one of the plurality of states to anchor, that receives user input indicating a selected one of the plurality of threads, that determines a portion of the measuring period during which the selected thread is in the anchored state, that determines, during the portion of the measuring period, whether another thread other than the selected thread is in the anchored state, and when it is determined that the other thread is in the anchored state, the monitoring program determines an amount of time that the other thread is in the anchored state;
- and
- a processor for running the target program and the monitoring program.
A data processing system comprising:
- a memory device further comprising:
- a target program with a plurality of threads having a plurality of states, wherein the target program executes during a measuring period and the measuring period comprises a plurality of time intervals;
- and
- a monitoring program that receives user input indicating one of the plurality of states to anchor, that determines a portion of the measuring period during which any of the plurality of threads is in the anchored state, that determines, during the portion of the measuring period, whether a selected one of the plurality of threads is in another state other than the anchored state, and when it is determined that the selected thread is in the other state, the monitoring program determines an amount of time that the selected thread is in the other state;
- and
- a processor for running the target program and the monitoring program.
A data processing system comprising:
- a memory device further comprising:
- a target program with a plurality of threads having a plurality of states, wherein the target program executes during a measuring period and the measuring period comprises a plurality of time intervals;
- and
- a monitoring program that receives user input indicating a selected one of the plurality of states, and that determines a portion of the measuring period during which any of the plurality of threads is in the selected state;
- and
- a processor for running the target program and the monitoring program.
A data processing system comprising:
- a memory device further comprising:
- a target program with a plurality of threads having a plurality of states, wherein the target program executes during a measuring period and the measuring period comprises a plurality of time intervals;
- and
- a monitoring program that receives user input indicating one of the plurality of states to anchor, that determines a portion of the measuring period during which any of the plurality of threads is in the anchored state, that determines, during the portion of the measuring period, whether a selected one of the plurality of threads is in the anchored state, and when it is determined that the selected thread is in the anchored state, the monitoring program determines an amount of time that the selected thread is in the anchored state;
- and
- a processor for running the target program and the monitoring program.
A system having a program with a plurality of states, wherein the program executes via a plurality of paths during a measuring period, the system comprising:
- means for receiving user input indicating a selected one of the plurality of states;
- means for receiving user input indicating a selected one of the plurality of paths of execution;
- and
- means for determining a portion of the measuring period during which the selected path of execution is in the selected state.
Dependencies are inferred from the claim text.