Need help understand how the scheduler table entries work
Richi Dubey
richidubey at gmail.com
Mon Aug 10 15:09:33 UTC 2020
Hi,
I want your help to figure out how the table entries for a scheduler work.
For STRONG_APA scheduler, the flow is :
link
<https://git.rtems.org/rtems/tree/cpukit/include/rtems/scheduler.h#n263>
-------------------------------------------------------------------------------------------------------
#define RTEMS_SCHEDULER_TABLE_STRONG_APA( name, obj_name ) \
{ \
&SCHEDULER_STRONG_APA_CONTEXT_NAME( name ).Base.Base.Base, \
SCHEDULER_STRONG_APA_ENTRY_POINTS, \
RTEMS_ARRAY_SIZE( \
SCHEDULER_STRONG_APA_CONTEXT_NAME( name ).Ready \
) - 1, \
( obj_name ) \
SCHEDULER_CONTROL_IS_NON_PREEMPT_MODE_SUPPORTED( false ) \
}
-------------------------------------------------------------------------------------------------------
which is used for:
link
<https://git.rtems.org/rtems/tree/cpukit/include/rtems/confdefs/scheduler.h#n154>
-------------------------------------------------------------------------------------------------------
#ifdef CONFIGURE_SCHEDULER_STRONG_APA
#ifndef CONFIGURE_SCHEDULER_NAME
#define CONFIGURE_SCHEDULER_NAME rtems_build_name( 'M', 'A', 'P', 'A' )
#endif
#ifndef CONFIGURE_SCHEDULER_TABLE_ENTRIES
#define CONFIGURE_SCHEDULER \
RTEMS_SCHEDULER_STRONG_APA( \
dflt, \
CONFIGURE_MAXIMUM_PRIORITY + 1 \
)
* #define CONFIGURE_SCHEDULER_TABLE_ENTRIES \
RTEMS_SCHEDULER_TABLE_STRONG_APA( dflt, CONFIGURE_SCHEDULER_NAME ) #endif*
#endif
-------------------------------------------------------------------------------------------------------
which is eventually used for:
link
<https://git.rtems.org/rtems/tree/cpukit/include/rtems/confdefs/scheduler.h#n239>
-------------------------------------------------------------------------------------------------------
const Scheduler_Control _Scheduler_Table[] = {
CONFIGURE_SCHEDULER_TABLE_ENTRIES
};
-------------------------------------------------------------------------------------------------------
I do not understand what the Scheduler_Table[] or the
SCHEDULER_TABLE_ENTRIES should contain.
I need help with this because I have to change
the RTEMS_SCHEDULER_TABLE_STRONG_APA since I am changing some of the
variables in the Scheduler_strong_APA_Context.
Thank you,
Richi.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/devel/attachments/20200810/624fe093/attachment.html>
More information about the devel
mailing list