In this chapter, we looked in detail at most of the routines that the kernel provides to drive time-based events, in addition to comprehending the fundamental aspects of Linux time, its infrastructure, and its measurement. We also briefly looked at POSIX clocks and some of their key time access and modification routines. Effective time-driven programs however rest on careful and calculated use of these routines.
In the next chapter, we will briefly look at the management of dynamic kernel modules.