最佳实时操作系统

2025年4月30日 | 阅读13分钟

本文将介绍最好的实时操作系统。但在讨论最好的 RTOS 之前,您应该了解实时操作系统。

什么是实时操作系统?

实时操作系统是为了支持实时应用程序而开发的,这些应用程序会即时处理数据。它在特定时间执行任务。计算的逻辑结果以及产生结果所需的时间决定了系统输出的正确性。它包含实时任务调度的机制。它主要用于嵌入式系统。它非常适合需要在一特定时间内完成的任务或操作的计时应用。

RTOS 需要准确及时的结果,这意味着结果必须在特定的时间范围内生成,否则系统将失败。它主要用于控制设备应用,包括汽车发动机燃油喷射系统、工业控制系统、武器系统和医学成像系统。

在 RTOS 中,程序会在主内存和辅助内存之间交换。进程通常保留在主内存中以提供快速响应,并且实时系统的内存管理要求比传统系统低。

实时操作系统特性

实时操作系统有多种特性。以下是实时操作系统的一些特性:

1. 性能

在选择 RTOS 时,最关键的考虑因素是性能。它比其他操作系统提供更好的性能。

2. 任务切换

在这些系统中,分配给任务切换的时间非常有限。例如,早期系统大约需要 10 微秒。今天的系统从一个任务切换到另一个任务大约需要 3 微秒。

3. 无错误

实时操作系统是无错误操作系统。因此,在完成任务时没有出错的风险。

4. 独特功能

一个好的 RTOS 应该具备能力并具有某些附加功能,例如命令执行方式、高效的内存保护等。

5. 中间件

如果实时操作系统缺乏中间件功能,系统将出现耗时的进程集成问题。

6. 最大化利用

RTOS 提供支持以实现最大化利用。

7. 嵌入式系统使用

RTOS 程序体积小。因此,RTOS 经常用于嵌入式设备。

8. 任务切换

RTOS 的任务切换非常少。

顶级实时操作系统

下面我们将讨论顶级实时操作系统。以下是一些实时操作系统:

  1. VxWorks
  2. embOS
  3. FreeRTOS 操作系统
  4. LynxOS
  5. PikeOS
  6. Keil RTX RTOS
  7. Nucleus RTOS
  8. Azure RTOS
  9. QNX Neutrino RTOS
  10. MQX RTOS

VxWorks

Best Real-Time Operating System

VxWorks 是由 Aptiv 全资子公司 Wind River Systems 开发的专有 RTOS。它于 1987 年首次发布。它主要为需要实时和确定性性能的嵌入式系统而设计。许多行业需要安全认证,包括航空航天和工业设备、能源、交通、网络基础设施、医疗设备、机器人、国防、汽车和消费电子产品。

VxWorks 支持 AMD 和 Intel 架构、POWER 架构、ARM 架构和 RISC-V 架构。它同时支持 32 位64 位处理器。它可用于多核 对称多处理 (SMP)、非对称多处理 (AMP)、混合模式和操作系统架构。

VxWorks OS 包括内核、第三方软件、中间件、Wind River Workbench 开发套件、板级支持包和硬件技术。VxWorks 7 中的 RTOS 已重新设计以提高灵活性和可升级性,因此操作系统内核与应用程序、中间件和其他软件包是分开的。

VxWorks 操作系统的特性

VxWorks 操作系统有多种特性。VxWorks 操作系统的部分特性如下:

  1. 它提供内存保护。
  2. 它提供实时处理器。
  3. 它是一个错误处理框架。
  4. 它是一个 64 位操作系统。
  5. 它提供互联网协议版本 6 (IPv6) 网络堆栈。
  6. 它包括各种文件系统,如高可靠性文件系统 (HRFS)、网络文件系统 (NFS) 和磁盘操作系统文件系统 (DOSFS)。
  7. 它支持对称多处理和非对称多处理。

embOS 操作系统

Best Real-Time Operating System

它是一个优先级控制的实时操作系统。它自 1992 年以来一直在持续开发,旨在作为构建嵌入式应用程序的基础。embOS 已安装在数十亿台设备中,涵盖了多个应用领域,并兼容所有主流核心、编译器和开发工具。

1992 年以来,它一直是嵌入式工程师的首选 RTOS 解决方案。它简单易用,可确保任何嵌入式设备的可预测实时运行。它具有高度可移植性,并在所有平台上保持源兼容性,方便将应用程序移植到不同的核心。通过使用信号量、邮箱和事件等通信方法,可以快速创建任务并安全地进行通信。中断服务例程 (ISR) 也可以受益于这些通信机制。

embOS 操作系统的特性

embOS 操作系统有多种特性。embOS 操作系统的部分特性如下:

  1. 它提供强大且易于使用的 API。
  2. 它具有零中断延迟。
  3. 它已在各个应用领域的数十亿台设备中使用。
  4. embOS 是一个免版税的操作系统,可用于无限数量的项目,并提供 1 年的技术支持和免费更新。
  5. 它适用于所有流行的编译器、核心和开发工具。
  6. 它以最低的内存使用率提供高性能。

FreeRTOS 操作系统

Best Real-Time Operating System

FreeRTOS 是一个用于嵌入式 RTOS 的内核,已移植到 35 个不同的微控制器系统。它在 MIT 许可证下发布。2003 年,Richard Barry 创建了 FreeRTOS 内核,后来由 Barry 的公司 Real-Time Engineers Ltd. 开发和维护。2017 年,该公司将 FreeRTOS 项目的控制权移交给了亚马逊网络服务 (AWS)。Barry 作为 AWS 团队的一员继续从事 FreeRTOS 的工作。

微控制器用于深度嵌入式程序,这些程序有非常精确且集中的任务需要完成。终端应用的内存限制和专用性很少需要且允许使用完整的 RTOS 实现。因此,FreeRTOS 只包含任务间通信、计时、实时调度和同步原语。

FreeRTOS 操作系统的特性

FreeRTOS 操作系统有多种特性。FreeRTOS 操作系统的部分特性如下:

  1. 它为各种架构和开发工具提供了一个独立且统一的解决方案。
  2. 它提供了一个良好、管理完善且活跃的免费支持论坛。
  3. 对于 eCOS、嵌入式 Linux 甚至 uCLinux 不适用、不被接受或不可用的应用程序,FreeRTOS 提供了一个更小、更易于使用的实时处理选项。
  4. 它对商业应用程序免费。
  5. 如果需要,它可确保获得商业支持。
  6. 它具有高度可扩展性、简单性和易用性。

LynxOS

Best Real-Time Operating System

LynxOS 是由 Lynx Software Technologies 开发的基于 UNIX 的实时操作系统。它通常被称为 Lynx 操作系统,是一个符合 POSIX 标准且与 Linux 兼容的操作系统。它主要用于实时嵌入式系统,如航空电子设备、航空航天、军事、工业过程控制和电信应用。因此,它适用于军用级安全协议,如 wolfSSL,这是一个流行的 TLS/SSL 库。

Mitchell Bunnell1986 年德克萨斯州达拉斯为定制的 Motorola 68010 系统开发了 LynxOS 的早期版本。它首先运行在 Atari 1040ST 上,并在 Integrated Solutions UNIX 机器上进行交叉开发。LynxOS 操作系统被移植到 Intel 80386 架构。它在 1989 年包含了与 System V.3 的 ABI 兼容性。

LynxOS 组件专为硬实时性能而构建,这意味着它们能在可预测的时间内响应。由于内核独特的线程模型,在大量输入/输出存在的情况下,可预测的响应时间提供了保证,并且它使得中断例程非常短且快速。

LynxOS 操作系统在 2003 年发布了一个名为 LynxOS-178 的特殊版本。它主要设计用于需要符合 DO-178B 等行业标准的航空电子设备。

LynxOS 操作系统的特性

LynxOS 操作系统有多种特性。LynxOS 操作系统的部分特性如下:

  1. 它提供实时调度。
  2. 它具有完全的 POSIX 符合性和 Linux 兼容性。
  3. 它主要用于军事目的,因为它与军用级安全协议兼容,如 wolfSSL,这是一个流行的 TLS/SSL 库。
  4. 它主要用于实时嵌入式系统,如航空电子设备、航空航天、军事和工业过程控制。
  5. 它提供基于 GCC 的工具链。
  6. 它提供访问控制和加密安全。

PikeOS

Best Real-Time Operating System

PikeOS 是一个 RTOS,为许多其他操作系统和应用程序提供基于分离内核的虚拟机管理程序。它允许您为具有严格安全和安保要求的环境创建设备。它符合汽车、航空电子和航天、铁路、医疗和工业自动化市场的严格安全标准。

由于其分离内核架构,PikeOS 是需要防止网络安全攻击的系统的首选。它还被用于多个关键通信基础设施,拥有数百万个物联网和边缘系统。

它结合了虚拟化和实时性。它允许您将许多复杂的嵌入式电路板整合到单个硬件组件中。它不会止步于像拥有多个异构 CPU 核心的 Big SoC (System-on-a-Chip) 这样的创新硬件概念。最后,在认证方面,它提供适当的认证包,以协助您处理认证机构。

