Atypical reboot data collection and analysis

US9710321B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9710321-B2
Application numberUS-201514747015-A
CountryUS
Kind codeB2
Filing dateJun 23, 2015
Priority dateJun 23, 2015
Publication dateJul 18, 2017
Grant dateJul 18, 2017

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A crash dump system in a device includes firmware that determines when an atypical reboot of the device is about to occur and both sets a flag indicating there was an atypical reboot and stores in nonvolatile memory crash dump data based on the type of event that caused the atypical reboot. The crash dump data includes a reboot code indicating the type of event that was detected. When the device is subsequently restarted due to the reboot, the operating system detects that the flag was set, and in response to the flag being set collects and analyzes the crash dump data from the reserved memory. Crash analysis data is generated based on this analysis and sent is to a remote service for possible further action (e.g., analysis, notification of a developer, and so forth).

First claim

Opening claim text (preview).

What is claimed is: 1. A method implemented in a computing device, the computing device including a processor executing firmware and running an operating system, the method comprising: detecting, by the firmware, an event that causes the computing device to be atypically rebooted, the event being one of multiple events that can cause the computing device to be atypically rebooted; determining, by the firmware, based on the event, which crash dump data to record; writing, by the firmware, the determined crash dump data to reserved memory; rebooting the computing device; determining, by the operating system, based on the event and the crash dump data, crash analysis data to send to a remote service; and communicating, by the operating system, the determined crash analysis data to the remote service. 2. The method as recited in claim 1 , the event comprising a loss of power event, the determining which crash dump data to record comprising including in the crash dump data an indication that the type of event is the loss of power event, and the writing comprising writing the determined crash dump data to reserved memory despite loss of power in the computing device. 3. The method as recited in claim 2 , the determining which crash dump data to record comprising including in the crash dump data status data from an accelerometer of the computing device. 4. The method as recited in claim 1 , the event comprising a high temperature event, and the determining which crash dump data to record comprising including in the crash dump data an indication that the type of event is the high temperature event. 5. The method as recited in claim 1 , the determining the crash analysis data comprising using as the crash analysis data only an indication of the type of the event. 6. The method as recited in claim 1 , the crash analysis data comprising a fewer number of bytes than the crash dump data. 7. The method as recited in claim 1 , further comprising: setting, in the reserved memory prior to rebooting the computing device, a flag value indicating that the computing device has been atypically rebooted; detecting, after rebooting the computing device, that the flag value has been set; and performing the determining the crash analysis data and the communicating the determined crash analysis data in response to detecting that the flag value has been set. 8. The method as recited in claim 7 , further comprising: copying the crash dump data from the reserved memory to a separate portion of a storage device of the computing device; and clearing the flag value. 9. The method as recited in claim 8 , further comprising: receiving, after communicating the crash analysis data to the remote service, a request from the remote service for the crash dump data; and communicating, in response to the request, the crash dump data to the remote service. 10. The method as recited in claim 1 , the event comprising a user initiated event. 11. A computing device comprising: nonvolatile memory; a system on a chip including a processor and firmware, the processor configured to execute the firmware as well as an operating system; a data write module, included as part of the firmware, configured to detect an event that causes the computing device to be atypically rebooted, the event being one of multiple events that can cause the computing device to be atypically rebooted, to determine, based on the event, which crash dump data to record, and to write the determined crash dump data to a reserved part of the nonvolatile memory; a reboot system, included as part of the firmware, configured to reboot the computing device in response to the event; a data analysis module, included as part of the operating system to determine, based on the event and the crash dump data, crash analysis data to send to a remote service; and a data communication module to communicate the determined crash analysis data to the remote service. 12. The computing device as recited in claim 11 , the reserved part of the nonvolatile memory comprising a part of the nonvolatile memory to which the data write module can write crash dump data but other programs on the computing device cannot write data. 13. The computing device as recited in claim 11 , the crash analysis data comprising a smaller amount of data than the crash dump data. 14. The computing device as recited in claim 11 , further comprising: the data write module being further configured to set, in the reserved memory prior to the computing device being rebooted by the reboot system, a flag value indicating that the computing device has been atypically rebooted; a data read module configured to detect, after rebooting the computing device, that the flag value has been set; and the data analysis module being configured to determine the crash analysis data and the data communication module being configured to communicate the determined crash analysis data to the remote service in response to the data read module detecting that the flag value has been set. 15. A computing device comprising: one or more processors; firmware including multiple instructions that, responsive to execution by the one or more processors, cause the one or more processors to: detect an event that causes the computing device to be atypically rebooted, determine, based on the event, which crash dump data to record, write the determined crash dump data to reserved memory, and reboot the computing device; and an operating system including multiple instructions that, responsive to execution by the one or more processors, cause the one or more processors to: determine, based on the event and the crash dump data, crash analysis data to send to a remote service, and communicate the determined crash analysis data to the remote service. 16. The computing device as recited in claim 15 , the computing device including nonvolatile memory, the reserved memory comprising a part of the nonvolatile memory to which the firmware can write but the operating system cannot write data. 17. The computing device as recited in claim 15 , further comprising the one or more processors, the reserved memory, and the firmware being implemented on a system on a chip of the computing device. 18. The computing device as recited in claim 15 , the crash analysis data comprising a fewer number of bytes than the crash dump data. 19. The computing device as recited in claim 15 , further comprising: the firmware, responsive to execution by the one or more processors, further causing the one or more processors to set, in the reserved memory prior to the computing device being rebooted by the reboot system, a flag value indicating that the computing device has been atypically rebooted; and the operating system, responsive to execution by the one or more processors, further causing the one or more processors to detect, after rebooting the computing device, that the flag value has been set, and determine the crash analysis data and communicate the determined crash analysis data to the remote service in response to the detecting that the flag value has been set. 20. The computing device as recited in claim 15 , the event comprising a user initiated event.

Assignees

Inventors

Classifications

  • Dumping, i.e. gathering error/state information after a fault for later diagnosis · CPC title

  • G06F11/079Primary

    Root cause analysis, i.e. error or fault diagnosis (in a hardware test environment G06F11/22; in a software test environment G06F11/36) · CPC title

  • Error or fault detection not based on redundancy (power supply failures G06F1/30; network fault management H04L41/06) · CPC title

  • in a remote unit communicating with a single-box computer node experiencing an error/fault (remote testing G06F11/2294) · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9710321B2 cover?
A crash dump system in a device includes firmware that determines when an atypical reboot of the device is about to occur and both sets a flag indicating there was an atypical reboot and stores in nonvolatile memory crash dump data based on the type of event that caused the atypical reboot. The crash dump data includes a reboot code indicating the type of event that was detected. When the devic…
Who is the assignee on this patent?
Microsoft Technology Licensing Llc
What technology area does this patent fall under?
Primary CPC classification G06F11/0778. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jul 18 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).