How many scheduler nodes are created at the time system starts?

Sebastian Huber sebastian.huber at embedded-brains.de
Mon Aug 17 12:11:40 UTC 2020


On 17/08/2020 14:07, Richi Dubey wrote:

>     The scheduler should only work
>     with nodes which belong to a thread which is ready to execute,
>     e.g. made
>     visible to the scheduler via the unblock and ask_for_help operations.
>
> Got it. Maybe this is why my get_highest_ready function was failing.
>
> Also, how does the insert_ready function work? What are the rules for 
> a node being in the ready queue?
>
> I am asking this because I need a list of all the nodes in the system, 
> which are either ready to execute or are currently executing on a 
> processor. How do I go about obtaining this list?
The current SMP schedulers maintain a list of scheduled nodes. These are 
nodes which have an allocated processors. Nodes which are ready (they 
don't have an allocated processor) are maintained in chains, tables of 
chains, or red-black trees depending on the implementation.


More information about the devel mailing list