Why do modern operating systems use preemptive multitasking?