top button
Flag Notify
Site Registration

Which RTOS supports Non-Preemptive scheduling? Why other scheduling methods are supported by such Oses?

+1 vote
223 views
Which RTOS supports Non-Preemptive scheduling? Why other scheduling methods are supported by such Oses?
posted May 9, 2014 by Prachi Sharma

Share this question
Facebook Share Button Twitter Share Button LinkedIn Share Button

1 Answer

0 votes

The standard UNIX kernel is a non-preemptive kernel; it does not allow a user process to preempt a process executing in kernel mode. Once a running process issues a system call and enters kernel mode, preemptive context switches are disabled until the system call is completed. Although there are context switches, a system call may take an arbitrarily long time to execute without voluntarily giving up the processor. During that time, the process that made the system call may delay the execution of a higher-priority, run-able, real-time process.

The maximum process preemption latency for a non-preemptive kernel is the maximum amount of time it can take for the running, kernel-mode process to switch out of kernel mode back into user mode and then be preempted by a higher-priority process. Under these conditions it is not unusual for worst-case preemption to take seconds, which is clearly unacceptable for many real-time applications.

answer May 13, 2014 by Varun Kumar
Similar Questions
+3 votes

How priority is initialized in RTOS? who will initiate priority for scheduling?

+1 vote

What is real-time operating system. what factors make an operating system as real O.S. And when a project is being started then how an engineering team decides about preferable/suitable O.S.

+2 votes

Please explain with detail, what is the major difference between Normal OS and RTOS?

...