In an information handling system in which a single physical machine is divided into a plurality of logical partitions, each of which functions as a logical machine having access to specified resources of said physical machine, a method of synchronizing said logical partitions to an external time reference (ETR) clock value, comprising the steps of:
- storing a host clock value and, for each of said logical partitions, an epoch offset from the host clock value;
- specifying for each of a subset of said plurality of logical partitions an ETR offset from said ETR clock value;
- in response to a request from a logical partition to read the host clock value, arithmetically combining the host clock value with the epoch offset stored for the partition to generate a logical clock value that is returned to the partition as a host clock value;
- in response to a request from a logical partition from said subset to read the ETR clock value, arithmetically combining the ETR clock value with the ETR offset specified for the partition to generate an offset ETR clock value that is returned to the partition as an ETR clock value;
- and
- in response to a request from a logical partition to set the host clock value to a new clock value, storing a new epoch offset for said partition that is generated as the difference between the new clock value and the host clock value.