What happens during boot time in terms of scheduling?

Richi Dubey richidubey at gmail.com
Fri Aug 14 09:25:50 UTC 2020


Hi,

I've been trying to debug my program and I request someone to help me learn
more about what happens when a system starts. Logically, what is the flow
of things happening? Do all the CPUs start at the same time in the
beginning? Which is the first node that gets scheduled on the CPU?

The current flow I see right now is:

bsp_start_hook_0_done -> boot_card -> rtems_initialize_executive ->
 _RTEMS_tasks_Initialize_user_task -> rtems_task_start and so on.

Is _RTEMS_tasks_Initialize_user_task responsible for starting the Init task?

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?

Please let me know.

Thanks
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/devel/attachments/20200814/fc7ba59e/attachment.html>


More information about the devel mailing list