对于许多物联网项目而言,基于 main() 简单循环的裸机设计不再是一个可行的选择。随着开发人员要求实施复杂通信协议,并遵循严格的时间限制,使用实时操作系统 (RTOS) 的多任务处理能力的优势愈加明显。多年来,Silicon Labs 一直支持推广采用 RTOS,并提供快速启动和运行新的多任务项目所需的所有工具。
手动将 RTOS 添加到全新的软件项目可能面临着挑战,尤其是对不太熟悉 RTOS 源文件、配置参数、典型构建设置等的人而言,这就是为什么 Silicon Labs 通过 Simplicity Studio IDE 提供 RTOS 代码的原因所在。利用 Simplicity Studio IDE 进行物联网项目的开发人员将找到预封装的示例和有用的配置工具,可加快基于 RTOS 开发工作的初始阶段。
FreeRTOS 是一款根据开源许可条款提供的轻量、易于使用的实时内核。自近二十年前问世以来,FreeRTOS 积累了庞大的用户群,并已成功研制出各种嵌入式设计。Silicon Labs 的 Simplicity Studio IDE 提供了简化创建基于 FreeRTOS 新项目的示例项目和配置工具。
2017 年末,Amazon 正式接管了 FreeRTOS 的开发和维护职责。自此,Amazon 通过一系列库集扩展了原有的代码库,其中许多库致力于在最初由 FreeRTOS 内核锁定的资源受限设备类型中实现连接。Silicon Labs 在 Simplication Studio 中构建了对 Amazon 库的支持,为开发连接设备提供了直观框架。
借助 Micrium OS,开发人员拥有一套完整的 RTOS 组件,有助于应对当今物联网设计带来的众多挑战。虽然 Micrium OS 来源于商业 RTOS 领域,但可在 EFR32 和 EFM32 设备中免费使用。该 OS 仅通过 Simplicity Studio 交付,其中包括许多基于 Micrium 的有用示例,这些示例可简化早期阶段的新开发工作。
FreeRTOS | Micrium OS | ||
内核 | API | 专有无线带 CMSIS-RTOS2 层 | 专有无线带 CMSIS-RTOS2 层 |
调度算法 | 优先级的、抢占式,支持时间切片 | 优先级的、抢占式无线,支持时间切片 | |
资源保护 | 互斥量和信号量 | 互斥量和信号量 | |
信令和通信 | 信号量、事件标志、队列(按副本)和任务通知 | 信号量、任务信号量、事件标志、队列(按引用)和任务队列 | |
软件定时器 | 单次和定期 | 单次和定期 | |
内置统计 | 是 | 是 | |
所有权 | 亚马逊管理的开源项目 |
由 Silicon Labs 开发和维护 | |
许可 | MIT | 专有 (Simplicity Studio MSLA),在 EFR32 和 EFM32 上无许可费用 | |
无线协议栈支持 | 蓝牙、连接(专有无线)、OpenThread、Wi-SUN 和 Z-Wave | 蓝牙、连接(专有无线)、Wi-SUN 和 Zigbee | |
其他组件 (在 Simplicity Studio 中交付) |
Amazon FreeRTOS 库,包括 BLE 和通用 I/O | Micrium OS 文件系统、IO 模块和协议栈(TCP/IP、USB 和 CAN) |
Microsoft 为联网设备开发人员提供了多种软件解决方案,Azure RTOS 是物联网巨头产品组合的最新产品之一。而 Windows IoT 和 Azure Sphere OS 等其他 Microsoft 产品的内存和处理需求超出了许多资源受限的 Cortex-M 类设备的能力。Azure RTOS 正是完全面向此类硬件。开发人员选择 Azure RTOS,能够使物联网设计获得经过完整测试的、高效和可靠的基础。
请选择至少一列。