US 11,853,114 B1
Virtualized hardware clocks for providing highly accurate time information in hosted machine instances
Julien Ridoux, Seattle, WA (US); Joshua Benjamin Levinson, Seattle, WA (US); Alan Michael Judge, Dublin (IE); Colin Whittaker, Dublin (IE); and James Paul Rivers, Capitola, CA (US)
Assigned to Amazon Technologies, Inc., Seattle, WA (US)
Filed by Amazon Technologies, Inc., Seattle, WA (US)
Filed on Dec. 10, 2021, as Appl. No. 17/643,796.
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 1/10 (2006.01); G06F 1/08 (2006.01); G06F 1/12 (2006.01); G06F 1/14 (2006.01)
CPC G06F 1/12 (2013.01) [G06F 1/10 (2013.01); G06F 1/14 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A system for providing shared hardware clock access to hosted machine instances forming a distributed computing environment, the system comprising:
a reference timekeeper providing a reference clock synchronized to a Global Navigation Satellite System (GNSS); and
a plurality of host computing devices, each host computing device hosting one or more machine instances using a first set of computing resources and including isolated timing hardware utilizing a second distinct set of computing resources;
wherein the isolated timing hardware of an individual host computing device is configured to:
set a hardware clock of the isolated timing hardware according to a reference time and a pulse-per-second (PPS) signal obtained from the reference timekeeper via a dedicated time network inaccessible to the one or more machine instances hosted by the individual host computing device;
provide, within each of the one or more machine instances, a virtualized hardware clock, the virtualized hardware clock of each of the one or more machine instances being represented within a respective instance as a locally addressable hardware device;
obtain, from a machine instance of the one or more machine instances, a request to read a current time from the virtualized hardware clock of the machine instance; and
return, in response to the request, a current time of the hardware clock of the isolated timing hardware as a response from the virtualized hardware clock.