Servicing daemon for live debugging of storage systems
First Claim
1. A system for servicing an application executing on a local computer using an administering program executing on a remote computer connected with the local computer through a network, the system comprising:
- the local computer comprising a local memory storing data;
a memory virtualization component configured to produce a corefile comprising a corefile header representing the local memory of the local computer, wherein the corefile does not comprise data copied from the local memory; and
a remote procedure call (RPC) component and a reverse-address mapping component configured to implement the servicing of the application using the corefile, wherein;
the RPC component is further configured to receive a read request from the administering program, the request comprising a dummy address having a particular value, and to send the corefile header to the administering program in response to the read request; and
the reverse-address mapping component is further configured to determine that the read request is a request for the corefile header by comparing the particular value to a predetermined value associated with the corefile header.
2 Assignments
0 Petitions
Accused Products
Abstract
A servicing daemon is described herein for providing servicing of a running computer system (such as a filer). The servicing daemon resides and executes on the operating system of the filer and communicates across a network with a debugger that resides and executes on a remote administering computer. A debugging session is performed that complies with a protocol relating to the remote accessing of files. The debugging session provides live servicing of an application executing on the filer without requiring an actual corefile (having copied filer memory data) to be created. Rather, the servicing daemon creates a simulated corefile header that is sent to the debugger, receives requests from the debugger, and maps addresses specified in the requests to filer memory addresses. The servicing daemon then reads and retrieves data directly from filer memory at the determined filer memory addresses and sends the data to the debugger for analysis.
-
Citations
22 Claims
-
1. A system for servicing an application executing on a local computer using an administering program executing on a remote computer connected with the local computer through a network, the system comprising:
-
the local computer comprising a local memory storing data; a memory virtualization component configured to produce a corefile comprising a corefile header representing the local memory of the local computer, wherein the corefile does not comprise data copied from the local memory; and a remote procedure call (RPC) component and a reverse-address mapping component configured to implement the servicing of the application using the corefile, wherein; the RPC component is further configured to receive a read request from the administering program, the request comprising a dummy address having a particular value, and to send the corefile header to the administering program in response to the read request; and the reverse-address mapping component is further configured to determine that the read request is a request for the corefile header by comparing the particular value to a predetermined value associated with the corefile header. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A method for servicing an application executing on a local computer using an administering program executing on a remote computer connected with the local computer through a network, the method comprising:
-
producing a corefile comprising a corefile header representing a local memory of the local computer, the local memory being configured for storing data, wherein the corefile does not comprise data copied from the local memory; implementing the servicing of the application using the corefile; receiving a read request from the administering program, the request comprising a dummy address having a particular value; determining that the read request is a request for the corefile header by comparing the particular value to a predetermined value associated with the corefile header; and sending the corefile header to the administering program in response to the read request. - View Dependent Claims (14, 15)
-
-
16. A non-transitory computer readable medium having instructions stored thereon when executed, service an application executing on a local computer using an administering program executing on a remote computer connected with the local computer through a network, the computer readable medium comprising sets of instructions for:
-
producing a corefile comprising a corefile header representing a local memory of the local computer, the local memory being configured for storing data, wherein the corefile does not comprise data copied from the local memory; implementing the servicing of the application using the corefile; receiving a read request from the administering program, the request comprising a dummy address having a particular value; determining that the read request is a request for the corefile header by comparing the particular value to a predetermined value associated with the corefile header; and sending the corefile header to the administering program. - View Dependent Claims (17, 18)
-
-
19. A system for servicing an application executing on a local computer using an administering program executing on a remote computer connected with the local computer through a network, the system comprising:
-
the local computer comprising a local memory configured for storing data, the local memory being represented by a corefile header comprising a mapping table that maps between local memory addresses and dummy addresses; a remote procedure call (RPC) component configured to receive a read request comprising a dummy address, from the administering program, and to send data retrieved in response to the request to the administering program; and a reverse-address mapping component configured to map the dummy address to a local memory address using the corefile header and to retrieve data directly from the local memory at the mapped local memory address;
wherein;
the read request comprising the dummy address includes a particular value, and the sending of data retrieved in response to the read request includes sending the corefile header to the administering program; andthe reverse-address mapping component is further configured to determine that the read request is a request for the corefile header by comparing the particular value to a predetermined value associated with the corefile header. - View Dependent Claims (20)
-
-
21. A method for servicing an application executing on a local computer using an administering program executing on a remote computer connected with the local computer through a network, the method comprising:
-
producing a corefile header representing a local memory of the local computer, the corefile header comprising a mapping table that maps between local memory addresses and dummy addresses; receiving a read request from the administering program, the request comprising a dummy address having a particular value; determining that the read request is a request for the corefile header by comparing the particular value to a predetermined value associated with the corefile header; sending the corefile header to the administering program in response to the read request; mapping the dummy address to a local memory address using the corefile header; retrieving data directly from the local memory at the mapped local memory address; and sending the retrieved data to the administering program. - View Dependent Claims (22)
-
Specification