快捷搜索:  test  as

不同的实时嵌入式Linux操作系统有什么差异

嵌入式实时操作系统(Embedded Real-time OperaTIon System,RTOS)。嵌入式系统是“用于节制、监视或者帮助操作机械和设备的装配”

实时Linux与其它RTOS的对照

本文对四种实时操作系统(RTOS)特点进行阐发和对照。它们是:Lynx实时系统公司的LynxOS、QNX软件系统有限公司的QNX以及两种具有代表性的实时Linux——新墨西哥工学院的RT-Linux和堪萨斯大年夜学的KURT-Linux。

近年来,实时操作系统在多媒体通信、在线事务处置惩罚、临盆历程节制、交通节制等各个领域获得广泛的利用,因而越来越引起人们的注重。

基础特性概述

* QNX是一个散播式、嵌入式、可规模扩展的实时操作系统。它遵照POSIX.1 (法度榜样接口)和POSIX.2 (Shell和对象)、部分遵照POSIX.1b(实时扩展)。它最早开拓于1980年,到现在已相称成熟。

*LynxOS是一个散播式、嵌入式、可规模扩展的实时操作系统,它遵照POSIX.1a、POSIX.1b和POSIX.1c标准。它最早开拓于1988年。

* RT-Linux是一个嵌入式硬实时操作系统,它部分支持POSIX.1b标准。

*KURT-Linux不是为嵌入式利用设计的,不合于硬(hard)实时/软(soft)实时利用,他们提出“严格(firm)”实时利用的观点,如一些多媒体利用和ATM收集利用,KURT是为这样一些利用设计的“严格的”实时系统。

体系布局异同

实时系统的实现多为微内核体系布局,这使得核心小巧而靠得住,易于ROM固化,并可模块化扩展。微内核布局系统中,OS办事模块在自力的地址空间运行,以是,不合模块的内存差错便被隔脱离来。但它也有弱点,进程间通信和高低文切换的开销大年夜大年夜增添。相对付大年夜型集成化内核系统来说,它必须靠更多地进行系统调用来完成相同的义务。

*QNX是一个微内核实时操作系统,其核心仅供给4种办事:进程调整、进程间通信、底层收集通信和中断处置惩罚,其进程在自力的地址空间运行。所有其它OS办事,都实现为协作的用户进程,是以QNX核心异常小巧(QNX4.x大年夜约为12Kb)而且运行速率极快。

*LynxOS今朝还不是一个微内核布局的操作系统,但它计划应用所谓的“Galaxy”技巧将其从大年夜型集成化内核改造成微内核,这一技巧将在LynxOS 3.0中引入。新的28Kb微内核供给以下办事:核心启动和竣事、底层内存治理、掉足处置惩罚、中断处置惩罚、多义务、底层同步和互斥支持。

*RT-Linux实现了一个小的实时核心,仅支持底层义务创建、中断办事例程的装入、底层义务通信行列步队、中断办事例程(ISR)和Linux进程。原本的非实时Linux核心作为一个可抢先的义务运行于这个小核心之上,所有的义务都在核心地址空间运行。它不合于微内核和大年夜型内核,属于实时EXE (realTIme execuTIve)体系布局。其靠得住性和可掩护性对电信办事系统来说都不敷抱负。

*KURT-Linux核心包括两个部分:内核和实时模块。内核认真实时事故的调整,实时模块为用户进程供给特定的实时办事。它不属于微内核布局。

调整策略阐发

义务调整策略是直接影响实时机能的身分。只管调整算法多种多样,但大年夜多由单调率算法(RM)和最早刻日优先算法(EDF)变更而来。前者主要用于静态周期义务的调整,后者主要用于动态调整,在不合的系统状态下两种算法各有好坏。在商业产品中采纳的实际策略经常是各类身分的折中。

QNX 供给POSIX.1b标准进程调整:

* 32个进程优先级;

* 抢占式的、基于优先级的正文切换;

* 可选调整策略:FIFO、轮转策略、适应性策略。

LynxOS 其调整策略为:

* LynxOS支持线程观点,供给256个全局用户线程优先级;

*硬实时优先级调整:在每个优先级上实现了轮转调整、定量调整和FIFO调整策略;

* 快速正文切换和壅闭光阴短;

* 抢占式的RTOS核心。

RT-Linux 在操作系统之下实现了一个简单的实时核心,Linux本身作为一个可抢占的义务在核内运行,优先级最低,随时会被高优先级义务抢占。

* 用户可自行编写调整法度榜样,它们可实现为可加载的核心模块;

* 已实现的调整法度榜样有:基于优先级的抢占式调整和EDF调整;

* 基于优先级的调整应用“单调率算法”,它直接支持周期义务。

KURT-Linux 可运行在两种状态之下:平日状态和实时状态。在平日状态下,所有进程都可以运行,但某些核心办事将带来中断樊篱的弗成预期性。实时模式只容许实时进程运行。

* 支持FIFO调整策略、轮转调整策略和UNIX分时调整策略;

*增添了SCHED-KURT调整策略,这是一种静态调整策略,应用一个特殊的调整文件记录预先定义好的待调整进程的参数。

