QNX体系结构
QNX是一个[微内核]实时操作系统,其核心仅提供4种服务:进程调度、进程间通信、底层网络通信和中断处理,其进程在独立的地址空间运行。
所有其它OS服务,都实现为协作的用户进程,因此QNX核心非常小巧(QNX4.x大约为12Kb)而且运行速度极快。
QNX调度策略
QNX 提供POSⅨ.1b标准进程调度:
- 255个进程优先级
- 抢占式的、基于优先级的正文切换
- 可选调度策略:FIFO、轮转策略、适应性策略
QNX的微内核结构
内核独立自处于一个被保护的地址空间;驱动程序、网络协议和应用程序处于程序空间中。
微内核结构的优点:
①驱动程序、网络协议、文件系统等操作系统模块和内核相互独立,任何模块的故障都不会导致内核的崩溃;
②驱动程序、网络协议、文件系统和应用程序都处于程序空间,都调用相同的内核API,开发与调试和应用程序没有区别;
③操作系统功能模块可以根据需要动态地加载或卸载,不需要编译内核。
在具有高可靠性内核的基础上,QNX的创新设计使它同样具有很高的效率。
QNX最为引人注目的地方是,它是UNⅨ的同胞异构体,保持了和UNⅨ的高度相似性,绝大多数UNⅨ或LINUX应用程序可以在QNX下直接编译生成。
这意味着为数众多的稳定成熟的UNⅨ、LINUX应用可以直接移植到QNX这个更加稳定高效的实时嵌入式平台上来。
参考
QNX 实时操作系统(Quick Unix)
QNX开发最完整图文教程(官方文档,非官方翻译)
QNX产品介绍2012版
QNX 6.5.x 下载