Vxworks、QNX、Xenomai、Intime、Sylixos、Ucos等实时操作系统的性能特点

  • VxWorks操作系统

VxWorks 操作系统是美国WindRiver公司于1983年设计开发的一种嵌入式实时操作系统,是嵌入式开发环境的关键组成部分。其内核支持多任务调度(采用基于优先级抢占方式,同时支持同优先级任务间的分时间片调度)、任务间的同步、进程间通信机制、中断处理定时器和内存管理机制等,且提供了一个快速灵活的与 ANSIC 兼容的 I/O 系统,网络支持 对其它VxWorks系统和TCP/IP网络系统的"透明"访问。具有良好的持续发展能力、良好的可靠性、卓越的实时性和高性能的内核以及友好的用户开发环境。其 “Modular”模块化、“Secure”知识保护、“Scalable ”可扩展性、“Safe”可靠性等特点使其被广泛地应用在通信、军事、航空、航天等高精尖技术及实时性要求极高的领域中。

  • QNX操作系统

QNX是一个分布式、嵌入式、可规模扩展、遵从POSIX规范的类Unix微内核硬实时操作系统。主要用于商用,目标市场主要是面向嵌入式系统。其内核独立自处于一个被保护的地址空间,驱动程序、网络协议和应用程序处于程序空间中。。其内核仅提供4种服务:进程调度、进程间通信、底层网络通信和中断处理。所有其它OS服务,都实现为协作的用户进程,在独立的地址空间运行。因此QNX内核非常小巧(QNX4.x大约为12Kb),运行速度极快;操作系统模块与内核相互独立,具有很高的可靠性。而且与UNIX具有高度相似性,使得为数众多的稳定成熟的UNIX、LINUX应用可以直接移植到QNX这个更加稳定高效的实时嵌入式平台上。

  • Xenomai操作系统

Xenomai是一个在Linux平台上建立起的通用实时框架的自由软件项目。主要的项目目标是帮助从专有的实时系统迁移到系统的工业应用。早期是一种在采用双内核机制时对不能用于强实时应用的Linux内核的扩展,其优先级高于Linux 内核。后来逐渐发展成一个成熟的实时Linux架构,可独自成为一个单/本地内核系统。Xenomai 实时内核为开发强实时应用提供了丰富的功能,主要包括实时线程调度与管理、用户空间实时任务支持、线程同步服务、时钟服务、中断服务、动态内存申请和实时对象注册服务等。主要用于工业自动化行业。

  • INtime操作系统

INtime是与 Windows 操作系统共享硬件平台的实时操作系统。Windows内核驱动程序管理用于运行内核和实时应用程序的内存,并且管理这两个系统之间的通讯接口。INtime 内核为实时虚拟机提供操作系统服务,包括一个基于优先级的抢先式计划程序,该程序执行基于优先级的中断处理。内核计划程序已经进行优化,以获得最佳的中断性能。得到的平台表现出良好的性能,最重要的是它的行为是可预测的。它不仅能够向 Windows 平台添加实时功能,而且其添加这些功能的方式能够为实时应用程序提供可靠且可伸缩的平台。

  • SylixOS操作系统

SylixOS 是一款由中国人自主设计开发的大型嵌入式硬实时操作系统,支持 SMP 多核,具有丰富的文件系统、网络系统以及众多设备驱动支持,并提供完善的集成开发环境。经过多年的持续开发与改进,已经成为一个可靠稳定,功能全面,易于开发调试的嵌入式实时系统开发平台。SylixOS的诞生可以摆脱国内一些关键性设备对国外嵌入式操作系统的依赖,为国内的嵌入式信息技术行业提供一个全新的选择。现已应用于航空航天与国防导弹等领域。

  • UCOS操作系统

UCOS 是一个可以基于ROM运行的、可裁减的、抢占式、实时多任务内核,具有高度可移植性的嵌入式实时操作系统。特别适合于微处理器和控制器,适合很多商业操作系统。有着完整的网络系统和文件系统,并且开放源代码。功能支持TCP/IP、USB、CAN总线、Modbus。具有一个强大的文件系统和图形用户界面。UCOS采用可剥夺型实时多任务内核,其任务调度是完全基于任务优先级的抢占式调度,具有可靠及高效等特点。在建筑工业控制、医疗设备、航天系统等领域有广泛的应用。

