Apparatus and method for downloading core file in a network device
First Claim
1. A system for saving an entire core file in a network routing or switching device connected to an external network by an external interface, comprising:
- means for monitoring the network device for a shutdown event;
means for conducting a shutdown routine after detecting the shutdown event, the shutdown routine avoiding all unnecessary internal and network operations while copying the entire core file including the values of stack pointers, routine variables, a last operating instruction, values set by the last operating instruction, status register addresses, program counters and any other data stored in a main memory into a local memory internal to the network device and coupled directly to the main memory by a same internal bus that couples the local memory to a central processing unit while avoiding transferring any of the core file through the external interface to the external network and preventing transfer of the core file to any other device not coupled directly to the internal bus or to any device that needs a driver to receive data from the main memory; and
means for storing the core file that identifies a cause of the shutdown event from the main memory to the local memory before completing the shutdown event, before resetting the network device and without using any external interface or device driver to store the core file.
0 Assignments
0 Petitions
Accused Products
Abstract
A router stores core file into a local flash memory after detecting a shutdown event. In order to increase the amount of core file data that can be stored, the core file is first compressed before being downloaded into the local flash memory. Because the flash memory is local, the network device is not required to dump the core file over an external network to an external network server. Thus, network interface elements in the network device do not have to be functional in order for the core dump to be successful. During the shutdown routine, interrupts are disabled for all processing elements that are not needed to perform the core download. The core dump is therefore faster and more reliable and allows more effective system debugging than present core download procedures.
-
Citations
15 Claims
-
1. A system for saving an entire core file in a network routing or switching device connected to an external network by an external interface, comprising:
-
means for monitoring the network device for a shutdown event;
means for conducting a shutdown routine after detecting the shutdown event, the shutdown routine avoiding all unnecessary internal and network operations while copying the entire core file including the values of stack pointers, routine variables, a last operating instruction, values set by the last operating instruction, status register addresses, program counters and any other data stored in a main memory into a local memory internal to the network device and coupled directly to the main memory by a same internal bus that couples the local memory to a central processing unit while avoiding transferring any of the core file through the external interface to the external network and preventing transfer of the core file to any other device not coupled directly to the internal bus or to any device that needs a driver to receive data from the main memory; and
means for storing the core file that identifies a cause of the shutdown event from the main memory to the local memory before completing the shutdown event, before resetting the network device and without using any external interface or device driver to store the core file. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
means for resetting the network device;
means for preallocating a temporary buffer in a main memory comprising dynamic random access memory for temporarily storing the core file; and
means for storing the core file in the preallocated temporary buffer of the main memory.
-
-
5. A system according to claim 4 including means for storing a network device operating routine, the shutdown routine and the core file all in the local memory.
-
6. A system according to claim 4 including the following:
-
means for reading portions of the core file;
means for compressing the portions of the core file using a compression routine;
means for storing the compressed core file into a temporary buffer in a main memory comprising dynamic random access memory; and
means for writing all the compressed core file in the temporary buffer into the local memory when the temporary buffer is full.
-
-
7. A system according to claim 1 including means for disabling interrupts from all processing elements in the network device except those processing elements necessary to download the core file into the local memory including disabling interrupts and disabling drivers for all devices coupled to the network device.
-
8. A system according to claim 7 wherein means for disabling the interrupts comprises increasing the interrupt priority level for a central processing unit so that interrupts from other processing elements in the network device are ignored while copying the core file into the local memory.
-
9. A system according to claim 1 wherein the shutdown event comprises a fatal error that prevents the network device from effectively communicating with the external server.
-
10. A system according to claim 1 wherein the network device comprises a router for routing data over a local area network coupled to an external server through the local area network.
-
11. A system according to claim 10 further comprising:
-
means for resetting the router after the shutdown event;
means for accessing the router through the external server; and
means for transferring the core file from the local memory of the network device to the external server through an internet protocol operation.
-
-
12. A system for saving a core file in a network router for routing data in a network, the network router coupled to an external network via network interface elements, comprising:
-
means for monitoring the network router for a fatal error;
means for disabling interrupts from the network interface elements in the router after detecting the fatal error;
means for reading bytes of the core file in a main memory one at a time;
means for compressing the bytes;
means for storing the compressed bytes into a temporary buffer in the main memory;
means for writing blocks of the compressed bytes into a local memory when the temporary buffer in the main memory is full;
means for resetting the router after downloading the core file into the local memory; and
means for outputting the core file from the local flash memory through the network interface elements to an external network device coupled to the router, the core file output from the local flash memory containing a state of the router at the time the fatal error occurred.
-
-
13. A system for downloading a core file in a network device connected to an external network via an external interface, comprising:
-
means for monitoring the network device for a shutdown event;
means for conducting a shutdown routine after detecting the shutdown event, the shutdown routine copying the core file into a local memory internal to the network device instead of transferring the core file through the external interface to the external network;
means for allowing a user to select either local flash memory or boot flash memory as the local memory; and
means for storing the core file in the local memory that identifies a cause of the shutdown event. - View Dependent Claims (14, 15)
means for preallocating a temporary buffer in a main memory comprising dynamic random access memory for temporarily storing the core file; and
means for storing the core file in the preallocated temporary buffer of the main memory.
-
-
15. A system according to claim 14 including:
-
means for reading portions of the core file;
means for compressing the portions of the core file using a compression routine;
means for storing the compressed core file into the temporary buffer in the main memory; and
means for writing all the compressed core file in the temporary buffer into the local memory when the temporary buffer is full.
-
Specification