On Fri, Aug 14, 2020 at 10:51 AM Richi Dubey <richidu...@gmail.com> wrote:
> My god. There's so much that a bachelor's degree does not teach. > This particular one definitely qualifies as an example of Arthur C. Clarke's Third Law to me. :) Clarke's Third Law: Any sufficiently advanced technology is indistinguishable from magic. Profiles of the Future (revised edition, 1973) It really is quite simply once you see the end result. There is just an array of function pointers in a special section with a start and end symbol. And a loop to go over them at init time. All built up by the linker based on dependencies. --joel > Thank you for your answer. > > On Fri, Aug 14, 2020 at 6:18 PM Sebastian Huber < > sebastian.hu...@embedded-brains.de> wrote: > >> On 14/08/2020 11:25, Richi Dubey wrote: >> >> > Is _RTEMS_tasks_Initialize_user_task responsible for starting the Init >> > task? >> Yes. >> > >> > Also how does the following code which is part >> > of rtems_initialize_executive: >> > >> > /* Invoke the registered system initialization handlers */ >> > RTEMS_LINKER_SET_FOREACH( _Sysinit, item ) { >> > ( *item->handler )(); >> > } >> > >> > call _RTEMS_tasks_Initialize_user_task? >> >> This is done via a linker set: >> >> https://docs.rtems.org/branches/master/c-user/linker_sets.html >> >> You can see the entries with this host command line tool: >> >> https://docs.rtems.org/branches/master/user/tools/exeinfo.html >> >> _______________________________________________ > 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