我对嵌入式世界还是比较陌生的。我对基于ARM M0 +的freescale微处理器的固件编码有一点经验。我目前正在使用CML-5282开发板(M5282LITE)开发一个新项目,它附带RTXC Quadros RTOS。我想知道RTOS和codewarrior IDE中的编码有什么区别。它们是否共存,RTOS只是简化了时间安排?或者你可以一起用RTOS替换IDE吗?我不知道RTOS是什么,请给我任何见解,我很感激。
答案 0 :(得分:2)
主要区别在于执行多任务处理的能力:并行执行更多任务。这是由 scheduler 完成的,它是操作系统的核心。由于它是一个实时操作系统(RTOS)任务,可以根据一些实时调度算法进行调度。最受欢迎的是固定优先级(即,任务具有静态优先级,并且调度程序始终以最高优先级运行任务)。
RTOS的优点:
RTOS的缺点:
答案 1 :(得分:1)
不同的RTOS在大小和功能上各不相同,但从根本上说,RTOS提供了任务或线程,同步机制,定时器和进程间通信的调度(通常是基于优先级的预先调度)。
典型的RTOS作为静态链接库提供,您可以像应用任何其他库一样链接到应用程序。 IDE完全不同,尽管在某些情况下,您可以通过运行时调试工具和(不太常见的)线程级调试将RTOS与IDE集成在一起。
你可以查看Jack Ganssle的Fundamentals of Real-time Operating Systems课程。它在示例中使用了uC / OS-II,但是相当通用,并且原则适用。
答案 2 :(得分:0)
RTOS是一个代码库,您将与应用程序代码链接。 RTOS提供了帮助您创建多任务应用程序的例程。这包括调度程序和任务间通信功能,如信号量,队列和邮箱。
RTOS不会取代您的IDE。您仍然需要用于编辑,编译,链接和调试应用程序的工具,这就是IDE提供的工具。有时IDE是“RTOS感知”,这意味着调试器在调试多任务应用程序时提供了额外的帮助。例如,它可以以易于阅读的方式显示RTOS数据类型,例如任务和信号量。或者它可能支持特定于任务的断点。