Software timer
A timer the RTOS kernel derives from the system tick rather than from a dedicated hardware register, so you can have as many as memory allows.
A microcontroller might have four or eight hardware timers, and most of them are already spoken for by PWM, ADC sampling and the tick interrupt itself. Software timers get around the shortage by keeping a sorted list of expiry times and comparing it against the tick count. When one expires, a callback runs, either once (one-shot) or repeatedly (auto-reload).
In FreeRTOS every callback runs in a single dedicated task, the timer service task, fed through a command queue. That makes timers safe to start from interrupts, but there is a catch: one callback that blocks stalls every other timer in the system. Resolution is also never finer than one tick, so anything needing microseconds goes back to the hardware.