它运行在多种架构上。它还提供支持带 内存管理单元 (MMU) 的处理器和仅包含 内存保护单元 (MPU) 的更简单的 SoC。

PikeOS 操作系统的特性

PikeOS 操作系统有多种特性。PikeOS 操作系统的部分特性如下:

  1. 它提供对快速和安全启动时间的がサポート。
  2. 它还通过在单个系统中进行分离内核支持混合关键性。
  3. 通过利用标准的开发和验证技术,它缩短了上市时间。
  4. 它提供对内核驱动程序和用户空间驱动程序的がサポート。
  5. 它提供了系列和处理器类型之间的硬件独立性。

Keil RTX RTOS

Best Real-Time Operating System

Keil RTX 是一个免版税且具有确定性的 RTOS,专为 ARM7TmTDMI、ARM9Tm 和 CortexTm-M CPU 核心设计。它运行速度快,内存占用量仅为 5KB (ROM),使用的 MCU 资源最少。它可用于开发同时执行多个操作或任务的应用程序。它使您能够创建同时运行多个功能的程序,并且还有助于创建结构更好、维护更轻松的应用程序。无需 RTOS 即可开发实时应用程序。通过实时操作系统可以更好地解决各种调度、维护和计时问题。例如,实时操作系统允许灵活调度 CPU 和内存等系统资源以及活动之间的通信。

RTX RTOS 的特性

RTX RTOS 有多种特性。RTX RTOS 的部分特性如下:

  1. 易于使用。它在 Vision IDE/Debugger 中得到了广泛支持,其中包含 RTX 感知工具,可让您快速调试实时应用程序。
  2. Keil RTX5 因其小巧的内存占用(ROM 中低至 5KB)和高性能而适合嵌入式系统。您可以从多种选项中选择适合您应用程序的最佳内核调度选项。
  3. 它具有完全确定的行为,这意味着事件和中断是按照一套规则来处理的。进程时序是可预测且一致的,因此应用程序可以依赖它们。
  4. 它支持多线程和线程安全操作。
  5. 它附带 Keil MDK,免费使用。它是完全可定制的,并在 Github 上根据 Apache 2.0 许可证进行开发。
  6. 它适用于功能安全应用。

Nucleus RTOS

Best Real-Time Operating System

Nucleus RTOS西门子公司(Siemens Business)旗下的 Mentor Graphics Embedded Software Division 提供。它专为医疗、消费、工业、航空航天和物联网等实时嵌入式系统而设计。它支持 32 位64 位嵌入式平台。它于 1993 年首次发布。Nucleus RTOS v3.x 是最新版本,包括 64 位支持、安全认证、电源管理、进程模型以及对异构多核 SoC 的支持等功能。

其进程模型包括用于 SoC 上任务和模块隔离的空间域分区。它还包括基于 ARMv7/8 Cortex-A/R/M 核心的内存管理单元 (MMU) 或内存保护单元 (MPU)。

它是一个高度可扩展的基于微内核的 RTOS,已在超过 30 亿台设备上使用,专为可扩展性和可靠性而构建。通过简单的内存分配支持,可以增强系统可靠性,该支持可以在支持 MMU 和 MPU 的保护系统(涵盖各种空间、工业和医疗应用)的条件下或不带这些系统的情况下运行。开发人员可以使用 SMP 和 AMP 设置,在各种微控制器和微处理器 SoC 上充分利用多核解决方案来集成不同的操作系统。

Nucleus RTOS 的特性

Nucleus RTOS 有多种特性。Nucleus RTOS 的部分特性如下:

  1. 它是一个稳定的确定性内核,内存占用量小。
  2. 它提供 FAT、LWEXT 和 SAFE 的文件系统软件。
  3. 它提供数据和网络安全。
  4. 它具有集成开发工具,集成 Eclipse IDE。
  5. 它具有内存分区进程模型,可在有或无 MMU 的情况下提高产品可靠性。
  6. 它支持 USB 2.0 和 3.0。

Azure RTOS

Best Real-Time Operating System

Azure 实时操作系统是一个嵌入式开发套件,包含一个小型但高效的 OS,为资源受限的设备提供一致、超快的性能。它易于使用且经过市场验证。Azure RTOS 支持最常见的 32 位微控制器。它已在全球超过 100 亿台设备上安装。

Azure RTOS 已通过 IEC 61508 SIL 4 认证、ISO 26262 ASIL D 认证和 IEC 62304 Class C 认证等多种安全标准的预认证。它提供了一个安全的 EAL4+ 通用标准认证环境,通过 IPsec 提供完整的 IP 层安全,通过 TLS 和 DTLS 提供套接字层安全。其软件加密库已获得 FIPS 140-2 认证。您还可以通过 ThreadX MODULES、硬件加密功能和 ARM 的 TrustZone ARMv8-M 安全功能使用内存保护。

