ffclock (4)
Leading comments
Copyright (c) 2011 The University of Melbourne All rights reserved. This documentation was written by Julien Ridoux at the University of Melbourne under sponsorship from the FreeBSD Foundation. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binar...
NAME
FFCLOCK - Feed-forward system clockSYNOPSIS
options FFCLOCKDESCRIPTION
The ntpd(8) daemon has been the dominant solution for system clock synchronisation for many years, which has in turn influenced the design of the system clock. The ntpd daemon implements a feedback control algorithm which has been demonstrated to perform poorly in common use cases.Feed-forward clock synchronisation algorithms implemented by an appropriate daemon, in concert with the kernel support, have been shown to provide highly robust and accurate clock synchronisation. In addition to time keeping, the kernel mechanism provides new timestamping capabilities and the ability to use specialised clocks. Feed-forward synchronisation is also very well suited for virtualised environments, reducing the overhead of timekeeping in guests and ensuring continued smooth operation of the system clock during guest live migration.
The kernel support provides feed-forward timestamping functions within the kernel and system calls to support feed-forward synchronisation daemons Po see ffclock(2) Pc .
Kernel Options
The following kernel configuration options are related to :
- FFCLOCK
- Enable feed-forward clock support.
Configuration
When feed-forward clock support is compiled into the kernel, multiple system clocks become available to choose from. System clock configuration is possible via the kern.sysclock sysctl(8) tree which provides the following variables:- kern.sysclock.active
- Name of the current active system clock which is serving time. Set to one of the names in kern.sysclock.available in order to change the default active system clock.
- kern.sysclock.available
- Lists the names of available system clocks Po read only Pc .
Feed-forward system clock configuration is possible via the kern.sysclock.ffclock sysctl tree which provides the following variables:
- kern.sysclock.ffclock.version
- Feed-forward clock kernel version Po read only Pc .
- kern.sysclock.ffclock.ffcounter_bypass
- Use reliable hardware timecounter as the feed-forward counter. Will eventually be useful for virtualised environment like xen(4), but currently does nothing.
SEE ALSO
clock_gettime2, ffclock(2), bpf(4), timecounters(4), sysctl(8)HISTORY
Feed-forward clock support first appeared in Fx 10.0 .AUTHORS
An -nosplit The feed-forward clock support was written by An Julien Ridoux Aq jridoux@unimelb.edu.au in collaboration with An Darryl Veitch Aq dveitch@unimelb.edu.au at the University of Melbourne under sponsorship from the FreeBSD Foundation.This manual page was written by An Julien Ridoux Aq jridoux@unimelb.edu.au and An Lawrence Stewart Aq lstewart@FreeBSD.org .