IP Library Granted Patent US 7,418,630
Granted Patent B1
US 7,418,630 · App. 11/220,507 · Granted Aug 26, 2008

Method and apparatus for computer system diagnostics using safepoints

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 7,418,630
App. No.
11/220,507
Granted
Aug 26, 2008
Kind
B1
Abstract

A method for safepointing a system that includes receiving a stop command by an executing thread from a master, wherein the executing thread executes an operating system, continuing execution of the executing thread until a safepoint is reached after receiving the stop command, halting execution of the executing thread at the safepoint; and evaluating a response from the executing thread to diagnosis the system.

Claims (62)

1. A method for safepointing a system comprising:

receiving a stop command by an executing thread from a master, wherein the executing thread executes an operating system;

continuing execution of the executing thread until a safepoint is reached after receiving the stop command;

halting execution of the executing thread at the safepoint; and

evaluating a response from the executing thread to diagnosis the system.

2. The method of claim 1 , further comprising:

inserting the safepoint in source code of the operating system.

3. The method of claim 2 , wherein the safepoint comprises safepoint code inserted into source code executing on the system.

4. The method of claim 3 , wherein safepoint code is inserted into source code using dynamic code generation.

5. The method of claim 1 , wherein evaluating the response comprises detecting an error if a response is not received from the executing thread.

6. The method of claim 5 , further comprising diagnosing the system using the error.

7. The method of claim 1 , wherein the master comprises a plurality of master nodes.

8. The method of claim 7 , wherein the plurality of master nodes synchronize sending the stop command.

9. The method of claim 1 , wherein the frequency of the stop command is configurable.

10. The method of claim 1 , further comprising:

inserting the safepoint in an application;

receiving a stop command by an application thread from the master;

continuing execution of the application thread until a safepoint is reached after receiving the stop command;

halting execution of the application thread at the safepoint; and

evaluating a response from the application thread to diagnosis the system.

11. The method of claim 1 , further comprising:

receiving a restart command from the master by the executing thread if the response is received by each executing thread.

12. The method of claim 1 , further comprising:

forwarding the stop command from a node control master to a subordinate after reaching the safepoint.

13. The method of claim 12 , further comprising:

forwarding a restart command to the subordinate by the node control master.

14. The method of claim 12 , wherein evaluating the response comprises detecting an error if a response is not received from the subordinate.

15. The method of claim 14 , wherein the error is used to diagnosis the system.

16. A system for safepointing comprising:

a plurality of subordinates configured to:

receive a stop command,

continue execution until reaching a safepoint after receiving the stop command,

halt execution at the safepoint, and

forwarding a response if the stop command is processed; and

a master configured to:

send the stop command to a subordinate in the plurality of subordinates, wherein the subordinate is an operating system thread; and

determine whether the response is received from each subordinate in the plurality of subordinates,

wherein the response from each subordinate is evaluated to diagnosis the system.

17. The system of claim 16 , wherein the safepoint comprises safepoint code inserted into source code executing on the system.

18. The system of claim 17 , wherein safepoint code is inserted into source code using dynamic code generation.

19. The system of claim 16 , wherein the master is further configured to send a restart command to the subordinate if the response is received from each subordinate in the plurality of subordinates.

20. The system of claim 16 , wherein evaluating the response comprises detecting an error if a response is not received from each subordinate.

21. The system of claim 20 , wherein the error is used to diagnosis the system.

22. The system of claim 16 , wherein the master comprises a plurality of master nodes.

23. The system of claim 22 , wherein the plurality of master nodes synchronize sending the stop command.

24. The system of claim 16 , wherein the frequency of the stop command is configurable.

25. The system of claim 16 , further comprising:

a node control master configured to:

receive a stop command from the master, and

forward the stop command to each subordinate in the plurality of subordinates after reaching the safepoint.

26. The system of claim 25 , wherein the node control master is further configured to:

forward a restart command to each subordinate in the plurality of subordinates.

27. A distributed system having a plurality of nodes comprising:

a plurality of subordinates configured to:

receive a stop command,

continue execution until reaching a safepoint after receiving the stop command,

halt execution at the safepoint, and

forwarding a response if the stop command is processed; and

a master configured to:

send the stop command to a subordinate in the plurality of subordinates, wherein the subordinate is an operating system thread; and

determine whether the response is received from each subordinate in the plurality of subordinates,

wherein the response from each subordinate is evaluated to diagnosis the system.

Assignments (2)
MERGER AND CHANGE OF NAME Recorded Dec 16, 2015
From: ORACLE USA, INC.; SUN MICROSYSTEMS, INC.; ORACLE AMERICA, INC.
To: ORACLE AMERICA, INC.
Reel/Frame 037303/0349 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 7, 2005
From: VICK, CHRISTOPHER A.; VOTTA, JR., LAWRENCE G.
To: SUN MICROSYSTEMS, INC.
Reel/Frame 016963/0164 →