首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >RTOS与传统固件编码

RTOS与传统固件编码
EN

Stack Overflow用户
提问于 2013-11-04 07:45:10
回答 3查看 3.5K关注 0票数 2

我对嵌入式世界还是个新手。我对基于ARM M0+的飞思卡尔微处理器的固件编码有一点经验。我目前正在做一个使用CML-5282开发板(M5282LITE)的新项目,它带有RTXC Quadros RTOS。我想知道实时操作系统和只在codewarrior IDE中编码有什么不同。它们是共存的吗? RTOS只是简化了调度?或者,您是否可以将IDE全部替换为RTOS?我不知道RTOS是什么,请给我任何我会感激的见解。

EN

回答 3

Stack Overflow用户

发布于 2013-11-04 21:54:41

主要区别在于执行多任务的能力:并行运行更多任务。这是由调度程序完成的,它是操作系统的核心。由于它是一个实时操作系统(RTOS),可以根据一定的实时调度算法对任务进行调度。最常用的是固定优先级(即任务具有静态优先级,并且调度程序始终以最高优先级运行任务)。

实时操作系统的优点:

  • 您可以将应用程序拆分为多个正在运行的任务concurrently
  • Some驱动程序已经可用,并且可以通过标准API

进行访问

RTOS的缺点:

  • 由于上下文切换而产生的一些开销
  • 更复杂的调试(由于任务之间共享的资源上的竞争条件)
票数 2
EN

Stack Overflow用户

发布于 2013-11-08 07:05:28

不同的RTOS在大小和功能上各不相同,但从根本上讲,RTOS提供任务或线程的调度(通常是基于优先级的抢占式调度)、同步机制、定时器和进程间通信。

典型的RTOS是以静态链接库的形式提供的,您可以将其与应用程序链接,就像其他库一样。IDE完全是另一回事,尽管在某些情况下,您可以通过运行时调试工具和(不常见的)线程级调试将RTOS与IDE集成在一起。

你可以看看Jack Ganssle的Fundamentals of Real-time Operating Systems课程。它在示例中使用了uC/OS-II,但它是相当通用的,并且原理适用。

票数 1
EN

Stack Overflow用户

发布于 2013-11-04 20:51:08

RTOS是一个代码库,您可以将其与应用程序代码链接。RTOS提供了帮助您创建多任务应用程序的例程。这包括调度程序和任务间通信功能,如信号量、队列和邮箱。

RTOS不会取代您的IDE。您仍然需要用于编辑、编译、链接和调试应用程序的工具,而这正是IDE所提供的。有时IDE是“支持RTOS的”,这意味着调试器在调试多任务应用程序时提供了额外的帮助。例如,它可以以一种易于阅读的方式显示RTOS数据类型,如任务和信号量。或者它可能支持特定于任务的断点。

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

https://stackoverflow.com/questions/19759628

复制
相关文章

相似问题

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