从以上大略描述可以看出,前三种调整策略实现较规范,分外是两种商业RTOS,遵照或部分遵照POSIX.1b实时调整标准。

操作系统办事对照

QNX的系统办事:

*多种资本治理器,包括各类文件系统和设备治理,支持多个文件系统同时运行,包括供给完全POSIX.1及UNIX语法的POSIX文件系统,支持多种闪存设备的嵌入式文件系统,支持对多种文件办事器(如Windows NT/95、LAN Manager等)的透明造访的SMB文件系统、DOS文件系统、CD-ROM文件系统等。

* 设备治理。在进程和终端设备间供给大年夜吞吐量、低开销接口办事。

* 图形/窗口支持。包括QNX Windows、X Window System for QNX、对MS Windows NT/95和X Window系统的远程图形连接。

* TCP/IP for QNX。

*高机能、容错型QNX收集——FLEET,使得所有连入收集的谋略机变成一个逻辑上的超级谋略机。

*透明的散播式处置惩罚。FLEET收集处置惩罚与消息通报和进程治理原语的集成,将本地和收集IPC统一路来,使得收集对IPC而言是透明的。

LynxOS的系统办事:

* 收集和通信。因为应用UNIX/POSIX API,Lynx很得当于数据通信和Internet利用。又因为系统的开放性,收集软件很轻易移植到Lynx上。同样,Lynx亦供给关键的电话通信协议,使之适用于电信系统的根基架构、操作和多媒体利用。

* TCP/IP协议栈。Lynx自带优化的TCP/IP协议栈,供给高机能办事,如TCP头猜测、高档路由算法、IP级多址广播和链路级高速缓冲。

* Internet对象。包括,Telnet、Ftp、tftp、PPP、SLIP、实时调整的嵌入式Java虚拟机、嵌入式HTTP server、bootp、ARP/RARP、DNS域名办事、电子邮件、Perl、电话通信协议等。

* SVR3流。LynxOS流机制为开拓和移植基于流的驱动法度榜样和利用供给了核心支持。

*文件系统。实时的类UNIX层次布局文件系统:继续布局文件、带缓冲/不带缓冲、原始分区和原始设备造访。

* 基于MoTIf的图形用户接口。

* 散播式谋略资本。SCMP与VME总线上的多处置惩罚结合,PCI桥办事、CompactPCI Hot-swap Services、Lynx/HA-DDS散播式数据系统。

Linux的系统办事:

迩来,很多基于Linux的实时利用被开拓出来,它具有成熟和富厚的资本。

* UNIX用户的开拓对象和利用软件都被移植到Linux上。

* TCP/IP收集协议。

* 各类Internet客户/办事端软件。

* X Window。

* C/C++、Java等说话编译器。

上述系统的合营点是都供给了图形界面、各类收集支持等需要对象。QNX是一个加倍相符传统“散播式”观点的操作系统,目标是把全部局域网变成一个大年夜的超级谋略机,使得收集的存在对用户透明,文件系统供给的办事也很富厚。然则,散播式的程度越高也意味着系统开销的增大年夜。LynxOS则着意于供给富厚的收集办事,而Linux的最大年夜上风则是经济,还可以经由过程新闻组或mailing list快速地办理用户碰着的任何问题。

系统开放性比较

对付很多大年夜、中型系统来说,大年夜多半软件都是为UNIX平台编写的,是以RTOS是否供给POSIX/UNIX API就显得很紧张。

QNX的开放性:

* QNX的POSIX兼容性和其供给的UNIX特色的编译器、调试器、X Window和TCP/IP都是UNIX法度榜样员所认识的。

* 支持多种CPUAMD ElanSC300/310/400/410、Am386 DE/SE、Cyrix MediaGX、x86处置惩罚器(386以上)、PenTIum系列、STMicroelectronics 的STPC。

* 多种总线:CompactPCI、EISA、ISA 、MPE (RadiSys)、STD、STD 32、PC/104、PC/104-Plus、PCI、PCMCIA、VESA、VME。

* 各类外设:多种SCSI设备、IDE/EIDE驱动器、10M/100M以太网卡、Token Ring网卡、FDDI接口卡、多种PCMCIA设备、闪存、声卡等等。

LynxOS的开放性:

* POSIX.1a、1b、1c及BSD4.4等兼容性,使得遵照POSIX 1003或用于UNIX的法度榜样很轻易移植到LynxOS上。

*支持多种CPU主板:包括CompactPCI(6U/3U)和标准PCI、VME/Eurobus、PC/104和PC/AT硬件等。

*各类外设适配器:10/100BaseT Ethernet、SCSI接口、单/多通道串行节制器、单/双工并行口、时钟计时器、IDE接口、高分辨率显示适配器等。

Linux的开放性:

* 用户可获得UNIX的整个开拓对象。

* 可应用市场上便宜又常见的硬件。

经由过程阐发,可以看到以上系统各有上风,是以,在平台搭造历程中,用户应根据自己的实际必要并结合机能价格比进行选择。

责任编辑:ct

您可能还会对下面的文章感兴趣: