Messages in this thread | | | Subject | Re: scheduler/SCHED_FIFO behaviour | From | Steven Rostedt <> | Date | Mon, 04 Apr 2005 19:17:04 -0400 |
| |
On Tue, 2005-04-05 at 04:36 +0530, Arun Srinivas wrote: > I am scheduling 2 SCHED_FIFO processes and set them affinity( process A runs > on processor 1 and process B runs on processor 2), on a HT processor.(I did > this cause I wanted to run them together).Now, in schedule() I measure the > timedifference between when they are scheduled. I found that when I > introduce these 2 processes as SCHED_FIFO they are > > 1)scheduled only once and run till completion ( they running time is around > 2 mins.)
If they are the highest priority task, and running as FIFO this is the proper behavior.
> 2)entire system appears frozen....no mouse/key presses detected until the > processes exit. >
If X is not at a higher priority than the test you are running, it will never get a chance to run.
> >From what I observed does it mean that even the OS / interrupt handler does > not occur during the entire period of time these real time processes run?? > (as I said the processes run in minutes).
The interrupts do get processed. Now the bottom halves and tasklets may be starved if they are set at a lower priority than your test (ie. the ksoftirqd thread). But most likely they are processed too.
> How can I verify that? >
#!/bin/sh cat /proc/interrupts run_test cat /proc/interrupts
If the run_test takes 2 minutes, you should see a large difference in the two outputs.
-- Steve
> Thanks > Arun
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |