← Back to Patent Explorer
US6003143A Expired / Lapsed US ⏱️ 0.0 years remaining

Tool and method for diagnosing and correcting errors in a computer program

Assignee: Hewlett Packard Development Co LP
•
Filing: 1997-02-28
•
Granted: 1999-12-14
•
Expires: 2017-02-28
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract In a computer system, an improved tool and method for debugging complex computer programs is disclosed. The tool extracts critical debugging information from computer memory and/or remote storage memory and uses this information to graphically depict call relationships among various functions comprising the program which is the subject of the debugging operation. Debug commands are accepted by the tool through a graphical user interface using operations performed by the user directly on the graphical representation of program functions. The ability of the tool to accept user commands through the graphical user interface and to display critical debugging information using this same interface greatly facilitates program debugging.

Inventors

  • 👤 Thomas Dongsuk Kim
  • 👤 Seth Gordon Hawthorne
  • 👤 Joseph Stanley Kosinski

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-31 14:07
CPC Classifications
G; G06; G06F; G06F11/00; G06F11/36; G06F11/3698; G06F11/30; G06F11/32; G06F11/323; G06F11/3604; G06F11/3612

Claims Analysis

Total Claims: 24
Claim 1
Independent Claim 81 words
A method for analyzing a program having a plurality of functions, the method comprising the steps, performed by a computer system having a graphical output display device, of: analyzing symbolic information associated with the program to construct a call tree graph of the functions included in the program; interrupting execution of the program at a predetermined point; retrieving state information associated with the program; and displaying at least a portion of the call tree graph on the graphical output display device.
Claim 2
Independent Claim 81 words
A method for analyzing a program having a plurality of functions, the method comprising the steps, performed by a computer system having a graphical output display device, of: analyzing symbolic information associated with the program to construct a call tree graph of the functions included in the program; interrupting execution of the program at a predetermined point; retrieving state information associated with the program; and displaying at least a portion of the call tree graph on the graphical output display device.
Claim 3
Dependent Claim 35 words
A method as recited in claim 1 wherein the step of displaying at least a portion of the call tree graph on the graphical output display device operates to display the entire call tree graph.
Claim 4
Dependent Claim 18 words
A method as recited in claim 1 wherein the call tree graph is a cyclic call tree graph.
Claim 5
Dependent Claim 18 words
A method as recited in claim 1 wherein the call tree graph is an acyclic call tree graph.
Claim 6
Dependent Claim 30 words
A method as recited in claim 1 further comprising the step of highlighting the nodes on the call tree graph that have already been executed and their associated internodal lines.
Claim 7
Dependent Claim 19 words
A method as recited in claim 1 further comprising the step of receiving a debug command from a user.
Claim 8
Dependent Claim 55 words
A method as recited in claim 6 further comprising the step of generating a movable pointer on the graphical output display device and wherein the step of receiving a debug command from a user is performed using the relative positions of the call tree graph and the movable pointer on the graphical output display device.
Claim 9
Dependent Claim 34 words
A method as recited in claim 1 further comprising the step of highlighting the portions of the call tree graph on the graphical output display device that correspond to the state of the program.
Claim 10
Dependent Claim 50 words
A method as recited in claim 1 wherein the steps of analyzing symbolic information, interrupting execution of the program, and retrieving state information are performed on a server computer and where the step of displaying at least a portion of the call tree graph is performed on a client computer.
Claim 11
Independent Claim 79 words
A method for debugging a program, comprising the steps of: displaying on a computer screen a call tree graph of at least a portion of the program that is to be debugged; highlighting those portions of the call tree graph depicting functions of the program that have already been executed; and inputting a debug command by associating a pointer on the graphical representation of the program with the location in the program where the command is to be executed.
Claim 12
Independent Claim 79 words
A method for debugging a program, comprising the steps of: displaying on a computer screen a call tree graph of at least a portion of the program that is to be debugged; highlighting those portions of the call tree graph depicting functions of the program that have already been executed; and inputting a debug command by associating a pointer on the graphical representation of the program with the location in the program where the command is to be executed.
Claim 13
Dependent Claim 29 words
The method of claim 10, wherein the call tree graph includes function nodes and the debug command expands the call tree graph at the node associated with the pointer.
Claim 14
Dependent Claim 28 words
The method of claim 10, wherein the call tree graph includes function nodes and the debug command collapses the graphical representation at the node associated with the pointer.
Claim 15
Dependent Claim 36 words
The method of claim 10, further comprising the steps of; executing the program in accordance with the debug command; and highlighting those portions of the call tree graph executed as a result of the debug command.
Claim 16
Dependent Claim 27 words
The method of claim 10, wherein the debug command alters the display on the computer screen without causing the program being debugged to execute additional program steps.
Claim 17
Dependent Claim 121 words
A data processing apparatus for analyzing a program having a plurality of functions, the apparatus comprising: a first processing portion configured to analyze symbolic information associated with the program to construct a call tree graph of the functions included in the program; a second processing portion configured to interrupt execution of the program at a predetermined point; a third processing portion configured to retrieve state information associated with the program; a fourth processing portion configured to display at least a portion of the call tree graph on the graphical output display device; and a fifth processing portion configured to highlight the portions of the call tree graph on the graphical output display device that correspond to the state of the program.
Claim 18
Dependent Claim 121 words
A data processing apparatus for analyzing a program having a plurality of functions, the apparatus comprising: a first processing portion configured to analyze symbolic information associated with the program to construct a call tree graph of the functions included in the program; a second processing portion configured to interrupt execution of the program at a predetermined point; a third processing portion configured to retrieve state information associated with the program; a fourth processing portion configured to display at least a portion of the call tree graph on the graphical output display device; and a fifth processing portion configured to highlight the portions of the call tree graph on the graphical output display device that correspond to the state of the program.
Claim 19
Dependent Claim 21 words
An apparatus as recited in claim 15 wherein the fourth processing portion is configurable to display the entire call tree graph.
Claim 20
Dependent Claim 18 words
An apparatus as recited in claim 15 wherein the call tree graph is a cyclic call tree graph.
Claim 21
Dependent Claim 18 words
An apparatus as recited in claim 15 wherein the call tree graph is an acyclic call tree graph.
Claim 22
Dependent Claim 30 words
An apparatus as recited in claim 15 wherein the fifth processing portion highlights the nodes on the call tree graph that have already been executed and their associated internodal lines.
Claim 23
Dependent Claim 132 words
A computer program product comprising: a computer usable medium having computer readable code embodied therein for debugging a program, the computer program product comprising: first computer readable program code devices configured to cause a computer system to display on a computer screen a call tree graph of at least a portion of the program that is to be debugged; second computer readable program code devices configured to cause a computer system to highlight those portions of the call tree graph depicting functions of the program that have already been executed; and third computer readable program code devices configured to cause a computer system to input a debug command by associating a pointer on the graphical representation of the program with the location in the program where the command is to be executed.
Claim 24
Dependent Claim 132 words
A computer program product comprising: a computer usable medium having computer readable code embodied therein for debugging a program, the computer program product comprising: first computer readable program code devices configured to cause a computer system to display on a computer screen a call tree graph of at least a portion of the program that is to be debugged; second computer readable program code devices configured to cause a computer system to highlight those portions of the call tree graph depicting functions of the program that have already been executed; and third computer readable program code devices configured to cause a computer system to input a debug command by associating a pointer on the graphical representation of the program with the location in the program where the command is to be executed.

References Cited (Backward Citations)

US4595981A Cited
US5210859A Cited
US5124989A Cited
US5313616A Cited
US5375125A Cited
US5410648A Cited
US5297150A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2002-12-13 2003-06-14 2003-12-14 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2006-12-13 2007-06-14 2007-12-14 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2010-12-13 2011-06-14 2011-12-14 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag