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.
|