首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用于小型ARM微控制器的实时操作系统内核间可量化的差异

用于小型ARM微控制器的实时操作系统内核间可量化的差异
EN

Stack Overflow用户
提问于 2014-02-11 06:29:24
回答 1查看 2K关注 0票数 3

有许多不同的实时操作系统可用于微控制器。我特别寻找支持ARM Cortex M处理器的RTOS。另外,我对封闭源解决方案不感兴趣。

试图从网站和邮件列表中比较每个RTOS的相对优点似乎相当困难,因为它们似乎大多具有相同的功能,并且做同样的事情。真正的区别显然只有在尝试将每个RTOS用于某些任务之后。

我知道这是一个主观的问题,而且可能很难回答--但肯定有很多人实际上尝试过几种不同的实时操作系统,并对每个问题的相对优点形成了看法。

我对FreeRTOS、ChibiOS和Coocox CoOS特别感兴趣,但其他选择也非常受欢迎。

例如:在ChibiOS中,ISRs似乎可以调用任何系统函数,但是这些调用必须包装在chSysLockFromIsr()/chSysUnlockFromIsr()中,并且在这些部分中代码是不可抢占的。在CoOS中,唯一可调用的函数是以isr_开头的函数,如isr_PostSem()isr_PostMail()isr_PostQueueMail()isr_SetFlag(),但是这些函数在内部使用服务请求队列,这意味着大多数请求是可抢占的。

EN

回答 1

Stack Overflow用户

发布于 2014-02-11 09:27:11

在选择RTOS时可以考虑到的一些特性:

  • 上下文切换时间
  • 中断延迟
  • 同步机制(标志、信号量、互斥、邮箱、队列、.)
  • 优先级反转处理
  • 内存管理支持(即内存池)
  • 调度策略支持
  • MMU支持
  • 过程支持
  • 内存足迹
  • 内核本身的效率
  • POSIX与非POSIX API的比较
  • 软件生态系统(即中间件)
  • ..。

哪一点需要更多的关注,取决于您将要运行的应用程序。但总的来说,这些都是我能记住的东西,它们在不同的实时操作系统之间起了很大的作用。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21694729

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档