硬实时和软实时操作系统
实时操作系统 (RTOS) 旨在为没有缓冲延迟的实时应用程序提供服务。实时系统是一个具有明确定义和固定时间约束的时间限制系统,处理必须在定义的约束内完成,否则系统将失败。在实时操作系统中,处理时间要求以 十分之几秒 的形式进行衡量。
实时系统用于那些需要更高和及时响应的地方。实时操作系统涉及一组应用程序,在这些应用程序中,操作按时执行以在外部系统中运行活动。它使用时间的数量化表达来分析系统的性能。
在实时系统的上下文中, 截止时间 是作业需要完成的时间点。大多数实时操作系统使用 抢占式调度算法 。
实时操作系统的例子
以下是一些实时操作系统的例子,例如:
- 微波炉的操作系统。
- 洗衣机的操作系统。
- 飞机的操作系统。
- 数码相机的操作系统等等。
在实时操作系统中,进程的快速响应是必需的。不能有任何延迟完成任何进程,因为稍微的延迟可能引发多种危险问题。
实时操作系统的优势
实时操作系统具有以下优势,例如:
- 任务切换: 实时操作系统被设计为启动切换过程非常快速。普通传统操作系统在从一个进程切换到另一个进程时需要很多时间。实时操作系统只需在微秒级别内完成任务切换。
- 焦点执行: 实时操作系统的主要重点是处理正在执行的任务,对等待中的任务只稍加关注。
- 无错误: 实时操作系统经过精心设计,应用了不同的软件测试技术来测试系统。这种详细的测试使得实时操作系统几乎没有错误。
- 最大资源利用: 实时操作系统被设计为在给定的时间内遵循任务。这并不简单,很难在规定时间内完成任务。实时操作系统高效而完全地利用了所有硬件资源。实时操作系统的主要重点不是节约能源或资源。因此,我们可以看到实时操作系统完全而高效地利用资源。
- 在嵌入式系统中的应用: 实时操作系统也可以与嵌入式系统配合使用。
- 全天候性能: 实时操作系统被设计为全天候、每天工作24小时。
实时系统的类型
实时操作系统分为两种类型,即:
- 硬实时系统
- 软实时系统
硬实时系统和软实时系统是实时系统的变种,其中硬实时系统比软实时系统更为严格。硬实时系统必须确保在指定的截止日期内完成实时任务。而软实时系统则为实时任务分配较高的调度优先级。
硬实时系统
硬实时系统将时间表视为截止日期,并且在任何情况下都不能被忽略。硬实时系统不使用任何永久性存储器,因此它们的进程必须在第一次完全完成。
硬实时系统必须在指定的时间内生成准确的响应。硬实时系统是一个纯确定性和时间约束的系统。
例如,用户期望在给定的输入中的输出在5秒内完成,那么系统应该处理输入数据,并在第5 th 秒时准确地给出输出。它不应该在第6 th 秒或第4 th 秒时给出输出。这里5秒是完成给定数据处理的截止时间。在硬实时系统中,满足截止时间非常重要,如果不能满足截止时间,系统性能将失败。
硬实时系统的例子
下面是一些硬实时操作系统的例子,例如:
- 飞行控制系统
- 导弹引导系统
- 武器防御系统
- 医疗系统
- 喷墨打印机系统
- 铁路信号系统
- 空中交通管制系统
- 核反应堆控制系统
- 反导弹系统
- 化工厂控制系统
- 飞机自动驾驶系统
- 心脏起搏器
软实时系统
软实时系统是一个系统,如果结果不能按照指定的时间要求产生,它的操作将降级。在软实时系统中,不是每个任务都必须满足截止时间,但是进程应该被处理并给出结果。即使软实时系统不能在每个任务或进程上错过截止时间,根据优先级,它应该满足截止时间或错过截止时间。
硬实时系统和软实时系统之间的主要区别在于,硬实时系统是一种遇到单个截止时间未能满足的故障可能会导致系统完全故障的系统。相反,软实时系统是一种在遇到一个或多个截止时间未能满足的故障时不认为是完全系统故障,但其性能被认为是降级的系统。
术语 | 硬实时系统 | 软实时系统 |
---|---|---|
定义 | 硬实时系统是指一旦无法满足单个截止时间,可能导致完全或极其严重的系统故障。 | 软实时系统是指即使无法满足截止时间也不被认为是完全的系统故障,但性能会受到降低影响。 |
文件大小 | 在硬实时系统中,数据文件的大小较小或中等。 | 在软实时系统中,数据文件的大小较大。 |
响应时间 | 在这种系统中,响应时间是预定义的,通常在毫秒级别。 | 在这种系统中,响应时间较长。 |
实用性 | 强实时系统有更多的实用性。 | 软实时系统的实用性较少。 |
数据库 | 强实时系统有较短的数据库。 | 软实时系统有较大的数据库。 |
性能 | 高峰负载性能应该可预测。 | 在软实时系统中,可以容忍高峰负载。 |
安全性 | 在这个系统中,安全性至关重要。 | 在这个系统中,安全性不是至关重要的。 |
完整性 | 强实时系统具有短期数据完整性。 | 软实时系统具有长期数据完整性。 |
计算 | 在硬实时系统中,如果发生错误,计算会回滚。 | 在软实时系统中,计算会回滚到先前建立的检查点以启动恢复操作。 |
灵活性和宽容性 | 硬实时系统不够灵活,宽容性较低,通常提供完全的截止期限遵守。 | 软实时系统更加灵活。它们具有更大的宽容性,并且可以容忍一定程度的截止期限错过。 |
验证 | 所有使用硬实时系统的用户在需要时获得验证。 | 具有软实时系统的所有用户都无法获得验证。 |
示例 | 卫星发射、铁路信号系统和安全关键系统是硬实时系统的典型例子。 | DVD播放器、电话交换机、电子游戏、Linux和许多其他操作系统提供了软实时系统。 |