Introduce <sys/qmath.h>, a fixed-point math library from Netflix.
This makes it possible to perform mathematical operations
on
fractional values without using floating point. It operates on Q
numbers, which are integer-sized, opaque structures
initialized
to hold a chosen number of integer and fractional
bits.
For a general description of the Q number system, see the "Fixed Point
Representation & Fractional Math" whitepaper[1]; for the actual
API see the qmath(3) man page.
This is one of dependencies for the upcoming stats(3)
framework[2] that will be applied to the TCP stack in
a later commit.
- https://www.superkits.net/whitepapers/Fixed%20Point%20Representation%20&%20Fractional%20Math.pdf
- https://reviews.freebsd.org/D20477
Sponsored By: Klara Inc, Netflix
Obtained from: Netflix