Patent US5901315A successfully refreshed from Google Patents.
← Back to Patent Explorer
US5901315A Expired / Lapsed US ⏱️ 0.0 years remaining

Method for debugging a Java application having native method dynamic load libraries

Assignee: International Business Machines Corp
•
Filing: 1997-06-13
•
Granted: 1999-05-04
•
Expires: 2017-06-13
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method for debugging a target application comprising Java code having native method dll's associated therewith. The method is carried out in a computer having an operating system, a system debug application programming interface (API), and a Java virtual machine having a Java debug API. According to the method, the Java virtual machine is first launched under the system debug API. The application is then run under the Java virtual machine. Because the Java virtual machine that runs the target application itself runs under the system debug API, simultaneous control of the target application via the system debug API and the Java debug API is enabled. Thus, the method effects the debug of the target application by simultaneously debugging the Java code and the native method dynamic load libraries.

Inventors

  • 👤 Jonathan W. Edwards
  • 👤 David H. Evans
  • 👤 Michael G. Vassil

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-09 05:34
CPC Classifications
G; G06; G06F; G06F11/00; G06F11/36; G06F11/3698

Claims Analysis

Total Claims: 33
Claim 1
Independent Claim 87 words
A method of debugging an application comprising Java code and native method dynamic load libraries, the method operating in a computer having an operating system, a system debug application programming interface (API), and a Java virtual machine having a Java debug API, comprising the steps of: launching the Java virtual machine under the system debug API; executing the application under the Java virtual machine; and as the application is executing under the Java virtual machine, simultaneously debugging the Java code and the native method dynamic load libraries.
Claim 2
Independent Claim 87 words
A method of debugging an application comprising Java code and native method dynamic load libraries, the method operating in a computer having an operating system, a system debug application programming interface (API), and a Java virtual machine having a Java debug API, comprising the steps of: launching the Java virtual machine under the system debug API; executing the application under the Java virtual machine; and as the application is executing under the Java virtual machine, simultaneously debugging the Java code and the native method dynamic load libraries.
Claim 3
Dependent Claim 32 words
The method as described in claim 1 wherein the Java code is debugged using the Java debug API and the native method dynamic load libraries are debugged using the system debug API.
Claim 4
Dependent Claim 61 words
The method as described in claim 2 wherein the step of simultaneously debugging the Java code and the native method dynamic load libraries includes: suspending the Java virtual machine upon occurrence of a native method dynamic load library event; freezing any thread running native method code; and resuming execution of the Java virtual machine with the native method code threads frozen.
Claim 5
Dependent Claim 37 words
The method as described in claim 1 wherein the step of simultaneously debugging the Java code and the native method dynamic load libraries includes: upon occurrence of a Java event, freezing any thread running native method code.
Claim 6
Dependent Claim 32 words
The method of debugging as described in claim 1 further including the step for distinguishing whether a given event is associated with the Java code or native method dynamic load library code.
Claim 7
Dependent Claim 32 words
The method of debugging as described in claim 5 further including the step for reporting whether the given event is associated with the Java code or native method dynamic load library code.
Claim 8
Dependent Claim 35 words
The method of debugging as described in claim 1 wherein the native method dynamic load library code is written in a programming language selected from the group of programming languages consisting of "C" and "C++".
Claim 9
Dependent Claim 20 words
The method as described in claim 1 wherein the operating system is OS/2 and the system debug API is DosDebug.
Claim 10
Independent Claim 71 words
A method for debugging a target application comprising Java code and C/C++ code, comprising the steps of: launching a Java virtual machine under an operating system debug application programming interface (API) running on a target machine; executing the target application under the Java virtual machine; and as the application is executing under the Java virtual machine, simultaneously controlling the target application via the system debug API and a Java debug API.
Claim 11
Independent Claim 71 words
A method for debugging a target application comprising Java code and C/C++ code, comprising the steps of: launching a Java virtual machine under an operating system debug application programming interface (API) running on a target machine; executing the target application under the Java virtual machine; and as the application is executing under the Java virtual machine, simultaneously controlling the target application via the system debug API and a Java debug API.
Claim 12
Dependent Claim 35 words
The method as described in claim 9 wherein the Java code is debugged under the control of the Java debug API and the C/C++ code is debugged under the control of the system debug API.
Claim 13
Dependent Claim 33 words
The method as described in claim 9 wherein the Java virtual machine is launched from a first computer and the target application is executed under the Java virtual machine in a second computer.
Claim 14
Dependent Claim 30 words
The method as described in claim 11 wherein the second computer runs the OS/2 operating system, the system debug API is DosDebug and the Java debug API is sun.tools.debug API.
Claim 15
Dependent Claim 91 words
A computer program product in a computer-readable medium for debugging an application comprising Java code and native method dynamic load libraries, the product including components independently executable in at least one computer having an operating system, a system debug application programming interface (API), and a Java virtual machine having a Java debug API, the computer program product comprising: a debug process for launching the Java virtual machine under the system debug API; means operative under the debug process for simultaneously debugging the Java code and native method dynamic load library code.
Claim 16
Dependent Claim 91 words
A computer program product in a computer-readable medium for debugging an application comprising Java code and native method dynamic load libraries, the product including components independently executable in at least one computer having an operating system, a system debug application programming interface (API), and a Java virtual machine having a Java debug API, the computer program product comprising: a debug process for launching the Java virtual machine under the system debug API; means operative under the debug process for simultaneously debugging the Java code and native method dynamic load library code.
Claim 17
Dependent Claim 22 words
The computer program product as described in claim 13 wherein the debugging means comprises a daemon process and a java probe process.
Claim 18
Dependent Claim 39 words
The computer program product as described in claim 14 wherein the daemon process debugs the native method dynamic load libraries under the system debug API and the java probe process debugs the Java code under the Java debug API.
Claim 19
Dependent Claim 39 words
The computer program product as described in claim 13 wherein the debug process further includes a graphical user interface (GUI) for receiving debug request and for presenting information to a user regarding a status of the application being debugged.
Claim 20
Dependent Claim 29 words
The computer program product as described in claim 13 wherein the debug process is executable on a first computer and the debugging means is executable on a second computer.
Claim 21
Dependent Claim 98 words
In a computer network, a method of debugging an application comprising Java code and native method dynamic load libraries, the computer network having a first computer and a second computer, the second computer including an operating system debug application programming interface (API), a Java virtual machine (JVM) interpreter and an associated Java debug API, the method comprising the steps of: initiating a debug session from the first computer by launching, at the second computer, the JVM under the system debug API; and at the second computer, simultaneously debugging the Java code and the native method dynamic load libraries.
Claim 22
Dependent Claim 98 words
In a computer network, a method of debugging an application comprising Java code and native method dynamic load libraries, the computer network having a first computer and a second computer, the second computer including an operating system debug application programming interface (API), a Java virtual machine (JVM) interpreter and an associated Java debug API, the method comprising the steps of: initiating a debug session from the first computer by launching, at the second computer, the JVM under the system debug API; and at the second computer, simultaneously debugging the Java code and the native method dynamic load libraries.
Claim 23
Dependent Claim 21 words
The method as described in claim 18 further including the step of: returning to the first computer results of the debugging.
Claim 24
Dependent Claim 19 words
The method as described in claim 19 further including the step of displaying the results on the first computer.
Claim 25
Dependent Claim 17 words
The method as described in claim 18 wherein the first and second computers are connected via TCP/IP.
Claim 26
Dependent Claim 76 words
A computer, comprising: a processor; an operating system having a system debug application programming interface (API); a Java interpreter having an associated Java debug API; a debugger for simultaneously debugging a target application comprising Java code and native method dynamic load libraries, comprising: a debug process for launching the Java interpreter under the system debug API; and means operative under the debug process for simultaneously debugging the Java code and native method dynamic load library code.
Claim 27
Dependent Claim 76 words
A computer, comprising: a processor; an operating system having a system debug application programming interface (API); a Java interpreter having an associated Java debug API; a debugger for simultaneously debugging a target application comprising Java code and native method dynamic load libraries, comprising: a debug process for launching the Java interpreter under the system debug API; and means operative under the debug process for simultaneously debugging the Java code and native method dynamic load library code.
Claim 28
Dependent Claim 20 words
The computer as described in claim 22 wherein the debugging means comprises a daemon process and a Java probe process.
Claim 29
Dependent Claim 37 words
The computer as described in claim 23 wherein the daemon process debugs the native method dynamic load libraries under the system debug API and the java probe process debugs the Java code under the Java debug API.
Claim 30
Dependent Claim 39 words
The computer as described in claim 22 wherein the debug process further includes a graphical user interface (GUI) process for receiving debug request and for presenting information to a user regarding a status of the target application being debugged.
Claim 31
Independent Claim 80 words
A method of debugging an application comprising interpreted code and native methods, the debugging method operating in a computer having an operating system, a system debug application programming interface (API), and an interpreter that exports its own debug API and that uses native methods, comprising the steps of: launching the interpreter under the system debug API; executing the application under the interpreter; and as the application is executing under the interpreter, simultaneously debugging the interpreted code and the native methods.
Claim 32
Independent Claim 80 words
A method of debugging an application comprising interpreted code and native methods, the debugging method operating in a computer having an operating system, a system debug application programming interface (API), and an interpreter that exports its own debug API and that uses native methods, comprising the steps of: launching the interpreter under the system debug API; executing the application under the interpreter; and as the application is executing under the interpreter, simultaneously debugging the interpreted code and the native methods.
Claim 33
Dependent Claim 32 words
The method as described in claim 1 wherein the interpreted code is debugged using the debug API exported by the interpreter and the native methods are debugged using the system debug API.

References Cited (Backward Citations)

US5067072A Cited
US5548717A Cited
US5652869A Cited
US5630049A Cited
US5787245A Cited
US5764989A Cited

USPTO Annuity & Maintenance Windows

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

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag