没有合适的资源?快使用搜索试试~ 我知道了~
QNX与Vxworks.doc
资源推荐
资源详情
资源评论
QNX
1.最主要的:支持 x86 处理器,x86 平台上最好的嵌入式实时操作系统之一
2.微内核,运行速度快(其核心仅提供 4 种服务:进程调度、进程间通信、底层网络
通信和中断处理,其进程在独立的地址空间运行)
3.支持多种 CPU,多种总线
4.
QNX 是由 QNX 软件系统有限公司开发的实时操作系统。
[编辑]基本特征
* QNX 是一个分布式、嵌入式、可规模扩展的实时操作系统。它遵循 POSIX.1 (程
序接口)和 POSIX.2 (Shell 和工具)、部分遵循 POSIX.1b(实时扩展)。它最早开发于 1980
年,到现在已相当成熟。
[编辑]体系结构
* QNX 是一个微内核实时操作系统,其核心仅提供 4 种服务:进程调度、进程间通
信、底层网络通信和中断处理,其进程在独立的地址空间运行。所有其它 OS 服务,都实
现为协作的用户进程,因此 QNX 核心非常小巧(QNX4.x 大约为 12Kb)而且运行速度极快。
[编辑]调度策略
QNX 提供 POSIX.1b 标准进程调度:
* 32 个进程优先级;
* 抢占式的、基于优先级的正文切换;
* 可选调度策略:FIFO、轮转策略、适应性策略。
[编辑]系统服务
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 而言是透明的。
[编辑]系统开放性
QNX 的开放性:
* QNX 的 POSIX 兼容性和其提供的 UNIX 特色的编译器、调试器、X Window 和 TC
P/IP 都是 UNIX 程序员所熟悉的。
* 支持多种 CPU:AMD 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 设备、闪存、声卡等等。
QNX 结构:
QNX 是业界公认的 X86 平台上最好的嵌入式实时操作系统之一。它具有独一无二的
微内核实时平台,建立在微内核和完全地址空间保护基础之上,实时、稳定、可靠,已经
完成到 PowerPC、MIPS、ARM 等内核的移植,成为在国内广泛应用的嵌入式实时操作系
统。
1 QNX 内核简介
QNX 的微内核结构是它区别于其它操作系统的显著特点。
平板式内存结构,如图 1 所示,所有的程序都使用同一个地址空间,不加保护;应用
程序可以自由访问所有空间,效率较高,但是任何应用程序指针错误都可能会导致内核崩
溃。
大内核内存结构,如图 2 所示,操作系统内核和各种驱动程序、网络协议在同一个地
址空间,应用程序在单独空间;内核模块同处于一个保护空间,运行效率高,应用程序无
法直接访问保护空间,系统稳定性大大提高。缺点是,由于内核模块(例如网络驱动)处于
保护空间,因此调试困难,任何驱动程序的修改都要重新编译内核,无法做到驱动的动态
加载和卸载。
QNX 的微内核结构,内核独立自处于一个被保护的地址空间;驱动程序、网络协议和
应用程序处地程序空间中。
微内核结构的优点:①驱动程序、网络协议、文件系统等操作系统模块和内核相互独
立,任何模块的故障都不会导致内核的崩溃;②驱动程序、网络协议、文件系统和应用程
序都处于程序空间,都调用相同的内核 API,开发与调试和应用程序没有区别;③操作系
统功能模块可以根据需要动态地加载或卸载,不需要编译内核。在高可靠性要求的情况下,
可以编写监视模块,对可靠性要求高的模块进行监视,必要的时候重新启动或重新加载而
剩余16页未读,继续阅读
资源评论
ppcust
- 粉丝: 38
- 资源: 725
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功