The present invention relates to a method and apparatus for analyzing computer system failures.
In many computer systems dumping a process memory space when a critical error occurs is standard procedure. On UNIX systems these are called core dumps, and the dumps contain the information needed for post-mortem debugging.
The same type of post-mortem debugging is conventionally done with other computer platforms, including, but not limited to embedded systems of user equipment (UE) or mobile stations (MS) such as mobile terminals used in communication systems. Conventionally, when an embedded system shuts down abnormally, dump data including information regarding the cause of crash, are written into the random access memory (RAM) area. Thus, the amount of dump data is equivalent to the entire RAM. This means that in order to write to flash, an area equaling the size of the RAM must be reserved on flash for the dump-file.
If the dump data cannot be moved from RAM to another space, for example, to a personal computer (PC), and the embedded system is re-booted, all of dump data is lost and the reason for the crash cannot be ascertained. There currently exists an obstacle to post-mortem debugging of UE and MS—that is the difficulty associated with the platform sending the memory data to a secondary location when it has failed. It is well known to those skilled in the art that modern synchronous dynamic random access memory (SDRAM) must be refreshed approximately every 16 microseconds to retain its memory contents. It is also well known that SDRAMs have a self refresh mode designed into the memory that reduces the power consumption during idle mode. During the hardware reset after a computer failure, there is a risk that the SDRAM will lose the contents needed for post-mortem debugging. In other words, resetting the computer hardware may result in the loss of data needed to perform post-mortem debugging. What is desired is the ability to perform core dumps to a secondary storage, for example, to a file system. However, to perform core dumps to a secondary storage, the computer system must be in a known state.
The present invention comprises a method of and apparatus for facilitating a post-mortem debugging of a computer failure by placing the computer into a known hardware state before dumping and saving the memory contents to a secondary storage location.
More specifically, an embodiment of the present invention comprises placing a memory, such as an SDRAM; in self refresh mode wherein the memory is able to retain its data contents, reading its data contents and writing the data contents to a secondary storage location, such as a file system, then performing a hardware reset.
The present invention comprises a method of and apparatus for facilitating post-mortem debugging of a computer failure by resetting the computer into a known hardware state before saving the memory contents to a secondary storage location such as a file system.
Synchronous dynamic random access memory (SDRAM) has a self refresh mode designed to reduce the power consumption during idle mode.
As seen in
As seen in
As will be recognized by those skilled in the art, the innovative concepts described in the present application can be modified and varied over a wide range of applications. Accordingly, the scope of patented subject matter should not be limited to any of the specific exemplary teachings discussed above, but is instead defined by the following claims.