Not quite. If a process is executing a system call and interrupts are disabled then it will not be preempted (because the timer interrupt can't happen). Since interrupts are automatically disabled on entry to a system call and are only reenabled when the process will have to wait for a long time, most of time a process won't be preempted inside the kernel. However it can be preempted at any time when running in user mode. |