Azure RTOS 的特性

Azure RTOS 有多种特性。Azure RTOS 的部分特性如下:

  1. 它提供高性能,并且占用空间非常小。
  2. 其代码已通过验证,符合行业高安全性和安保标准。
  3. 它连接到云端和本地网络。它还帮助开发耐用的闪存文件系统并设计优雅的用户界面。
  4. 它还连接到流行的 MPU 和 MCU。

QNX Neutrino RTOS

Best Real-Time Operating System

QNX Neutrino RTOS 是一个商业类 Unix 实时操作系统,主要为嵌入式系统市场设计。它是最早成功的商业微内核操作系统之一。它由 Quantum Software Systems(后来更名为 QNX Software Systems)在 1980 年代初开发。黑莓(BlackBerry)有限公司2010 年收购了 QNS Software Systems。

嵌入式系统设计师可以使用 QNX Neutrino 操作系统来创建引人入胜、安全可靠的设备,这些设备基于高度可靠的 OS 软件基础,可抵御系统故障、恶意软件和网络安全漏洞。它是一个功能齐全且强大的操作系统,可以缩小到满足实时嵌入式系统的资源限制。其微内核设计和模块化架构使客户能够以较低的拥有成本开发高度优化且可靠的系统。

QNX Neutrino RTOS 的特性

QNX Neutrino RTOS 有多种特性。QNX Neutrino RTOS 的部分特性如下:

  1. 微内核架构为 QNX Neutrino RTOS 提供了在医院、核电站甚至空间站运行任务关键型应用所需的可靠性。
  2. 它支持以太网和 Wi-Fi 802.11 上的 IPv4/IPv6,并提供常见的网络服务,如 DNS、DHCP、FTP、HTTP、Telnet、PPP、TFTP、防火墙、NFS 和 NTP。由于支持 POSIX API,可以轻松集成其他开源网络组件。
  3. 即时设备激活 (IDA) 使车载系统能够在操作系统运行之前就智能地工作。
  4. 它具有轻巧的占用空间,有助于缩短启动时间。微内核可以在不到 250 毫秒的时间内启动并运行。
  5. 资源管理器框架通过所有程序都可以使用的 POSIX 接口,实现了新技术的集成和服务的提供。

MQX RTOS

Best Real-Time Operating System

MQX 代表 Message Queue eXecutive。它是由 Precise Software Technologies, Inc. 设计的实时操作系统。它目前由 Synopsys、Embedded Access, Inc.NXP Semiconductors 出售。它以紧凑且灵活的软件包提供实时性能。它旨在让您能够设置和平衡代码大小和性能需求。它与 NXP 的最新处理器紧密集成,并包含常用的设备驱动程序。它集成了 CodeWarrior、IAR 和 Keil 工具,以实现任务感知调试。

它包括 TCP/IP 堆栈 (RTCS)、USB 主/设备堆栈、设计、基于嵌入式文件分配表的文件系统 (MFS)、调试和性能分析工具。它得到 TLS 和 SSL 等通用库的支持,例如用于高安全性的 wolfSSL。

它通常用于嵌入式设备。它在运行 UNIX 或 Windows 的主机上进行开发,并交叉编译目标软件以在多种目标 CPU 架构上运行。它已移植到多种平台,现在支持最新的嵌入式 CPU,包括 PowerPC、ARC、Kinetis、ColdFire、ARM、StrongARM 和 xScale。

MQX RTOS 的特性

MQX RTOS 有多种特性。MQX RTOS 的部分特性如下:

  1. 在 Arm Cortex M4 上,它被设计为最小占用 8 KB ROM 和 2.5 KB RAM,包括内核、1 个 LW Semaphore、中断栈、2 个任务应用程序、队列和内存管理。
  2. 基于优先级的抢占式调度确保了高优先级线程始终能够按时完成,而不管有多少其他线程竞争 CPU 资源。
  3. 该操作系统的代码编写非常简单,具有完整的 API 和可用的参考文档。
  4. 完整版和轻量版都包含关键组件,用于控制 RAM/ROM 消耗、大小和性能选项。
  5. 通过消除创建和维护有效调度系统和中断处理的负担,为开发人员提供了更快的开发时间。如果您需要使用 USB 或 TCP/IP 等各种通信协议,它也很有用。
  6. 它提供了一个框架,通过简单的 API 在 NXP 广泛的嵌入式处理器组合中创建和组织功能。
  7. 消息可以在运行在同一处理器上甚至不同处理器上的进程之间交换。
  8. 快速的启动顺序确保在硬件重置后程序能够快速运行。