On Mon, Aug 10, 2020 at 9:10 AM Richi Dubey <richidu...@gmail.com> wrote: > > Hi, > > I want your help to figure out how the table entries for a scheduler work. > > For STRONG_APA scheduler, the flow is : > link > ------------------------------------------------------------------------------------------------------- > #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 > ------------------------------------------------------------------------------------------------------- > > #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 > ------------------------------------------------------------------------------------------------------- > const Scheduler_Control _Scheduler_Table[] = { > CONFIGURE_SCHEDULER_TABLE_ENTRIES > }; > > ------------------------------------------------------------------------------------------------------- > > I do not understand what the Scheduler_Table[] or the SCHEDULER_TABLE_ENTRIES > should contain.
The type definition of the _Scheduler_Table[] is Scheduler_Control. This structure is defined in cpukit/include/rtems/score/scheduler.h:269 > 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. > There is not really anything to change about it. You specialize the scheduler by the Scheduler_Context and Scheduler_Operations structures. You still just pass through the context base to the scheduler table. > Thank you, > Richi. > _______________________________________________ > devel mailing list > devel@rtems.org > http://lists.rtems.org/mailman/listinfo/devel _______________________________________________ devel mailing list devel@rtems.org http://lists.rtems.org/mailman/listinfo/devel