1. 概述
最近在查阅一些物联网系统相关的知识,因此查到了实时操作系统(Real Time Operating System,简称RTOS
)。我最早接触的RTOS
是μC/OS,当时是为了学习操作系统相关的知识,后来工作也接触过一些RTOS,比如FreeRTOS.由于长期关注移动开发领域,感觉RTOS很陌生。因此准备写一些RTOS的知识,方便以后查阅。
2. 常见的RTOS
2.1 μC/OS
μC/OS一个完整的、可移植、可固化、可裁剪的抢占式实时多任务内核,它包含了实时内核、进程管理、时间管理、进程间通信和内存管理等功能。它是开源的,大部分代码通过C语言实现,它支持多任务并且通过可抢占式来切换任务,这是它最大的特点。
2.2 FreeRTOS
FreeRTOS是一个可移植的实时多任务操作系统,它的功能包括:任务管理、时间管理、信号量、消息队列、内存管理、记录功能、软件定时器、协程等。它也是开源的,大部分代码通过C语言实现,它支持多任务并且支持类似抢占式的优先级调度来管理多个任务,同时也支持轮询式的多任务调度。该系统会占用一定的系统资源(尤其是RAM),因此相比μC/