1. A method, comprising: monitoring threads of an Operating System (OS); compiling the OS to uniquely label an existing function and a replacement function before the monitoring; and gradually transitioning the treads from accessing an existing function to accessing a replacement function as the threads enter or exit kernel processing within the OS using labels that identify the existing function and the replacement function without halting the OS, wherein gradually transitioning includes using flags set on each of the threads that are initially set to access the existing function, and each flag is unset for each of the threads when each of the threads enter or exit the kernel processing of the OS, a thread of the threads having an unset flag identifying that said thread is to access the replacement function.