Vxworks、QNX、Xenomai、Intime、Sylixos、Ucos等实时操作系统的性能特点的更多相关文章

  1. xenomai内核解析之嵌入式实时linux概述

    Linux系统作为一个GPOS(通用操作系统)发展至今已经非常成熟可靠了,并且由于遵循GPL协议,开放所有系统源代码,非常易于裁剪.更重要的是,与其他开源的GPOS或RTOS相比,Linux系统支持多 ...

  2. 【原创】xenomai与VxWorks实时性对比(资源抢占上下文切换对比)

    版权声明:本文为本文为博主原创文章,转载请注明出处.如有问题,欢迎指正.博客地址:https://www.cnblogs.com/wsg1100/ (下面数据,仅供个人参考) 可能大部分人一直好奇Vx ...

  3. 【原创】xenomai与VxWorks实时性对比(Jitter对比)

    版权声明:本文为本文为博主原创文章,转载请注明出处.如有问题,欢迎指正.博客地址:https://www.cnblogs.com/wsg1100/ (下面数据,仅供个人参考) 可能大部分人一直好奇Vx ...

  4. 基于Xenomai的实时Linux分析与研究

    转自:http://blog.csdn.net/cyberlabs/article/details/6967192 引 言 随着嵌入式设备的快速发展,嵌入式设备的功能和灵活性要求越来越高,很多嵌入式设 ...

  5. ucos实时操作系统学习笔记——任务间通信(信号量)

    ucos实时操作系统的任务间通信有好多种,本人主要学习了sem, mutex, queue, messagebox这四种.系统内核代码中,这几种任务间通信机制的实现机制相似,接下来记录一下本人对核心代 ...

  6. QNX 实时操作系统(Quick Unix)

    Gordon Bell和Dan Dodge在1980年成立了Quantum Software Systems公司,他们根据大学时代的一些设想写出了一个能在IBM PC上运行的名叫QUNIX(Quick ...

  7. 【原创】xenomai内核解析--实时IPC概述

    版权声明:本文为本文为博主原创文章,转载请注明出处.如有问题,欢迎指正.博客地址:https://www.cnblogs.com/wsg1100/ 目录 1.概述 2.Real-time IPC 2. ...

  8. 【原创】有利于提高xenomai 实时性的一些配置建议

    版权声明:本文为本文为博主原创文章,转载请注明出处.如有错误,欢迎指正. @ 目录 一.影响因素 1.硬件 2.BISO(X86平台) 3.软件 4. 缓存使用策略与GPU 二.优化措施 1. BIO ...

  9. SylixOS 系统初探

    国产嵌入式硬实时操作系统 SylixOS 初体验 关于 SylixOS 详细了解请见:http://wiki.sylixos.com/index.php/%E7%B3%BB%E7%BB%9F%E7%A ...

随机推荐

  1. Convert Sorted Array to Binary Search Tree——LeetCode

    Given an array where elements are sorted in ascending order, convert it to a height balanced BST. 题目 ...

  2. NSOutputStream\NSInputStream

    NSOutputStream-保存网络资源到本地 _filePath = [[NetworkManager sharedInstance] pathForTemporaryFileWithPrefix ...

  3. K - Treasure Exploration - POJ 2594(最小路径覆盖+闭包传递)

    题意:给一个有向无环图,求出来最小路径覆盖,注意一个点可能会被多条路径重复 分析:因为有可能多条路径走一个点,可又能会造成匹配的不完全,所以先进行一次闭包传递(floyd),然后再用二分匹配的方法求出 ...

  4. J - Assign the task - hdu 3974(DFS建树+简单线段树)

    题意:给一些节点简单额对应关系,可以组成一个树,如果树的某一个节点更新那么他的所有子节点都要更新,中间,会有一些查询 分析:题意倒也不难理解,但是但是不知道怎么建树...于是自能百度,看了kuangb ...

  5. eclipse 错误: 找不到或无法加载主类

    在src文件夹上移除Source Folder,再点右键-Build Path-Use as Source Folder,重新进行编译,一切正常了.

  6. 一、进程与信号之exec函数system函数

    exec函数: 子进程调用exec函数执行另一个程序,exec函数进程完全由新程序代替,替换原有程序正文,数据,堆,栈段 #include <unistd.h> extern char * ...

  7. angularjs 创建自定义的指令

    创建自定义的指令 除了 AngularJS 内置的指令外,我们还可以创建自定义指令. 你可以使用 .directive 函数来添加自定义的指令. 要调用自定义指令,HTMl 元素上需要添加自定义指令名 ...

  8. Python logging模块详解

    简单将日志打印到屏幕: import logging logging.debug('debug message') logging.info('info message') logging.warni ...

  9. 在自己电脑上建立SVNserver

    转载处:http://blog.csdn.net/shmily570/article/details/8227690 传统的Subversionserver配置方法: 一.准备工作 1.获取 Subv ...

  10. oracle中split的使用

    1.创建自己的类型 VARCHAR2ARRAY CREATE OR REPLACE TYPE "VARCHAR2ARRAY" as table of varchar2(300); ...