嵌入式操作系统FreeRTOS 的原理与实现 在嵌入式领域中,嵌入式实时操作系统正得到越来越广泛的应用
采用嵌入式实时操作系统(RTOS)可以更合理、更有效地利用CPU 的资源,简化应用软件的设计,缩短系统开发时间,更好地保证系统的实时性和可靠性
由于 RTOS 需占用一定的系统资源(尤其是 RAM 资源),只有μ C/OS-II、embOS、s alv o、FreeRTOS 等少数实时操作系统能在小 RAM 单片机上运行
相对于 C/OS-II、embOS 等商业操作系统,FreeRTOS 操作系统是完全免费的操作系统,具有源码公开、可移植、可裁减、调度策略灵活的特点,可以方便地移植到各种单片机上运行,其最新版本为 2
1 FreeRTOS 操作系统功能 作为一个轻量级的操作系统,FreeRTOS 提供的功能包括:任务管理、时间管理、信号量、消息队列、内存管理、记录功能等,可基本满足较小系统的需要
FreeRTOS 内核支持优先级调度算法,每个任务可根据重要程度的不同被赋予一定的优先级,CPU 总是让处于就绪态的、优先级最高的任务先运行
FreeRT0S 内核同时支持轮换调度算法,系统允许不同的任务使用相同的优先级,在没有更高优先级任务就绪的情况下,同一优先级的任务共享 CPU 的使用时间
FreeRTOS 的内核可根据用户需要设置为可剥夺型内核或不可剥夺型内核
当 FreeRTOS 被设置为可剥夺型内核时,处于就绪态的高优先级任务能剥夺低优先级任务的CPU 使用权,这样可保证系统满足实时性的要求;当 FreeRTOS 被设置为不可剥夺型内核时,处于就绪态的高优先级任务只有等当前运行任务主动释放 CPU 的使用权后才能获得运行,这样可提高 CPU 的运行效率
2 FreeRTOS 操作系统的原理与实现 2
1 任务调度机制的实现 任务调度机制是嵌入式实时操