/** * @file * * @brief Initializes the RTEMS API * * @ingroup ClassicRTEMS */ /* * COPYRIGHT (c) 1989-2008. * On-Line Applications Research Corporation (OAR). * * The license and distribution terms for this file may be * found in the file LICENSE in this distribution or at * http://www.rtems.org/license/LICENSE. */ #if HAVE_CONFIG_H #include "config.h" #endif #define RTEMS_API_INIT #include #include #include #include #include #include #include #include #include #include #if defined(RTEMS_MULTIPROCESSING) #include #endif #include #include #include #include #include #include Objects_Information *_RTEMS_Objects[ OBJECTS_RTEMS_CLASSES_LAST + 1 ]; void _RTEMS_API_Initialize(void) { /* * Install our API Object Management Table and initialize the * various managers. */ _Objects_Information_table[OBJECTS_CLASSIC_API] = _RTEMS_Objects; #if defined(RTEMS_MULTIPROCESSING) _Multiprocessing_Manager_initialization(); #endif _RTEMS_tasks_Manager_initialization(); _Timer_Manager_initialization(); _Signal_Manager_initialization(); _Event_Manager_initialization(); _Message_queue_Manager_initialization(); _Semaphore_Manager_initialization(); _Partition_Manager_initialization(); _Region_Manager_initialization(); _Dual_ported_memory_Manager_initialization(); _Rate_monotonic_Manager_initialization(); _Barrier_Manager_initialization(); }