System startup — cyg_start()

cyg_start() is the core of the startup mechanism. The default definition is in infra/current/src/startup.cxx

It calls, in turn,

    cyg_prestart()
    cyg_package_start()
    cyg_user_start()
  

and then starts the eCos scheduler if the system has been configured to have a kernel and scheduler.

You can override the default cyg_start() routine by providing your own function by the same name with the following prototype:

void cyg_start(void);

Warning

Overriding cyg_start() should rarely, if ever, be done. The functions cyg_prestart() and cyg_user_start() described just below allow enough flexibility for installing user initialization code safely for almost all applications.

Note: If you are supplying your own definition of this function from a C++ file, make sure it has "C" linkage.