Claims Analysis
Total Claims: 26
Claim 1
Independent Claim
124 words
A method for debugging a computer application program on a computer system which includes a processor, a program counter, memory and program instructions, the method being designed to allow generation and insertion of corrective program instructions while continuing a debugging session, the method being implemented by said program instructions and comprising the steps of: detecting an error in said computer application program, which is executing during a debugging session, in said computer system's memory; dynamically fixing program code which contains said error without terminating said debugging session; and continuing the debugging session with said fixed program code by continuing said debugging session where said error occurred, whereby the program error was corrected without stopping the debugging session in order to recompile an entire program.
Claim 2
Independent Claim
124 words
A method for debugging a computer application program on a computer system which includes a processor, a program counter, memory and program instructions, the method being designed to allow generation and insertion of corrective program instructions while continuing a debugging session, the method being implemented by said program instructions and comprising the steps of: detecting an error in said computer application program, which is executing during a debugging session, in said computer system's memory; dynamically fixing program code which contains said error without terminating said debugging session; and continuing the debugging session with said fixed program code by continuing said debugging session where said error occurred, whereby the program error was corrected without stopping the debugging session in order to recompile an entire program.
Claim 3
Dependent Claim
118 words
The method for debugging a computer application program of claim 1 wherein said step of fixing program code which contains said error without terminating said debugging session comprises the additional steps of: calling a compiler and passing to the compiler a file of edited source code containing edits to correct said error; receiving from the compiler a recompiled object code file corresponding to said file of edited source code; creating a dynamic library file corresponding to said recompiled object code file; linking said dynamic library file to said computer application program; dynamically patching the computer application program to point to said dynamic library file; resetting the program counter; and moving break points to said recompiled object code file.
Claim 4
Dependent Claim
85 words
The method for debugging a computer application program of claim 2 wherein said step of resetting the program counter comprises the additional step of resetting the program counter to a location corresponding to a beginning of a same line in the recompiled object code file which corresponds to a specific line in the corresponding previous version of the object code wherein the error occurred in executing said specific line, if a function containing said same line was not modified in said recompiled object code file.
Claim 5
Dependent Claim
77 words
The method for debugging a computer application program of claim 2 wherein said compiler is configured to globalize static variables in said file of edited source code containing edits to correct said error, to provide data relating to constructors and destructors in said file of edited source code containing edits to correct said error and to provide data relating to floating point register settings in said file of edited source code containing edits to correct said error.
Claim 6
Independent Claim
202 words
A method for debugging a computer application program on a computer system which includes a processor, a program counter, memory and program instructions, the method being designed to allow generation and insertion of corrective program instructions while continuing a debugging session, the method being implemented by said program instructions and comprising the steps of: loading a debugger computer program into said memory; loading source code and object code for a compiled computer application program into said memory; requesting said debugger computer program to begin a run-me execution of said compiled computer application program object code; executing a fix and continue routine in said debugger computer program if an error is found, wherein a source code file containing said error is edited, recompiled and recompiled object code for said source code file containing said error is dynamically patched into previously loaded object code of said compiled computer application program; and said debugger restarting said run-time execution of said compiled computer application program object code which has been edited wherein said restart occurs in an area of said recompiled object code where said error was detected, whereby the program error was corrected without stopping the debugging session in order to recompile an entire program.
Claim 7
Independent Claim
202 words
A method for debugging a computer application program on a computer system which includes a processor, a program counter, memory and program instructions, the method being designed to allow generation and insertion of corrective program instructions while continuing a debugging session, the method being implemented by said program instructions and comprising the steps of: loading a debugger computer program into said memory; loading source code and object code for a compiled computer application program into said memory; requesting said debugger computer program to begin a run-me execution of said compiled computer application program object code; executing a fix and continue routine in said debugger computer program if an error is found, wherein a source code file containing said error is edited, recompiled and recompiled object code for said source code file containing said error is dynamically patched into previously loaded object code of said compiled computer application program; and said debugger restarting said run-time execution of said compiled computer application program object code which has been edited wherein said restart occurs in an area of said recompiled object code where said error was detected, whereby the program error was corrected without stopping the debugging session in order to recompile an entire program.
Claim 8
Dependent Claim
37 words
The method for debugging a computer application program of claim 5 wherein said object code for a compiled computer application program is generated using an enhanced compiler whereby object code produced by the compiler contains debugging aids.
Claim 9
Dependent Claim
20 words
The method for debugging a computer application program of claim 6 wherein said debugging aids comprises globalization of static variables.
Claim 10
Dependent Claim
25 words
The method for debugging a computer application program of claim 7 wherein said debugging aids further comprises data to permit restoration of floating point registers.
Claim 11
Dependent Claim
39 words
The method for debugging a computer application program of claim 7 wherein said debugging aids further comprises data to permit execution of constructor and destructor commands as required to restore variable contents to correct values upon restarting run-time debugging.
Claim 12
Dependent Claim
121 words
The method for debugging a computer application program of claim 5 wherein said step of executing a fix and continue routine in said debugger computer program if an error is found comprises the additional steps of: calling a compiler and passing to the compiler a file of edited source code containing edits to correct said error; receiving from the compiler a re, compiled object code file corresponding to said file of edited source code; linking said recompiled object code file to a corresponding previous version of said object code file; resetting the program counter; moving break points to said recompiled object code file; and restarting said application program at the point indicated by the program counter wherein the debugging process continues.
Claim 13
Dependent Claim
73 words
The method for debugging a computer application program of claim 10 wherein said step of linking said recompiled object code file to a corresponding previous version of said object code file comprises the additional step of patching an entry location of a function code section in said previous version of said object code file to point to a corresponding entry location of a corresponding function code section in said recompiled object code file.
Claim 14
Dependent Claim
133 words
The method for debugging a computer application program of claim 10 wherein said step of resetting the program counter comprises the additional steps of: resetting the program counter to a location corresponding to a beginning of a same line in the recompiled object code file which corresponds to a specific line in the previous version of the object code wherein the error occurred in executing said specific line, if a function containing said same line was not modified in said recompiled object code file; and popping one or more frames from a stack containing data corresponding to said function containing said same line and setting the program counter to a location of a statement that called said function, if said function containing said same line was modified in said recompiled object code file.
Claim 15
Dependent Claim
130 words
A computer system for debugging a computer application program, the system being designed to allow generation and insertion of corrective program instructions dynamically into the computer application program while continuing a debugging session, the computer system comprising: a processor having a program counter, memory and program instructions; a debugger in said memory configured to detect an error in said computer application program during a debugging session, said debugging session executed by said processor; and said debugger comprising: a fix subsystem for dynamically repairing program code which contains said error without terminating said debugging session; and a continue subsystem for restarting said debugging session where said error occurred using said repaired program code, whereby the program error was corrected without stopping the debugging session in order to recompile an entire program.
Claim 16
Dependent Claim
130 words
A computer system for debugging a computer application program, the system being designed to allow generation and insertion of corrective program instructions dynamically into the computer application program while continuing a debugging session, the computer system comprising: a processor having a program counter, memory and program instructions; a debugger in said memory configured to detect an error in said computer application program during a debugging session, said debugging session executed by said processor; and said debugger comprising: a fix subsystem for dynamically repairing program code which contains said error without terminating said debugging session; and a continue subsystem for restarting said debugging session where said error occurred using said repaired program code, whereby the program error was corrected without stopping the debugging session in order to recompile an entire program.
Claim 17
Dependent Claim
121 words
The computer system for debugging a computer application program of claim 13 wherein said fix subsystem comprises: a call mechanism configured to invoke a compiler and to pass to the compiler a file of edited source code containing edits to correct said error; a communications mechanism configured to receive from the compiler a recompiled object code file corresponding to said file of edited source code; a linking mechanism which can connect said recompiled object code file to a corresponding previous version of said object code file; a program counter control mechanism which can modify said program counter; and a break point placement mechanism which can move brake points from a previous object code File to said re, compiled object code file.
Claim 18
Dependent Claim
143 words
The computer system for debugging a computer application program of claim 14 wherein said program counter control mechanism comprises: a first control device which can set the program counter to a location corresponding to a beginning of a same line in the re, compiled object code file which corresponds to a specific line in the corresponding previous version of the object code wherein the error occurred in executing said specific line, if a function containing said same line was not modified in said recompiled object code file; and a second control device which can pop one or more frames from a stack containing data corresponding to said function containing said same line and thereafter set the program counter to a location of a statement that called said function, if said function containing said same line was modified in said recompiled object code file.
Claim 19
Dependent Claim
78 words
The computer system for debugging a computer application program of claim 14 wherein said compiler is configured to globalize static variables in said fie of edited source code containing edits to correct said error, to provide data relating to constructors and destructors in said file of edited source code containing edits to correct said error and to provide data relating to floating point register settings in said file of edited source code containing edits to correct said error.
Claim 20
Dependent Claim
80 words
The method for debugging a computer application program of claim 1 wherein said step of fixing program code which contains said error without terminating said debugging session comprises the additional step of popping one or more frames from a stack containing data corresponding to said function containing said same line and setting the program counter to a location of a statement that called said function, if said function containing said same line was modified in said recompiled object code file.
Claim 21
Independent Claim
117 words
A system for debugging a computer application program on a computer which includes a processor, a program counter, memory and program instructions, the system being designed to allow generation and insertion of corrective program instructions dynamically into the computer application program while continuing a debugging session, the system comprising: means for detecting an error in said computer application program during a debugging session; means for dynamically fixing program code which contains said error without terminating said debugging session; and means for continuing the debugging session with said fixed program code by restarting said debugging session where said error occurred, whereby the program error was corrected without stopping the debugging session in order to recompile an entire program.
Claim 22
Independent Claim
117 words
A system for debugging a computer application program on a computer which includes a processor, a program counter, memory and program instructions, the system being designed to allow generation and insertion of corrective program instructions dynamically into the computer application program while continuing a debugging session, the system comprising: means for detecting an error in said computer application program during a debugging session; means for dynamically fixing program code which contains said error without terminating said debugging session; and means for continuing the debugging session with said fixed program code by restarting said debugging session where said error occurred, whereby the program error was corrected without stopping the debugging session in order to recompile an entire program.
Claim 23
Independent Claim
152 words
A method for debugging a computer application program on a computer system which includes a processor, a program counter, memory and program instructions, the method being designed to allow generation and insertion of corrective program instructions dynamically into the computer application program while continuing a debugging session, the method being implemented by said program instructions in said memory and comprising the steps of: detecting an error in said computer application program during a debugging session; dynamically fining program code which contains said error without terminating said debugging session, said fixing operation permitting a user to specify that debug information should be added and permitting said user to modify a line of code to be fixed; and continuing the debugging session with said fixed program code by restarting said debugging session where said error occurred, whereby the program error was corrected without stopping the debugging session in order to recompile an entire program.
Claim 24
Independent Claim
152 words
A method for debugging a computer application program on a computer system which includes a processor, a program counter, memory and program instructions, the method being designed to allow generation and insertion of corrective program instructions dynamically into the computer application program while continuing a debugging session, the method being implemented by said program instructions in said memory and comprising the steps of: detecting an error in said computer application program during a debugging session; dynamically fining program code which contains said error without terminating said debugging session, said fixing operation permitting a user to specify that debug information should be added and permitting said user to modify a line of code to be fixed; and continuing the debugging session with said fixed program code by restarting said debugging session where said error occurred, whereby the program error was corrected without stopping the debugging session in order to recompile an entire program.
Claim 25
Dependent Claim
175 words
A computer program embodied on a computer-readable medium for enabling a system for debugging a computer application program, the system being designed to allow generation and insertion of corrective program instructions dynamically into the computer application program while continuing a debugging session, comprising: a processor having a program counter, memory and program instructions; a debugger in said memory configured to detect an error in said computer application program during a debugging session, said debugging session executed by said processor; and said debugger comprising: a fix subsystem which will allow a user to repair program code which contains said error without terminating said debugging session, said fix subsystem configured to permit said user to specify that debug information should be added and to permit said user to modify a line of code to be fixed; and a continue subsystem which will allow the user to restart said debugging session where said error occurred using said repaired program code, whereby the program error was corrected without stopping the debugging session in order to recompile an entire program.
Claim 26
Dependent Claim
175 words
A computer program embodied on a computer-readable medium for enabling a system for debugging a computer application program, the system being designed to allow generation and insertion of corrective program instructions dynamically into the computer application program while continuing a debugging session, comprising: a processor having a program counter, memory and program instructions; a debugger in said memory configured to detect an error in said computer application program during a debugging session, said debugging session executed by said processor; and said debugger comprising: a fix subsystem which will allow a user to repair program code which contains said error without terminating said debugging session, said fix subsystem configured to permit said user to specify that debug information should be added and to permit said user to modify a line of code to be fixed; and a continue subsystem which will allow the user to restart said debugging session where said error occurred using said repaired program code, whereby the program error was corrected without stopping the debugging session in order to recompile an entire program.