什么是实时操作系统(RTOS)?
实时操作系统(RTOS)是旨在为实时应用程序提供服务的操作系统,该应用程序处理传入的数据,大多数情况下没有缓冲延迟。实时操作系统的完整形式是实时操作系统。
在RTOS中,处理时间要求以十分之一秒的时间增量计算。有时限系统可以定义为固定时间限制。在这种类型的系统中,必须在指定的约束内进行处理。否则,系统将失败。
为什么要使用RTOS?
以下是使用RTOS的重要原因:
- 它提供了基于优先级的计划,使您可以将分析处理与非关键处理分开。
- 实时操作系统提供了API功能,可以使应用程序代码更简洁,更小。
- 抽象时序依赖关系和基于任务的设计可减少模块之间的相互依赖关系。
- RTOS提供了基于任务的模块化开发,从而允许进行基于任务的模块化测试。
- 基于任务的API鼓励将模块化开发作为一项任务,通常具有明确定义的角色。它允许设计师/团队在项目的各个部分独立工作。
- RTOS是事件驱动的,不会浪费时间以处理未发生的事件
RTOS的组成
实时操作系统的组成部分
这是RTOS的重要组件
调度程序:RTOS的此组件告知执行任务的顺序通常基于优先级。
对称多处理(SMP):RTOS可以处理多个不同的任务,以便可以并行处理。
功能库:它是RTOS的重要元素,它充当帮助您连接内核和应用程序代码的接口。该应用程序允许您使用功能库将请求发送到内核,以便应用程序可以提供所需的结果。
内存管理:系统中需要此元素才能为每个程序分配内存,这是RTOS的最重要元素。
快速调度延迟:这是OS可以识别的任务终止与线程之间的实际时间之间的时间间隔,该时间在就绪队列中,已经开始处理。
用户定义的数据对象和类:RTOS系统使用诸如C或C ++之类的编程语言,应根据其操作进行组织。
实时操作系统的类型
三种类型的RTOS系统是:
硬实时:
在Hard RTOS中,非常严格地处理了最后期限,这意味着给定的任务必须在指定的计划时间开始执行,并且必须在指定的持续时间内完成。
示例:医疗重症监护系统,飞机系统等
固定实时:
这些类型的RTOS也需要遵守截止日期。但是,错过最后期限可能不会产生重大影响,但可能会导致不良影响,例如产品质量的大幅下降。
示例:各种类型的多媒体应用程序。
软实时:
软实时RTOS,由操作系统接受一些延迟。在这种类型的RTOS中,有为特定工作指定的截止日期,但是可以接受少量时间的延迟。因此,此类RTOS可以轻松地处理截止日期。
示例:在线交易系统和牲畜价格报价系统。
RTOS中使用的术语
这里是RTOS中使用的基本术语:
- 任务–一组能够共同提供某些系统功能的相关任务。
- 作业–作业是一小部分工作,可以分配给处理器,并且可能需要也可能不需要资源。
- 作业的发布时间–这是作业准备执行的时间。
- 作业的执行时间:作业完成所花费的时间。
- 作业的截止日期:是该作业应完成执行的时间。
- 处理器:它们 也称为活动资源。它们对于执行工作很重要。
- 最长它是工作的允许响应时间 ,称为其相对期限。
- 作业的响应时间:这是指即时完成后,从作业释放时间开始的时间长度。
- 绝对期限:这是相对期限,其中还包括发布时间。
RTOS的功能
这是RTOS的重要功能:
- 占用很少的内存
- 消耗更少的资源
- 响应时间是高度可预测的
- 不可预测的环境
- 内核保存被中断任务广告的状态,然后确定下一步应运行的任务。
- 内核将还原任务的状态,并为该任务传递CPU的控制权。
选择RTOS的因素
这里是选择RTOS时需要考虑的重要因素:
- 性能:性能是选择RTOS时需要考虑的最重要因素。
- 中间件:如果实时操作系统中不存在中间件支持,则会发生耗时的进程集成问题。
- 无错误:RTOS系统无错误。因此,执行任务时不会出现错误。
- 嵌入式系统的使用:RTOS的程序很小。因此,我们将RTOS广泛用于嵌入式系统。
- 最大消耗量:我们可以借助RTOS实现最大消耗量。
- 任务转移:任务转移时间非常少。
- 独特的功能:好的RTS应该具备能力,并且具有一些额外的功能,例如它如何执行命令,有效地保护系统内存等。
- 24/7性能:RTOS非常适合那些需要运行24/7的应用程序。
GPOS和RTOS之间的区别
这是GPOS和RTOS之间的重要区别:
通用操作系统(GPOS) | 实时操作系统(RTOS) |
---|---|
它用于台式机和笔记本电脑。 | 它仅适用于嵌入式应用程序。 |
基于流程的计划。 | 基于时间的调度类似于循环调度。 |
中断延迟不像在RTOS中那样重要。 | 中断延迟最小,以几微秒为单位。 |
系统中没有优先级反转机制。 | 优先级反转机制是当前的。因此它不能被系统修改。 |
内核操作可能会被抢占,也可能不会被抢占。 | 可以抢占内核的操作。 |
优先级倒置仍未引起注意 | 没有可预测性保证 |
实时操作系统的应用
实时系统用于:
- 航空公司预订系统。
- 空中交通管制系统。
- 提供立即更新的系统。
- 用于提供股票价格最新和最新信息的任何系统。
- 国防应用系统,如雷达。
- 网络多媒体系统
- 指令控制系统
- 网络电话
- 防抱死制动系统
- 心脏起搏器
RTOS的缺点
这里是使用RTOS系统的缺点/缺点:
- RTOS系统可以一起运行最少的任务,并且只专注于那些包含错误的应用程序,因此可以避免它们。
- RTOS是专注于一些任务的系统。因此,这些系统确实很难执行多任务处理。
- RTOS需要特定的驱动程序,以便它可以提供快速的响应时间来中断信号,这有助于保持其速度。
- RTOS使用大量资源,这使该系统昂贵。
- 具有较低优先级的任务需要等待很长时间,因为RTOS会保持正在执行的程序的准确性。
- 最小的任务切换是在实时操作系统中完成的。
- 它使用复杂的算法,很难理解。
- RTOS使用大量资源,有时不适合该系统。
概要:
- RTOS是旨在为实时应用程序提供服务的操作系统,该应用程序处理传入的数据,大多数情况下没有缓冲延迟。
- 它提供了基于优先级的计划,使您可以将分析处理与非关键处理分开。
- RTOS系统的重要组件是:1)调度程序,2)对称多处理,3)功能库,4)内存管理,5)快速调度延迟,以及6)用户定义的数据对象和类
- RTOS的三种类型是:1)硬时间2)软时间和3)固定时间
- RTOS系统占用更少的内存并消耗更少的资源
- 性能是选择RTOS时需要考虑的最重要因素。
- 通用操作系统(GPOS)用于台式机和笔记本电脑,而实时操作系统(RTOS)仅应用于嵌入式应用程序。
- 实时系统用于航空公司预订系统,空中交通管制系统等。
- RTOS的最大缺点是系统仅专注于一些任务。