Relative timestamp when real time clock is unavailable

US8984168B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-8984168-B2
Application numberUS-201113077011-A
CountryUS
Kind codeB2
Filing dateMar 31, 2011
Priority dateMar 31, 2011
Publication dateMar 17, 2015
Grant dateMar 17, 2015

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.

An operating system or other software resident on an electronic processing device employs aggregated timestamps. In this way timestamps can be generated and compared to one another without the need for a real-time clock with a power backup. Aggregated time includes the last known time that the device synchronized its clock with a reference time available over a network. Aggregated time also includes a relative time value which in part accumulates using a session clock whenever the device is powered-up. When network time becomes available the operating system or other software will use this information to fix up the already generated aggregated timestamps. A comparison of timestamps will most of the time be resolved for stamps generated on the same device and will generally be resolved by comparing time frames when the timestamps being compared are generated by different devices.

First claim

Opening claim text (preview).

The invention claimed is: 1. A method for generating a timestamp for an event that occurs on an electronic processing device, comprising: determining a last available network time when a timestamp was made and a relative time at which the event occurs; generating a first aggregated time value of the event based on the last available network time when a timestamp was made and the relative time at which the event occurs; revising the first aggregated time value when network time is next available to provide a revised aggregated time value; associating the timestamp for the event with the revised aggregated time value; and wherein the relative time at which the event occurs includes a power time that represents a time that begins with a session following the last session in which network time last became unavailable and which accrues over one or more sessions during which the electronic processing device is powered up and which is unset whenever network time is available. 2. The method of claim 1 wherein the relative time also includes a network interval that represents a time at which network time is acquired after a timestamp is made without reference to network time and which is equal to zero when network time is available. 3. The method of claim 2 wherein an aggregated time value is specified by values populating at least four fields, a first field being populated with a value for the last available network time, a second field being populated with a value for the power time, a third value being populated with the network interval and a fourth field being populated by a device ID uniquely identifying the electronic processing device. 4. The method of claim 3 wherein revising the first aggregated time value is performed when network time is next available and the aggregated time has a value for the power time that is greater than zero and a value for the network interval that is equal to zero. 5. The method of claim 3 wherein the event is associated with a file and revising the first aggregated time value includes scanning for files having an aggregated time stamp with a power time that is set and updating the value of the network interval with a current network time. 6. A method for determining and comparing a first timestamp for a first event to a second timestamp for a second event which events occur on one or more electronic devices, comprising: determining a first aggregated timestamp for the first event and a second aggregated timestamp for the second event, wherein an aggregated timestamp is specified by values populating at least four fields, a first field being populated with a value for a last available network time, a second field being populated with a value for a power time, a third value being populated with a value for a network interval and a fourth field being populated by a device ID uniquely identifying the electronic processing device; and if the power time for both the first and second aggregated timestamps is unset, comparing the network time for the first aggregated timestamp to the network time for the second aggregated timestamp to determine that the first or second aggregated timestamp having a later network time occurs later in time. 7. The method of claim 6 wherein comparing the network time for the first aggregated timestamp to the network time for the second aggregated timestamp to determine that the first or second aggregated timestamp having a later network time occurs later in time is performed if the power time for both the first and second aggregated timestamps is unset and the device IDs for the first and second aggregated timestamps are the same or different. 8. The method of claim 6 further comprising, if the power time for at least one of the first and second aggregated timestamp is nonzero and the device IDs for the first and second aggregated timestamps are the same, comparing the network time for the first aggregated timestamp to the network time for the second aggregated timestamp to determine that the first or second aggregated timestamp having a later network time occurs later in time or, if the network time for the first and second aggregated timestamps are the same, comparing the power time for the first aggregated timestamp to the power for the second aggregated timestamp to determine that the first or second aggregated timestamp having a later power time occurs later in time. 9. The method of claim 6 further comprising, if the power time for at least one of the first and second aggregated timestamp is nonzero and the device IDs for the first and second aggregated timestamps are different, comparing a first timeframe associated with the first aggregated timestamp and a second timeframe associated with the second aggregated timestamp such that if the first and second timeframes do not overlap, the aggregated timestamp having a later timeframe is determined to have occurred later in time, wherein the timeframe for an aggregated timestamp equals the network time of the aggregated timestamp if the power time is equal to zero or if the power time is not equal to zero then the timeframe represents a time interval between an earlier time and a later time, wherein the earlier time is equal to a sum of the network time and the power time for the aggregated timestamp and the later time is equal to current time if the network interval for the aggregated timestamp is zero or the later time is equal to the network interval for the aggregated timestamp if the network interval is not equal to zero. 10. The method of claim 6 wherein determining the first and second aggregated timestamps includes revising the first and second aggregated timestamps when network time is next available. 11. The method of claim 10 wherein revising the first aggregated timestamp is performed when network time is next available and the first aggregated time has a value for the power time that is unset and a value for the network interval that is equal to zero. 12. An apparatus, comprising: a computer-readable storage medium; and a processor responsive to the computer-readable storage medium and to a computer program, the computer program, when loaded into the processor, operable to determine a last available network time when a timestamp was made and a relative e at which the event occurs; generate a first aggregated time value of the event based on the last available network time when a timestamp was made and the relative time at which the event occurs; revise the first aggregated time value when network time is next available to provide a second aggregated time value; associate the timestamp for the event with the second aggregated time value ;and wherein the relative time at which the event occurs includes a power time that represents a time since network time last became unavailable and which accrues over one or more sessions during which the electronic processing device is powered up and which is unset whenever network time is available. 13. The apparatus of claim 12 wherein the relative time also includes a network interval that represents a time at which network time is acquired after a timestamp is made without reference to network time and which is equal to zero when network time is available. 14. The apparatus of claim 13 wherein an aggregated time value is specified by values populating at least four fields, a first field being populated with a value for the last available network time, a second field being populated with a value for the power time, a third value being populated with the network interval and a fourth field being populated by a device ID uniquely identifying the electronic processing device.

Assignees

Inventors

Classifications

  • Time supervision arrangements, e.g. real time clock · CPC title

  • H04L67/142Primary

    Managing session states for stateless protocols; Signalling session states; State transitions; Keeping-state mechanisms · CPC title

  • Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes · CPC title

  • Additional information in the notification, e.g. enhancement of specific meta-data · 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 US8984168B2 cover?
An operating system or other software resident on an electronic processing device employs aggregated timestamps. In this way timestamps can be generated and compared to one another without the need for a real-time clock with a power backup. Aggregated time includes the last known time that the device synchronized its clock with a reference time available over a network. Aggregated time also inc…
Who is the assignee on this patent?
Callaghan David, Karamov Sergey, Microsoft Technology Licensing Llc
What technology area does this patent fall under?
Primary CPC classification H04L67/142. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Mar 17 2015 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 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).