RT-Thread RTOS  1.0.0
An open source embedded real-time operating system
System Initialization

Functions

void rt_system_tick_init (void)
void rt_system_heap_init (void *begin_addr, void *end_addr)
void rt_system_module_init (void)
void rt_system_object_init (void)
void rt_system_scheduler_init (void)
void rt_system_scheduler_start (void)
void rt_system_timer_init (void)
void rt_system_timer_thread_init (void)
void rt_application_init ()

Detailed Description

When RT-Thread operating system starts up, the basic operating system facility initialization routines must be invoked.

The suggested initialization sequence is:

User can put the low level hardware initialization in this function, such as DDR memory setting, pinmux setting, console device setting etc.


Function Documentation

void rt_system_tick_init ( void  )

This function will init system tick and set it to zero.

void rt_system_heap_init ( void *  begin_addr,
void *  end_addr 
)

This function will init system heap

Parameters:
begin_addrthe beginning address of system page
end_addrthe end address of system page

This function will initialize system heap memory.

Parameters:
begin_addrthe beginning address of system heap memory.
end_addrthe end address of system heap memory.
void rt_system_module_init ( void  )

This function will initialize system module

void rt_system_object_init ( void  )

This function will initialize system object management.

Deprecated:
since 0.3.0, this function does not need to be invoked in the system initialization.
void rt_system_scheduler_init ( void  )

This function will initialize the system scheduler

void rt_system_scheduler_start ( void  )

This function will startup scheduler. It will select one thread with the highest priority level, then switch to it.

void rt_system_timer_init ( void  )

This function will initialize system timer

void rt_system_timer_thread_init ( void  )

This function will initialize system timer thread

This function will initialize user application.

This function will be invoked when system initialization and system scheduler has not started. User can allocate memory, create thread, semaphore etc. However, user shall not suspend 'current' thread.

 All Data Structures Variables