Information about the network's clock, ticks, slots, etc.
Time in Solana is marked primarily by _slots_, which occur approximately every
400 milliseconds, and are numbered sequentially. For every slot, a leader is
chosen from the validator set, and that leader is expected to produce a new
block, though sometimes leaders may fail to do so. Blocks can be identified
by their slot number, and some slots do not contain a block.
An approximation of the passage of real-world time can be calculated by
multiplying a number of slots by [`DEFAULT_MS_PER_SLOT`], which is a constant target
time for the network to produce slots. Note though that this method suffers
a variable amount of drift, as the network does not produce slots at exactly
the target rate, and the greater number of slots being calculated for, the
greater the drift. Epochs cannot be used this way as they contain variable
numbers of slots.
The network's current view of the real-world time can always be accessed via
[`Clock::unix_timestamp`], which is produced by an [oracle derived from the
validator set][oracle].
[oracle]: https://docs.solanalabs.com/implemented-proposals/validator-timestamp-oracle