RT-Thread 编程指南 https://www.rt-thread.org/document/site/programming-manual/basic/basic/ 内核架构: 实时内核的实现包括:对象管理、线程管理及调度器、线程间通信管理、时钟管理及内存管理等等,内核最小的资源占用情况是 3KB ROM,1.2KB RAM。 RT-Thread 启动流程 RT-Thread 支持多种平台和多种编译器,而 rtthread_startup() 函数是 RT-Thread 规定的统一启动入口。 一般执行顺序是: 系统先从启动文件开始运行, 然后进入 RT-Thread 的启动 rtthread_startup() , 最后进入用户入口 main(),如下图所示: 启动代码 int rtthread_startup(void) { rt_hw_interrupt_disable(); /* 板级初始化:需在该函数内部进行系统堆的初始化 */ rt_hw_board_init(); /* 打印 RT-Thread 版本信息 */ rt_show_version(); /* 定时器初始化 */ rt_system_timer_init(); /* 调度器初始化 */ rt_system_scheduler_init(); #ifdef RT_USING_SIGNALS /* 信号初始化 */ rt_system_signal_init(); #endif /* 由此创建一个用户 main 线程 */ rt_application_init(); /* 定时器线程初始化 */ rt_system_timer_thread_init(); /* 空闲线程初始化 */ rt_thread_idle_init(); /* 启动调度器 */ rt_system_scheduler_start(); /* 不会执行至此 */ return 0; } 大致可以分为四个部分:
首页 | About | 标签 | 分类 |