Vxworks、QNX、Xenomai、Intime、Sylixos、Ucos等实时操作系统的性能特点
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等实时操作系统的性能特点的更多相关文章
- xenomai内核解析之嵌入式实时linux概述
Linux系统作为一个GPOS(通用操作系统)发展至今已经非常成熟可靠了,并且由于遵循GPL协议,开放所有系统源代码,非常易于裁剪.更重要的是,与其他开源的GPOS或RTOS相比,Linux系统支持多 ...
- 【原创】xenomai与VxWorks实时性对比(资源抢占上下文切换对比)
版权声明:本文为本文为博主原创文章,转载请注明出处.如有问题,欢迎指正.博客地址:https://www.cnblogs.com/wsg1100/ (下面数据,仅供个人参考) 可能大部分人一直好奇Vx ...
- 【原创】xenomai与VxWorks实时性对比(Jitter对比)
版权声明:本文为本文为博主原创文章,转载请注明出处.如有问题,欢迎指正.博客地址:https://www.cnblogs.com/wsg1100/ (下面数据,仅供个人参考) 可能大部分人一直好奇Vx ...
- 基于Xenomai的实时Linux分析与研究
转自:http://blog.csdn.net/cyberlabs/article/details/6967192 引 言 随着嵌入式设备的快速发展,嵌入式设备的功能和灵活性要求越来越高,很多嵌入式设 ...
- ucos实时操作系统学习笔记——任务间通信(信号量)
ucos实时操作系统的任务间通信有好多种,本人主要学习了sem, mutex, queue, messagebox这四种.系统内核代码中,这几种任务间通信机制的实现机制相似,接下来记录一下本人对核心代 ...
- QNX 实时操作系统(Quick Unix)
Gordon Bell和Dan Dodge在1980年成立了Quantum Software Systems公司,他们根据大学时代的一些设想写出了一个能在IBM PC上运行的名叫QUNIX(Quick ...
- 【原创】xenomai内核解析--实时IPC概述
版权声明:本文为本文为博主原创文章,转载请注明出处.如有问题,欢迎指正.博客地址:https://www.cnblogs.com/wsg1100/ 目录 1.概述 2.Real-time IPC 2. ...
- 【原创】有利于提高xenomai 实时性的一些配置建议
版权声明:本文为本文为博主原创文章,转载请注明出处.如有错误,欢迎指正. @ 目录 一.影响因素 1.硬件 2.BISO(X86平台) 3.软件 4. 缓存使用策略与GPU 二.优化措施 1. BIO ...
- SylixOS 系统初探
国产嵌入式硬实时操作系统 SylixOS 初体验 关于 SylixOS 详细了解请见:http://wiki.sylixos.com/index.php/%E7%B3%BB%E7%BB%9F%E7%A ...
随机推荐
- SDL_PingGe 1.2
加入了像素填充函数,必须要在一个指定颜色的边界范围内,边界必须没有缺口. 加入了鼠标类 /* typedef void (*FUNCTION)(void); HMODULE HDll; HDll = ...
- Java学习日记9-异常
异常(Exception) 一.什么是异常? 异常就是程序中的错误,比如数组越界.访问空指针等.在Java中,一切皆对象,异常也不例外.所有的异常都是派生于Throwable类的一个实例对象. 二.异 ...
- 弱爆了的Candies
题目出处 题目描述: n个小朋友坐成一排,每个小朋友有一个数表示他的表现(数字越大表现越好).老师要给每个小朋友发至少1颗糖,相邻的两个小朋友,得分较高的小朋友必须得到更多的糖,问:老师至少需要给出多 ...
- SpringMVC整合fastjson-1.1.41
以前用fastjson也只是硬编码,就好像这篇博文写的http://blog.csdn.net/jadyer/article/details/24395015 昨天心血来潮突然想和SpringMVC整 ...
- Com原理及應用——Com對象和接口
1.COM对象的理解 COM对象类似于C++语言中类的概念,类的每个实例代表一个COM对象,它也包括属性(即状态)和方法(即操作),状态反映对象的存在,方法就是接口. 2.COM对象的标识-CLSID ...
- Shell脚本:判断用户和用户组是否已经存在/创建用户和用户组
通常作为一个应用程序的部署脚本,开始的第一项工作是为当前应用创建一个专用(dedicated)的用户和用户组.这个脚本很简单,这里贴一个参考样本: #!/bin/sh user=test_user ...
- rman catalog (rman 恢复目录)
受控制文件大小的限制,一般rman需要用rman catalog来管理及存放备份信息: 这里介绍一下创建rman catalog的步骤: C:\Documents andSettings\Admini ...
- struts2,hibernate,spring整合笔记(3)
struts2,hibernate,spring整合笔记(1) struts2,hibernate,spring整合笔记(2) 配好struts和hibernate就要开始spring了 老规矩,还是 ...
- STL之Errors and Exceptions
Error Handling STL设计的目标是性能最优化,而不是最安全. 错误检查是极其浪费时间的,因此,STL对于错误处理几乎没有做处理,因此,这对STL的使用者的要求就非常高. 为什么不采取错误 ...
- web页面打印
在使用的两种方式打印: 第一种:js如下 function doPrint() { allhtml = window.document.body.innerHTML; starstr = " ...