度娘告诉我:“ 实时操作系统(Real-time operating system, RTOS),又称即时操作系统,它会按照排序运行、管理系统资源,并为开发应用程序提供一致的基础。实时操作系统与一般的操作系统相比,最大的特色就是“实时性”,如果有一个任务需要执行,实时操作系统会马上(在较短时间内)执行该任务,不会有较长的延时。这种特性保证了各个任务的及时执行。
但是正常的代码根据我想做的东西再加上我的理解不就是运行然后需要哪个传感器反馈的数据就引用过来使用,不需要就待机吗?
为啥还需要一个实时操作系统呢?
之前浏览了下b站up主diy的xtrack码表的程序,里面有非常多单独的小块的源码,但也没看到RTOS的身影
真的不理解,非常感谢如果你能回答我的这个问题!
保证了在规定时间内能够完成某个任务,如果不能在指定时间完成会造成重大事故,所以必须某些场景必须使用rtos。
ChatGPT尝试为您解答,仅供参考
实时操作系统(RTOS)是专门为实时应用设计的操作系统。这些应用要求对事件作出及时且可预测的响应,通常在有限的时间范围内。实时应用的例子包括过程控制、交通控制和航空电子设备。
有几个原因需要RTOS为这些类型的应用:
时间限制:实时应用经常有严格的时间限制,必须在指定的时间内完成才能正常工作。例如,过程控制系统可能需要在几毫秒内对过程进行更改,以维护安全并防止损坏。标准操作系统可能无法满足这些时间限制,因为它的设计是根据任务的优先级而不是完成任务的时间来优先执行任务。
可预测性:为了正常工作,实时应用需要能够预测完成任务所需的时间。这在标准操作系统中很难做到,因为完成任务所需的时间可能会受到许多因素的影响,例如系统的工作负载、系统资源的可用性和其他任务的优先级。RTOS旨在提供可预测和一致的性能,这对于实时应用至关重要。
多任务:许多实时应用需要支持多任务执行,即同时执行多个任务。RTOS旨在支持多任务,允许多个任务同时执行并根据需要在任务之间共享资源。
中断处理:实时应用经常需要响应外部事件,例如来自传感器的输入或任务完成。RTOS旨在以可预测和高效的方式处理中断,即需要立即关注的外部事件。
总的来说,RTOS对于实时应用是必需的,因为它们提供了这些应用所需的时间关键、可预测和多任务能力。
建议你看一下野火的书籍,RTThread和FreeRTOS,之后再思考这个问题