queue. If the highest-priority queue contains multiple threads, then
they run in ``round robin'' order.
+Multiple facets of the scheduler require data to be updated after a
+certain number of timer ticks. In every case, these updates should
+occur before any ordinary kernel thread has a chance to run, so that
+there is no chance that a kernel thread could see a newly increased
+@func{timer_ticks} value but old scheduler data values.
+
@menu
* Thread Niceness::
* Calculating Priority::
@tab @code{n * f}
@item Convert @code{x} to integer (rounding down):
-@tab @code{x * f}
+@tab @code{x / f}
@item Convert @code{x} to integer (rounding to nearest):
@tab @code{(x + f / 2) / f}