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

Debugging system with portable debug environment-independent client and non-portable platform-specific server

Assignee: Apple Inc
•
Filing: 1995-11-13
•
Granted: 1998-09-29
•
Expires: 2015-11-13
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A system for debugging software uses a portable debug environment-independent client debugger object and at least one non-portable server debugger object with platform-specific debugging logic. The client debugger object has a graphic user interface which allows a user to control and manipulate the server debugger object with debug environment-independent debug requests. The server debugger object performs a platform-specific debug operation on the software to be debugged. The platform-specific results generated by the debugging operation are translated to debug environment-independent results and returned to the client debugger object. This operation allows the same client debugger object to be used with one or more server debugger objects running on different platforms.

Inventors

  • 👤 Lawrence L. You
  • 👤 Narayan Rajgopal
  • 👤 Michael D. Wimble

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-30 22:12
CPC Classifications
G; G06; G06F; G06F11/00; G06F11/36; G06F11/3698

Claims Analysis

Total Claims: 24
Claim 1
Independent Claim 176 words
A portable debugging system controllable by a user working at a client node for debugging one or more target processes, each of the target processes running on an associated platform-specific server node connected to the client node over a network wherein different server nodes can run on different platforms, the portable debugging system comprising: (a) a portable client debugger object in the client node, the client debugger object having sender logic which transmits debug environment-independent debug requests over the network under control of the user and receiver logic which receives debug environment-independent debug results; and (b) a non-portable server debugger object in each server node operating with the client debugger object, each server debugger object including platform-specific debugging logic which receives from the network the debug environment-independent debug requests generated by the client debugger object and performs a platform-specific debug operation on a target process running in the server node, which debug operation generates platform-specific results and answer logic which responds to the plafform-specific results by returning debug environment-independent debug results to the client debugger object.
Claim 2
Dependent Claim 176 words
A portable debugging system controllable by a user working at a client node for debugging one or more target processes, each of the target processes running on an associated platform-specific server node connected to the client node over a network wherein different server nodes can run on different platforms, the portable debugging system comprising: (a) a portable client debugger object in the client node, the client debugger object having sender logic which transmits debug environment-independent debug requests over the network under control of the user and receiver logic which receives debug environment-independent debug results; and (b) a non-portable server debugger object in each server node operating with the client debugger object, each server debugger object including platform-specific debugging logic which receives from the network the debug environment-independent debug requests generated by the client debugger object and performs a platform-specific debug operation on a target process running in the server node, which debug operation generates platform-specific results and answer logic which responds to the plafform-specific results by returning debug environment-independent debug results to the client debugger object.
Claim 3
Dependent Claim 23 words
The portable debugging system for debugging one or more target processes according to claim 1, wherein said debug operation includes setting a breakpoint.
Claim 4
Dependent Claim 22 words
The portable debugging system for debugging one or more target processes according to claim 2, wherein said breakpoint is a logical breakpoint.
Claim 5
Dependent Claim 22 words
The portable debugging system for debugging one or more target processes according to claim 2, wherein said breakpoint is a transparent breakpoint.
Claim 6
Dependent Claim 23 words
The portable debugging system for debugging one or more target processes according to claim 1, wherein said debug operation includes setting a watchpoint.
Claim 7
Dependent Claim 22 words
The portable debugging system for debugging one or more target processes according to claim 5, wherein said watchpoint is a logical watchpoint.
Claim 8
Dependent Claim 44 words
The portable debugging system for debugging one or more target processes according to claim 1, further comprising logic in the client node which generates a visual display that can be manipulated by the user to control the sender logic to send the debug requests.
Claim 9
Dependent Claim 32 words
The portable debugging system for debugging one or more target processes according to claim 1, further comprising a display in the client node for displaying debug results received by the receiving logic.
Claim 10
Independent Claim 185 words
A method practiced on a portable debugging system which is controllable by a user working at a client node for debugging one or more target processes, each of the target processes running on an associated platform-specific server node connected to the client node over a network wherein different server nodes can run on different platforms, the method comprising the steps of: (a) creating a portable client debugger object in the client node, the client debugger object having sender logic which transmits debug environment-independent debug requests over the network under control of the user and receiver logic which receives debug environment-independent debug results; and (b) creating a non-portable server debugger object in each server node operating with the client debugger object, each server debugger object including platform-specific debugging logic which receives from the network the debug environment-independent debug requests generated by the client debugger object and performs a platform-specific debug operation on a target process running in the server node, which debug operation generates plafform-specific results and answer logic which responds to the plafform-specific, results by returning debug environment-independent debug results to the client debugger object.
Claim 11
Independent Claim 185 words
A method practiced on a portable debugging system which is controllable by a user working at a client node for debugging one or more target processes, each of the target processes running on an associated platform-specific server node connected to the client node over a network wherein different server nodes can run on different platforms, the method comprising the steps of: (a) creating a portable client debugger object in the client node, the client debugger object having sender logic which transmits debug environment-independent debug requests over the network under control of the user and receiver logic which receives debug environment-independent debug results; and (b) creating a non-portable server debugger object in each server node operating with the client debugger object, each server debugger object including platform-specific debugging logic which receives from the network the debug environment-independent debug requests generated by the client debugger object and performs a platform-specific debug operation on a target process running in the server node, which debug operation generates plafform-specific results and answer logic which responds to the plafform-specific, results by returning debug environment-independent debug results to the client debugger object.
Claim 12
Dependent Claim 27 words
The method for debugging one or more target processes according to claim 9, comprising the step of: setting a breakpoint in said one or more target processes.
Claim 13
Dependent Claim 28 words
The method for debugging one or more target processes according to claim 9, comprising the step of: setting a logical breakpoint in said one or more target processes.
Claim 14
Dependent Claim 27 words
The method debugging one or more target processes according to claim 9, comprising the step of: setting a transparent breakpoint in said one or more target processes.
Claim 15
Dependent Claim 26 words
The method debugging one or more target processes according to claim 9, comprising the step of: setting a watchpoint in said one or more target processes.
Claim 16
Dependent Claim 27 words
The method debugging one or more target processes according to claim 9, comprising the step of: setting a logical watchpoint in said one or more target processes.
Claim 17
Dependent Claim 40 words
The method for debugging one or more target processes according to claim 9, further comprising the step of: (c) generating a visual display that can be manipulated by the user to control the sender logic to send the debug requests.
Claim 18
Dependent Claim 27 words
The method for debugging one or more targets processes according to claim 9, further comprising the step of: (d) displaying debug results received by the receiving logic.
Claim 19
Dependent Claim 154 words
A portable debugging system controllable by a user working at a client node for debugging one or more target processes, each of the target processes running on an associated platform-specific server node connected to the client node over a network wherein different server nodes can run on different platforms, the portable debugging system (comprising: (a) a graphic user interface in the client node which can be manipulated by the user to transmit debug environment-independent debug requests over the network; (b) a non-portable server debugger in the server node which responds to debug environment-independent debug requests transmitted by the client node by performing a platform-specific debug operation on a target process, which debug operation generates platform-specific debug results; (c) reply logic which responds to the platform-specific debug results by returning debug environment-independent debug results to the client node; and (d) receive logic in the client node which receives and displays the debug environment-independent debug results.
Claim 20
Dependent Claim 154 words
A portable debugging system controllable by a user working at a client node for debugging one or more target processes, each of the target processes running on an associated platform-specific server node connected to the client node over a network wherein different server nodes can run on different platforms, the portable debugging system (comprising: (a) a graphic user interface in the client node which can be manipulated by the user to transmit debug environment-independent debug requests over the network; (b) a non-portable server debugger in the server node which responds to debug environment-independent debug requests transmitted by the client node by performing a platform-specific debug operation on a target process, which debug operation generates platform-specific debug results; (c) reply logic which responds to the platform-specific debug results by returning debug environment-independent debug results to the client node; and (d) receive logic in the client node which receives and displays the debug environment-independent debug results.
Claim 21
Independent Claim 142 words
A method practiced on a portable debugging system which is controllable by a user working at a client node for debugging one or more target processes, each of the target processes running on an associated platform-specific server node connected to the client node over a network wherein different server nodes can run on different platforms, the method comprising the steps of: (a) manipulating a graphic user interface in the client node to transmit debug environment-independent debug requests; (b) responding in the platform-specific server node to debug environment-independent debug requests transmitted by the client node by performing a platform-specific debug operation on a target process, which debug operation transmits platform-specific debug results; (c) returning, in response to the platform-specific debug results, debug environment-independent debug results to the client node; and (d) receiving in the client node and displaying the debug environment-independent debug results.
Claim 22
Independent Claim 142 words
A method practiced on a portable debugging system which is controllable by a user working at a client node for debugging one or more target processes, each of the target processes running on an associated platform-specific server node connected to the client node over a network wherein different server nodes can run on different platforms, the method comprising the steps of: (a) manipulating a graphic user interface in the client node to transmit debug environment-independent debug requests; (b) responding in the platform-specific server node to debug environment-independent debug requests transmitted by the client node by performing a platform-specific debug operation on a target process, which debug operation transmits platform-specific debug results; (c) returning, in response to the platform-specific debug results, debug environment-independent debug results to the client node; and (d) receiving in the client node and displaying the debug environment-independent debug results.
Claim 23
Dependent Claim 172 words
A computer program product portable debugging system controllable by a user working at a client node for debugging one or more target processes, each of the target processes running on an associated platform-specific server node connected to the client node over a network wherein different server nodes can run on different platforms, the computer program product comprising a computer usable medium having computer readable program code thereon, including: (a) program code which generates a graphic user interface in the client node which graphic user interface can be manipulated by the user to transmit debug environment-independent debug requests; (b) program code in the server node which responds to debug environment-independent debug requests generated by the client node by performing a platform-specific debug operation on a target process, which debug operation generates platform-specific results; (c) program code in the server node which responds to the plafform-specific results by returning debug environment-independent debug results to the client node; and (d) program code in the client node which receives and displays the debug environment-independent debug results.
Claim 24
Dependent Claim 172 words
A computer program product portable debugging system controllable by a user working at a client node for debugging one or more target processes, each of the target processes running on an associated platform-specific server node connected to the client node over a network wherein different server nodes can run on different platforms, the computer program product comprising a computer usable medium having computer readable program code thereon, including: (a) program code which generates a graphic user interface in the client node which graphic user interface can be manipulated by the user to transmit debug environment-independent debug requests; (b) program code in the server node which responds to debug environment-independent debug requests generated by the client node by performing a platform-specific debug operation on a target process, which debug operation generates platform-specific results; (c) program code in the server node which responds to the plafform-specific results by returning debug environment-independent debug results to the client node; and (d) program code in the client node which receives and displays the debug environment-independent debug results.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2001-09-28 2002-03-30 2002-09-29 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2005-09-28 2006-03-30 2006-09-29 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2009-09-28 2010-03-30 2010-09-29 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag