硬实时和软实时操作系统

2025年4月22日 | 阅读6分钟

实时操作系统 (RTOS) 旨在为实时应用程序提供服务,这些应用程序在没有缓冲延迟的情况下处理数据。实时系统是时间受限的系统,具有明确定义且固定的时间限制,并且必须在定义的限制内完成处理;否则,系统将失败。在实时操作系统中,处理时间要求以十分之一秒为单位进行衡量。

Hard and Soft Real-Time Operating System

实时系统用于那些需要更高和及时响应的场合。实时操作系统涉及一组应用程序,其中操作会按时执行,以运行外部系统的活动。它使用时间的定量表达来分析系统的性能。

在实时系统的上下文中,截止日期是指需要完成作业执行的时间点。大多数实时操作系统使用抢占式调度算法。

实时操作系统示例

以下是一些实时操作系统的示例,例如:

  • 微波炉的操作系统。
  • 洗衣机的操作系统。
  • 飞机的操作系统。
  • 数码相机的操作系统等等。

在实时操作系统中,流程的快速响应是必须的。任何流程的完成都不允许有任何延迟,因为轻微的延迟可能会导致一些危险的问题。

实时操作系统的优点

实时操作系统具有以下优点,例如:

Hard and Soft Real-Time Operating System
  • 任务切换:实时操作系统设计得非常快速地进行任务切换。普通传统操作系统在从一个进程切换到另一个进程时需要花费很多时间。实时操作系统仅在几微秒内完成任务切换。
  • 专注执行:实时操作系统主要关注正在执行的任务,而对等待中的任务只给予很少的关注。
  • 无错误:实时操作系统经过精心设计,并应用了各种软件测试技术来测试系统。这种详细的测试使得实时操作系统几乎没有错误。
  • 最大化资源利用:实时操作系统设计用于在给定时间内秘密地执行任务。在规定时间内完成任务并非易事。实时操作系统高效且完整地利用所有硬件。实时操作系统的主要关注点不在于节省能源或资源。因此,我们可以看到实时操作系统完全且非常高效地利用了资源。
  • 在嵌入式系统中使用:实时操作系统也可以与嵌入式系统配合使用。
  • 全天候性能:实时操作系统设计用于每天 24 小时运行。

实时系统类型

实时操作系统分为两种系统,即:

  1. 硬实时系统
  2. 软实时系统

硬实时系统和软实时系统是实时系统的变体,其中硬实时系统比软实时系统更严格。硬实时系统必须保证在规定的截止日期内完成实时任务。而在软实时系统中,情况并非如此,它为实时任务分配更高的调度优先级。

硬实时系统

硬实时系统将时间视为截止日期,并且在任何情况下都不得逾越。硬实时系统不使用任何永久内存,因此其进程必须在第一次就正确完成。

Hard and Soft Real-Time Operating System

硬实时系统必须在指定的时间内对事件产生准确的响应。硬实时系统是一个纯粹的确定性且时间受限的系统。

例如,用户期望在 5 秒内得到给定输入的输出,那么系统应在第 5 秒精确地处理输入数据并给出输出。它不应在第 6 秒或第 4 秒给出输出。这里 5 秒是完成给定数据处理的截止日期。在硬实时系统中,满足截止日期非常重要,如果未满足截止日期,系统性能将失败。

硬实时系统示例

以下是一些硬实时操作系统的示例,例如:

  • 飞行控制系统
  • 导弹制导系统
  • 武器防御系统
  • 医疗系统
  • 喷墨打印机系统
  • 铁路信号系统
  • 空中交通管制系统
  • 核反应堆控制系统
  • 反导弹系统
  • 化工厂控制
  • 飞机上的自动驾驶仪系统
  • 心脏起搏器

软实时系统

软实时系统是指如果结果未按照指定的时间要求生成,其操作会退化的系统。在软实时系统中,并非所有任务都必须满足截止日期,但进程应该被处理并给出结果。即使是软实时系统也不能错过每个任务或进程的截止日期,根据优先级,它应该满足截止日期或错过截止日期。

Hard and Soft Real-Time Operating System

如果系统每次都错过截止日期,则系统性能会变差,用户无法使用。软实时系统的最佳示例是个人计算机、音频和视频系统等。

软实时系统将进程视为主要任务并控制整个任务。

软实时系统示例

以下是一些常见的软实时操作系统示例,例如:

  • 个人电脑
  • 音频和视频系统
  • 机顶盒
  • DVD 播放器
  • 天气监测系统
  • 电子游戏
  • 多媒体系统
  • 网页浏览
  • 在线交易系统
  • 电话交换机
  • 虚拟现实
  • 移动通信

硬实时系统和软实时系统之间的区别

操作系统是系统软件,它根据软件提供的指令管理计算机硬件。操作系统提供各种任务。文件管理、内存管理、控制外围设备和进程调度是其中的一部分。一种操作系统是实时操作系统,它进一步分为硬实时系统和软实时系统。

Hard and Soft Real-Time Operating System

硬实时系统和软实时系统之间的关键区别在于,硬实时系统是这样一种系统,其中一次未能满足截止日期就可能导致整个系统失败。相比之下,软实时系统是一种系统,其中一次或多次未能满足截止日期不被视为整个系统失败,但其性能被视为退化。

条款硬实时系统软实时系统
定义硬实时系统是一种系统,其中即使一次未能满足截止日期也可能导致完全或灾难性的系统故障。软实时系统是一种系统,其中一次或多次未能满足截止日期不被视为整个系统失败,但其性能被视为退化。
文件大小在硬实时系统中,数据文件的大小通常为小到中等。在软实时系统中,数据文件的大小通常较大。
响应时间在此系统中,响应时间是预定义的,即以毫秒为单位。在此系统中,响应时间较长。
用途硬实时系统具有更高的实用性。软实时系统具有较低的实用性。
数据库硬实时系统具有较短的数据库。软实时系统具有扩大的数据库。
性能峰值负载性能应可预测。在软实时系统中,可以容忍峰值负载。
安全性在此系统中,安全性至关重要。在此系统中,安全性不那么重要。
诚信硬实时系统具有短期数据完整性。软实时系统具有长期数据完整性。
限制性硬实时系统非常严格。软实时系统限制性较低。
计算在硬实时系统中发生错误时,计算会被回滚。在软实时系统中,计算会被回滚到先前建立的检查点以启动恢复操作。
灵活性和宽松度硬实时系统不够灵活,宽松度较低,并且通常完全遵守截止日期。软实时系统更灵活。它们具有更大的宽松度,可以容忍一定程度的截止日期错过。
验证硬实时系统的所有用户在需要时都能获得验证。软实时系统的所有用户不一定获得验证。
示例卫星发射、铁路信号系统和安全关键系统是硬实时系统的良好示例。DVD 播放器、电话交换机、电子游戏、Linux 和许多其他操作系统提供软实时系统。