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

Richi Dubey richidubey at gmail.com
Mon Aug 17 12:26:04 UTC 2020


Thank you for your answer.

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.

Yes I noticed that. My implementation requires having a chain of both
scheduled and ready nodes. Where should the entry/exit point of such a list
be?

On Mon, Aug 17, 2020 at 5:41 PM Sebastian Huber <
sebastian.huber at embedded-brains.de> wrote:

> 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.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/devel/attachments/20200817/7c24a1b3/attachment.html>


More information about the devel mailing list