A Practical Verification Framework for Preemptive OS Kernels