Operating system RTOS和普通OS的编程约束

Operating system RTOS和普通OS的编程约束,operating-system,real-time,job-scheduling,rtos,Operating System,Real Time,Job Scheduling,Rtos,这个问题困扰了我很长时间,我试图在网上搜索,但没有得到任何答案。我理解普通操作系统和实时操作系统之间的区别。我想了解RTOS对应用程序程序员施加的附加约束(如果有的话)是什么 例如,我有一些需求,需要实现一个在普通操作系统和实时操作系统上运行的解决方案。在实施RTO解决方案时,我应该注意哪些方面?我是否应该分析我的代码以检查确切的内存和处理要求,我应该向RTOS调度器提供这些要求,RTOS调度器将执行一些可行性分析,并确定它是否可以将我的应用程序包括在现有的计划中 一些人能给我一些在诸如OSE、

这个问题困扰了我很长时间,我试图在网上搜索,但没有得到任何答案。我理解普通操作系统和实时操作系统之间的区别。我想了解RTOS对应用程序程序员施加的附加约束(如果有的话)是什么

例如,我有一些需求,需要实现一个在普通操作系统和实时操作系统上运行的解决方案。在实施RTO解决方案时,我应该注意哪些方面?我是否应该分析我的代码以检查确切的内存和处理要求,我应该向RTOS调度器提供这些要求,RTOS调度器将执行一些可行性分析,并确定它是否可以将我的应用程序包括在现有的计划中


一些人能给我一些在诸如OSE、Windriver等RTO中如何实现这一点的实际例子吗?

大多数RTO都是线程调度器,而不是进程调度器,因此只有一个“应用程序”是由单个进程中的多个线程组成的。在这种情况下,“应用程序”的可调度性问题是没有意义的,因为只有一个应用程序

如果您有一个非实时任务(如果您也能够在通用操作系统(GPOS)上运行它,则可能隐含这种情况),然后在RTO上,您可以在启用循环时间切片的其他非实时任务共享的级别上以低优先级运行它-然后这些线程将以与GPO类似的方式进行调度。请注意,如果其中一个或多个线程从未让步,则它们必须以可能的最低优先级运行,并且在任何情况下都是如此这种行为通常是不受欢迎的——基本上,这样的线程会成为空闲任务。

阅读相关内容,看看这是否有助于解决您的问题。