I am running the 2008 kernel on the BF537 and was wondering if a timer drives process scheduling or if polling is used? Under /proc/interrupts I noticed BFIN Timer Tick is listed but wasn't sure what it was used for. Also, how often does the scheduler execute?

Thanks,

David Kasper

QuoteReplyEditDelete

2008-10-13 13:32:14 Re: Basic uClinux Scheduler Question

Mike Frysinger (UNITED STATES)

Message: 63572

the scheduler runs everytime the core timer ticks. there is no polling anywhere. the core timer executes as often as you've configured it to ... see the kernel HZ config option.

QuoteReplyEditDelete

2008-10-16 08:05:09 Re: Basic uClinux Scheduler Question

Vasanth Nayak (INDIA)

Message: 63788

Hi Mike,

Had a Q regarding the RT priority of a uClinux thread.Iam using the 2008R1-RC8 distribution on a Blackfin 527 custom board.

Will a thread with RT priority = 1 preempt another thread with RT priority = 2 OR is it the other way around ?

Secondly, In my application iam noticing that the thread with a lower RT priority (10) does NOT yield to a thread of higher RT priority (22) (until lower priority thread voluntarily yields).

If schedule() function is called on every Core timer tick,then the lower priority thread should have been preempted.

And the same App runs perfectly (i,e lower RT thread preempted by higher priority RT thread) on a X86 machine running Ubuntu 8. Point to be noted is that Ubuntu uses NPTL instead of LinuxThreads.