2008-10-13 13:24:04     Basic uClinux Scheduler Question

Document created by Aaronwu Employee on Aug 8, 2013
Version 1Show Document
  • View in full screen mode

2008-10-13 13:24:04     Basic uClinux Scheduler Question

David Kasper (UNITED STATES)

Message: 63571   


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?




David Kasper




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.




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.


Any ideas ?