对实时操作系统(RTOS)特性进行比较和分析。对于我们刚接触这个操作系统时一定要对他们要有一定的了解,我们先对实时操作系统来了解下,它就是指当外界事件或数据产生时,能够接受并以足够快的速度予以处理,其处理的结果又能在规定的时间之内来控制生产过程或对处理系统作出快速响应,并控制所有实时任务协调一致运行的操作系统。因而,提供及时响应和高可靠性是其主要特点。实时操作系统有硬实时和软实时之分,硬实时要求在规定的时间内必须完成操作,这是在操作系统设计时保证的;软实时则只要按照任务的优先级,尽可能快地完成操作即可。我们通常使用的操作系统在经过一定改变之后就可以变成实时操作系。

基本特征概述

QNX是一个分布式、嵌入式、可规模扩展的实时操作系统。它遵循POSIX.1 (程序接口)和POSIX.2 (Shell和工具)、部分遵循POSIX.1b(实时扩展)。

LynxOS是一个分布式、嵌入式、可规模扩展的实时操作系统,它遵循POSIX.1a、POSIX.1b和POSIX.1c标准。

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

KURT-Linux不是为嵌入式应用设计的,不同于硬实时/软实时应用,他们提出“严格(firm)”实时应用的概念,非常适合一些多媒体应用和ATM网络应用,KURT也同样为这些应用设计的“严格的”实时系统。

体系结构异同

对实时操作系统(RTOS)特性进行比较和分析。对于我们刚接触这个操作系统时一定要对他们要有一定的了解,我们先对实时操作系统来了解下,它就是指当外界事件或数据产生时,能够接受并以足够快的速度予以处理,其处理的结果又能在规定的时间之内来控制生产过程或对处理系统作出快速响应,并控制所有实时任务协调一致运行的操作系统。因而,提供及时响应和高可靠性是其主要特点。实时操作系统有硬实时和软实时之分,硬实时要求在规定的时间内必须完成操作,这是在操作系统设计时保证的;软实时则只要按照任务的优先级,尽可能快地完成操作即可。我们通常使用的操作系统在经过一定改变之后就可以变成实时操作系。

基本特征概述

QNX是一个分布式、嵌入式、可规模扩展的实时操作系统。它遵循POSIX.1 (程序接口)和POSIX.2 (Shell和工具)、部分遵循POSIX.1b(实时扩展)。

LynxOS是一个分布式、嵌入式、可规模扩展的实时操作系统,它遵循POSIX.1a、POSIX.1b和POSIX.1c标准。

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

KURT-Linux不是为嵌入式应用设计的,不同于硬实时/软实时应用,他们提出“严格(firm)”实时应用的概念,非常适合一些多媒体应用和ATM网络应用,KURT也同样为这些应用设计的“严格的”实时系统。

体系结构异同

实时系统实现多为微内核体系结构,这变的小巧而可靠,容易被ROM固化,可以模块化扩展。微内核结构系统中,地址空间可以在OS服务模块在独立运行,所以,不同模块的内存错误便被隔离开来被指使我们修改。但它也有弱点,进程间通信和上下文切换的开销大大增加。

QNX是实时操作系统,其可以提供4种服务:进程调度、进程间通信、底层网络通信和中断处理,在其地址空间中单独的运行。所有其它OS服务,都实现为协作的用户进程,因此QNX非常小巧而且运行速度快。

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。

KURT-Linux 可运行在两种状态之下:通常状态和实时状态。在通常状态下,所有进程都可以运行,但某些服务将带来中断屏蔽的不可预期性。

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

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

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

QNX的系统服务:

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

用户可自行编写调度程序,它们可实现为可加载的模块;

已实现的调度程序有:基于优先级的抢占式调度和EDF调度;

基于优先级的调度使用“单调率算法”,它直接支持周期任务。

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

设备管理,在进程和终端设备间提供大吞吐量、低开销接口服务。

高性能、高速度容错型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、电话通信协议等。

文件系统。实时的类UNIX层次结构文件系统:连续结构文件、带缓冲/不带缓冲、原始分区和原始设备访问。

分布式计算资源。SCMP与VME总线上的多处理结合,PCI桥服务、CompactPCI Hot-swap Services、Lynx/HA-DDS分布式数据系统。

Linux系统服务:

很多基于Linux的实时应用被开发出来,它具有成熟和丰富的资源。

UNIX用户的开发工具和应用软件都被移植到Linux上。

TCP/IP网络协议。

各种Internet客户/服务端软件。

C/C++、Java等语言编译器。

系统开放性对比

对于很多大、中型系统来说,大多数软件都是为UNIX平台编写的,因此RTOS是否提供POSIX/UNIX API就显得很重要。

LynxOS的开放性:

POSIX.1a、1b、1c及BSD4.4等兼容性,使得遵循POSIX 1003或用于UNIX的程序很容易移植到LynxOS上。

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

QNX的开放性:

QNX的POSIX兼容性和其提供的UNIX特色的编译器、调试器、X Window和TCP/IP都是UNIX程序员所熟悉的。

支持多种CPU:Pentium系列、Am386 DE/SE、Cyrix MediaGX、x86处理器(386以上)、STMicroelectronics 的STPC。

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

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

嵌入Linux主要解决这样几个问题,非虚拟内存,处理文件系统,设置启动(Lilo和BIOS),设备驱动程序的编程。

:

qnx与linux区别,实时Linux和RTOS进行比较相关推荐

  1. 实时操作系统与通用计算机操作系统的区别,实时操作系统(RTOS)和通用操作系统(OS)之间的区别...

    RTOS vs OS 大多数人都熟悉电脑上使用的操作系统. 用于个人电脑的最常见的操作系统包括:微软的Windows,苹果的OS X以及各种版本的Linux. 但是多数人都不知道实时操作系统(缩写RT ...

  2. RTOS与linux区别

    一句话解释: linux是分时系统,不过可以通过配置内核改成实时. 嵌入式Linux 系统是在原来Linux的发行版本之上进行了优化和改进的,用于嵌入式的移动终端等设备的嵌入式Linux系统现在基本上 ...

  3. rtos与linux软件开发,实时Linux和RTOS的基本特性及技术进行比较

    描述 体系结构异同 对实时操作系统(RTOS)特性进行比较和分析.对于我们刚接触这个操作系统时一定要对他们要有一定的了解,我们先对实时操作系统来了解下,它就是指当外界事件或数据产生时,能够接受并以足够 ...

  4. linux线程调度与rtos,实时Linux和RTOS的基本特性及技术进行比较

    体系结构异同 对实时操作系统(RTOS)特性进行比较和分析.对于我们刚接触这个操作系统时一定要对他们要有一定的了解,我们先对实时操作系统来了解下,它就是指当外界事件或数据产生时,能够接受并以足够快的速 ...

  5. rtosucos和linux区别,为什么我们需要uCos?带你透彻理解RTOS

    原标题:为什么我们需要uCos?带你透彻理解RTOS 与uCos见面还是大学的时候,老师让我为毕业设计选一个课题,要求有关嵌入式实时操作系统,于是开始在网上搜索,顺理成章的就发现了uCos,于是开始了 ...

  6. 实时Linux内核调度器 | Real-Time Linux Kernel Scheduler

    <Real-Time Linux Kernel Scheduler> HOWTOs by Ankita Garg on August 1, 2009 目录 Design Goal 设计目标 ...

  7. Linux·主流嵌入式操作系统(RTOS)

    满足实时控制要求的嵌入式操作系统(RTOS)操作系统,以下介绍14种主流的RTOS,分别为μClinux.μC/OS-II.eCos.FreeRTOS.mbed OS.RTX.Vxworks.QNX. ...

  8. 《Linux嵌入式实时应用开发实战(原书第3版)》——第2章 安装Linux2.1 发行版...

    本节书摘来自华章计算机<Linux嵌入式实时应用开发实战(原书第3版)>一书中的第2章,第2.1节,作者:(美)Doug Abbott 更多章节内容可以访问云栖社区"华章计算机& ...

  9. 什么是Linux ,Unix和Linux有什么区别

    目录 什么是Linux 类Unix系统: POSIX: UNIX: 什么是 Linux 内核? Unix和Linux有什么区别? cpu: 什么是Linux Linux是一套免费使用和自由传播的类Un ...

最新文章

  1. Exchange2010配置实验(七)DAG配置实验
  2. solr7.4 安装与使用
  3. 《金狐系统维护盘》六周年纪念版UD/ISO +PE维护
  4. linux系统python的版本怎么升级,python---linux下升级python的版本
  5. 图解TCPIP-传输层 TCP
  6. python: insert()函数用法
  7. 零火线都带电该怎么处理?
  8. SQL Server 2008支持将数据导出为 insert into 的脚本
  9. 软考系统分析师备考详细介绍
  10. C语言软盘,如何使用编程的方法--创建1.44兆软盘镜像的几种方法。。。(之一 C语言法)...
  11. 第九讲 函数间接展开成幂级数
  12. uc看视频显示服务器有点忙,uc浏览器常见问题集锦(一)
  13. linux中查看ruby版本号,Ruby 版本常量
  14. linux下重要目录的作用
  15. 什么是IDU和ODU
  16. 此应用 DCloud APPID 非当前账号所有,请联系应用所有者(即此Appid的创建者)设置你的账号为协作者(在https://dev.dcloud.net.cn操作),或重新生成 APPID 后
  17. 编写js,使用对象字面量的形式创建一个名字为可可的狗的对象,具体信息如下:
  18. editplus5激活码 (亲测可用)
  19. Linux上下文切换[转]
  20. 国产数据库发展现状分析

热门文章

  1. 安装部署vcenter
  2. 1.JeeSite 基础—JeeSite4.x技术选型、JeeSite4.x工程搭建—导入工程、下载依赖、配置数据库、启动项目
  3. 保研面试 算法题_百度软件工程师面试经验
  4. Docker-Compose集成编排Redis、MySQL、微服务,服务容器化
  5. 计算机视觉领域英文SCI期刊
  6. html毕业作业消消乐,html+css+js写一个简易功能的消消乐~~~~
  7. QRS波检测算法集锦(含源代码)
  8. android 按钮悬浮菜单,悬浮菜单app下载
  9. 【JS】问号点(?.)和双问号(??)的用法
  10. 十个最值得推荐的英语学习网站