Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
FFCLOCK(4)		 BSD Kernel Interfaces Manual		    FFCLOCK(4)

     FFCLOCK --	Feed-forward system clock

     options FFCLOCK

     The ntpd(8) daemon	has been the dominant solution for system clock	syn-
     chronisation for many years, which	has in turn influenced the design of
     the system	clock.	The ntpd daemon	implements a feedback control algo-
     rithm which has been demonstrated to perform poorly in common use cases.

     Feed-forward clock	synchronisation	algorithms implemented by an appropri-
     ate daemon, in concert with the FFCLOCK kernel support, have been shown
     to	provide	highly robust and accurate clock synchronisation.  In addition
     to	time keeping, the FFCLOCK 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 FFCLOCK kernel	support	provides feed-forward timestamping functions
     within the	kernel and system calls	to support feed-forward	synchronisa-
     tion daemons (see ffclock(2)).

   Kernel Options
     The following kernel configuration	options	are related to FFCLOCK:

     FFCLOCK  Enable feed-forward clock	support.

     When feed-forward clock support is	compiled into the kernel, multiple
     system clocks become available to choose from.  System clock configura-
     tion is possible via the kern.sysclock sysctl(8) tree which provides the
     following variables:
		 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.

		 Lists the names of available system clocks (read only).

     Feed-forward system clock configuration is	possible via the
     kern.sysclock.ffclock sysctl tree which provides the following variables:

		 Feed-forward clock kernel version (read only).

		 Use reliable hardware timecounter as the feed-forward
		 counter.  Will	eventually be useful for virtualised environ-
		 ment like xen(4), but currently does nothing.

     clock_gettime(2), ffclock(2), bpf(4), timecounters(4), sysctl(8)

     Feed-forward clock	support	first appeared in FreeBSD 10.0.

     The feed-forward clock support was	written	by Julien Ridoux
     <> in collaboration with Darryl Veitch
     <> at the University	of Melbourne under sponsorship
     from the FreeBSD Foundation.

     This manual page was written by Julien Ridoux <>
     and Lawrence Stewart <>.

BSD			       December	1, 2011				   BSD


Want to link to this manual page? Use this URL:

home | help