关注+星标公众,不错过精彩内容

作者 | strongerHuang

微信公众号 | strongerHuang

市面上的RTOS种类有很多,你可能不知道embOS,但你一定知道J-Link下载调试工具。是的,embOS和J-LinK都属于Segger公司。

Segger公司在全球嵌入式领域都非常有名,做的产品涵盖嵌入式IDE、RTOS及其组件、调试编译等软硬件方方面面的工具。

下面来说说FreeRTOS和embOS的一些区别。

一、内核特性与性能

  1. embOS

  • 优先级控制:embOS是一个优先级控制的多任务系统,设计用于实时系统应用,具有最小RAM和ROM占用、高速、多功能和高性能的特点。
  • 内核感知插件:提供内核感知插件,有助于开发者更好地理解和优化系统性能。
  • 任务调度:采用基于优先级的任务调度策略,确保高优先级任务能够及时响应。
  • FreeRTOS

    • 轻量高效:内核极小,最小化配置下仅占用6-12KB ROM和1KB RAM(取决于架构),适合资源受限的微控制器。
    • 调度方式:支持抢占式、协作式和混合调度方式,具有灵活性。同时,还提供时间片调度用于同等优先级任务的轮转执行。
    • 实时性:可以配置为硬实时操作系统内核,满足实时性要求。

    二、开发环境与工具

    1. embOS

    • 开发工具:通常与SEGGER Embedded Studio等开发工具配合使用,提供丰富的调试和监控功能。
    • 代码结构:embOS提供对象代码和源代码两种变体,开发者可以根据项目需求选择使用库或源代码。
  • FreeRTOS

    • 开源免费:采用MIT许可证,可免费用于商业和学术项目,无版权费。代码透明,开发者可完全访问和修改内核源码。
    • 开发工具:支持多种开发工具和编译器,具有良好的跨平台性。同时,提供丰富的API和中间件组件,方便开发者快速构建应用。
    • 调试工具:集成Tracealyzer可视化追踪工具,支持任务运行分析,有助于开发者快速定位和解决问题。

    三、任务管理与通信

    1. embOS

    • 任务创建:使用embOS提供的API函数创建任务,任务优先级和堆栈大小等参数可灵活配置。
    • 任务间通信:提供信号量、邮箱、消息队列等任务间通信机制,实现任务间的同步和数据交换。
  • FreeRTOS

    • 任务管理:支持动态和静态创建任务,任务栈独立隔离。提供丰富的任务管理API,方便开发者管理多个任务。
    • 通信机制:提供队列、信号量、事件组等同步机制,有效解决多任务环境中的同步和通信问题。同时,支持直接任务通知,提高通信效率。

    四、应用场景与生态

    1. embOS

    • 应用场景:适用于对实时性、可靠性和性能要求较高的嵌入式应用,如工业控制、汽车电子、医疗设备等。
    • 生态扩展:虽然embOS的生态相对较小,但其高性能和可靠性使其在某些特定领域具有优势。
  • FreeRTOS

    • 应用场景:广泛应用于物联网终端设备、工业控制、消费电子、汽车电子等领域。其轻量级和可裁剪性使其成为资源受限设备的首选RTOS。
    • 生态扩展:拥有丰富的生态扩展组件,如TCP/IP栈、文件系统等,方便开发者快速构建完整的应用系统。同时,与AWS等云服务集成,提供更强大的功能支持。

    五、许可

    1. embOS

    • 如果你在公司项目、产品开发等商业场景中使用 embOS,则需要购买商业许可证。embOS 本身不开放源代码,只提供编译好的库文件(.lib 或 .a)和头文件。对于个人学习、教学、研究或评估目的,embOS 完全免费,且没有功能限制

    1. FreeRTOS

    • FreeRTOS 遵循比较宽松的 MIT 开源许可证(MIT License),允许自由使用、复制、修改、合并、出版发行、散布、再授权及贩售软件及软件的副本。

    下面我们基于embOS创建两个简单的任务:

    现在RTOS的API都已经封装非常好了,主打一个“拿来就用”,学起来还是很简单的。

    ------------ END ------------

    对比cm3.h与cm85.h,其中SysTick用法区别

    RTOS系统裁剪,是什么意思?

    158元配齐A55+双千兆的开发板,直降506元,性价比拉满!

Logo

openvela 操作系统专为 AIoT 领域量身定制,以轻量化、标准兼容、安全性和高度可扩展性为核心特点。openvela 以其卓越的技术优势,已成为众多物联网设备和 AI 硬件的技术首选,涵盖了智能手表、运动手环、智能音箱、耳机、智能家居设备以及机器人等多个领域。

更多推荐