This 'freestanding' implementation of the MirageOS CLOCK interface is designed to be linked against an embedded runtime that provides a concrete implementation of the clock source. Example implementations include the Solo5 backend of MirageOS.
Published: 02 Feb 2022
mirage-clock -- libraries and module types for portable clocks
It implements an
MCLOCK module that represents a monotonic timesource since an arbitrary point, and
PCLOCK which counts time since the Unix epoch.
The following sources are used:
The Unix version uses
clock_gettime, depending on which OS is in use (see clock_stubs.c).
The freestanding version uses the paravirtual clock source from the hypervisor.