Hi Murali, Whoops - meant to reply to the list. On Mon, Feb 7, 2011 at 6:32 AM, Murali N <nalajala.murali@xxxxxxxxx> wrote: > Hi, > I have one basic doubt on kernel idle function. Who called the kernel > cpu_idle function? The code which boots up the kernel becomes the idle thread. It's called from the end of rest_init <http://lxr.linux.no/linux+v2.6.37/init/main.c#L425> > I know a theory that it gets called when there is no activity in the > system? Here i have the following question. > > 1. How cpu knows that there is nothing to be left out to run? > scheduler get to know this by looking the RUN queue? The idle thread is always ready to run. It just happens to be the lowest priority thread on the system, so it only runs when there is nothing else to do. > Also in 'kernel/arch/arm/process.c' file i saw a variable called > 'hlt_counter', what exactly is this variable? I think that this is from the x86 world. It seems to be "disabling the HLT instruction" <http://en.wikipedia.org/wiki/HLT> Executing the halt instruction is effectively the equivalent of entering low power idle (during which the CPU is not executing any instructions at all). I suppose it might be useful for certain polling operations. Dave Hylands _______________________________________________ Kernelnewbies mailing list Kernelnewbies@xxxxxxxxxxxxxxxxx http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies