IP Library › Granted Patent US 10,303,580
Granted Patent B2
US 10,303,580 · App. 15/403,314 · Granted May 28, 2019

Controlling debug processing

Inventors: Nicholas K. Lincoln (Middle Wallop, GB); Simon D. Stone (Southampton, GB)
Assignee: International Business Machines Corporation
G06F11/3636G06F9/5055
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,303,580
App. No.
15/403,314
Granted
May 28, 2019
Kind
B2
Abstract

Execution of a debug process on a thread of an application is monitored to detect resource contention caused by the debug process. In response to detecting a contention for a resource caused by the debug process, execution of the debug process is controlled in accordance with a debug policy. The debug policy defines a control action to be implemented based on one or more rules.

Claims (68)

1. A computer-implemented method of controlling debug processing,

the method comprising:

identifying a potential resource contention based on an application;

generating a debug policy based on the identified potential resource contention;

detecting during execution of a debug process, a resource contention between a first thread of the application and the debug process;

determining the resource contention is caused at least in part, by the debug process; and

in response to determining the resource contention is caused, at least in part, by the debug process, controlling execution of the debug process in accordance with the debug policy.

2. The computer-implemented method of claim 1 , wherein the debug policy comprises at least one rule defining how the debug process may execute on the first thread of the application.

3. The computer-implemented method of claim 1 , further comprising:

obtaining the debug policy from a server computer;

wherein the debug policy is centrally defined, managed, modified, stored and distributed.

4. The computer-implemented method of claim 1 , further comprising:

analyzing the application to identify a potential resource contention; and

generating the debug policy based, at least in part, on the identified potential resource contention.

5. The computer-implemented method of claim 1 , further comprising:

initiating execution of the debug process on the first thread of the application;

wherein:

debug information is logged with respect to the first thread; and

debug information is not logged with respect to a second thread of the application.

6. The computer-implemented method of claim 1 , wherein execution of the debug process comprises:

interrogating the debug policy to identify the control action to be performed, based at least in part, on the resource contention; and

performing the control action.

7. The computer-implemented method of claim 1 , wherein the application is implemented by a virtual machine.

8. The computer-implemented method of claim 1 , wherein the application is provided as a service of a cloud server.

9. A computer program product for controlling debug processing, comprising:

one or more computer readable storage media and program instructions stored on the one or more computer readable storage media, the program instructions comprising instructions to perform:

identifying a potential resource contention based on an application;

generating a debug policy based on the identified potential resource contention;

detecting during execution of a debug process, a resource contention between a first thread of the application and the debug process;

determining the resource contention is caused at least in part, by the debug process; and

in response to determining the resource contention is caused, at least in part, by the debug process, controlling execution of the debug process in accordance with the debug policy.

10. The computer program product of claim 9 , wherein the debug policy comprises at least one rule defining how the debug process may execute on the first thread of the application.

11. The computer program product of claim 9 , wherein the program instructions further comprise program instructions to perform:

obtaining the debug policy from a server computer;

wherein the debug policy is centrally defined, managed, modified, stored and distributed.

12. The computer program product of claim 9 , wherein the program instructions further comprise program instructions to perform:

analyzing the application to identify a potential resource contention; and

generating the debug policy based, at least in part, on the identified potential resource contention.

13. The computer program product of claim 9 , wherein the program instructions further comprise program instructions to perform:

initiating execution of the debug process on the first thread of the application;

wherein:

debug information is logged with respect to the first thread; and

debug information is not logged with respect to a second thread of the application.

14. The computer program product of claim 9 , wherein execution of the debug process comprises program instructions to perform:

interrogating the debug policy to identify the control action to be performed, based at least in part, on the resource contention; and

performing the control action.

15. A computer system comprising:

one or more computer processors;

one or more computer-readable storage media;

program instructions stored on the computer-readable storage media for execution by at least one of the one or more processors, the program instructions comprising instructions to perform:

identifying a potential resource contention based on an application;

generating a debug policy based on the identified potential resource contention;

detecting during execution of a debug process, a resource contention between a first thread of the application and the debug process;

determining the resource contention is caused at least in part, by the debug process; and

in response to determining the resource contention is caused, at least in part, by the debug process, controlling execution of the debug process in accordance with the debug policy.

16. The computer system of claim 15 , wherein the debug policy comprises at least one rule defining how the debug process may execute on the first thread of the application.

17. The computer system of claim 15 , wherein the program instructions further comprise program instructions to perform:

obtaining the debug policy from a server computer;

wherein the debug policy is centrally defined, managed, modified, stored and distributed.

18. The computer system of claim 15 , wherein the program instructions further comprise program instructions to perform:

analyzing the application to identify a potential resource contention; and

generating the debug policy, based at least in part, on the identified potential resource contention.

19. The computer system of claim 15 , wherein the program instructions further comprise program instructions to perform:

initiating execution of the debug process on the first thread of the application;

wherein:

debug information is logged with respect to the first thread; and

debug information is not logged with respect to a second thread of the application.

20. The computer system of claim 15 , wherein the application is implemented by a virtual machine.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 11, 2017
From: LINCOLN, NICHOLAS K.; STONE, SIMON D.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 040944/0026 →
Continuity (1)
Related Publication 20180196736A1 · Jul 12, 2018