没有合适的资源?快使用搜索试试~ 我知道了~
QNX开发手册1.1
资源推荐
资源详情
资源评论
QNX 开发手册
(版本号:1.1)
研究开发部 自动化室
二○○一年八月
北京哈德威四方保护与控制设备有限公司
1
QNX 开发手册 前 言
2
前 言
QNX 操作系统是一个分布式网络实时操作系统,它是加拿大 Quantum Software Systems
公司的产品。该产品 1982 年推出在 IBM PC 机上使用的多用户、多任务实时操作系统版本。
1984 年,将局域网络集成到该操作系统中,并使用了 AT 机的保护模式。随后,QNX 的设
计者们不断地将它标准化,如遵从 IEEE 的可移植操作系统标准,并增加了新的功能,使它
既可以运行在 PC 及其兼容机上,又可以运行在 PS/2 机上。2.15 版的 QNX 操作系统集成的
网络是采用令牌环网协议,支持 255 个节点,共享程序、文件和设备。4.x 版的 QNX 操作
系统集成的网络符合 IEEE802.3 以太网协议。随着版本的升高,性能也在不断提高。
QNX 是一个实时操作系统。它提供用户可控制的、优先级驱动的、急者优先抢占的调
度方式。它德自身开销小、上下文切换快,在同样的硬件条件下给实时应用留下更大的余地,
因而它在实时控制、通信、多媒体信息处理等对时间敏感的应用领域大有用武之地。
QNX 是一个可嵌入的操作系统。它由微内核和一组共操作的进程构成,具有高度可伸
缩性,可灵活的剪裁。最小配置只占用几十 KB 内存。因此,它可以广泛地嵌入到智能机器、
智能仪器仪表、通信设备等应用中去。
随着 QNX 的深入使用和计算机软件技术的发展,QNX 设计者又推出了 QNX for
Windows(Phindows);许多软件开发者在此基础上作了二次开发,充分利用了 QNX 的实时
性能和网络通信能力,同时增加了图形界面,使 QNX 更具生命力。
CSM300E 综合控制主站就是在实时多任务操作系统——QNX 的平台上开发的。它秉承
了 QNX 实时性能高、稳定性能好的优点,最大程度地利用操作系统的各种优越性能,使我
公司的远动主站迈上了一个崭新的台阶。
为了使广大技术、开发人员能够在短时间内对 QNX 操作系统及在 QNX 下的编程有一
个初步的了解,我们特地编写此开发手册。如果您想深入学习 QNX 及编程知识,请参考其
它书目和联机文档。此开发手册的章节安排如下:
第一章 QNX 概述
1.1 QNX 特点
介绍 QNX 操作系统的主要特点
1.2 QNX 系统结构
介绍 QNX 的一些抽象概念
1.3 进程间通信
介绍几种 QNX 间任务传输信息的基本方法
第二章 QNX 常用命令
2.1 系统命令
介绍一些 QNX 常用的系统命令
2.2 文件操作命令
介绍一些 QNX 操作文件系统的命令
第三章 QNX 应用程序开发
3.1 开发环境
介绍有关 QNX 应用程序开发的基本知识
3.2 开发过程举例
通过具体实例介绍 QNX 应用程序的开发过程
QNX 开发手册 第一章 QNX 概述
3
第一章 QNX 概述
QNX 是一种运行在 Intel X86 兼容处理器和一些 RISC 处理器(如 PowerPC、MIPS)上
的操作系统。它是从 UNIX 发展起来的,它的命令有许多与 UNIX 相同,UNIX 有许多很好
的概念被 QNX 采纳,如文件的组织、输入/输出重定向、任务建立等。
QNX 是一个很有特色的操作系统软件。它的与众不同的设计思路实现的是一个极为灵
活方便、可按照需要随意裁剪的系统,从而开拓了实现计算机系统应用的另一种路子。
1.1 QNX 特点
QNX 与 DOS 的区别很大,因为 QNX 是多任务、分布式的操作系统,而 DOS 不是。
QNX 对硬盘的划分及文件存放格式也与 DOS 不同。但 QNX 操作系统提供了两个服务:
QDOS 和 DFS。它们允许 QNX 系统存取 DOS 文件和运行 DOS 程序。既可将 DOS 下的文
件传送到 QNX 中,也可将 QNX 中的文件传送到 DOS 下,使传送字符文件变得非常容易。
(当然,传送中必须检查行结束符和文件终止符。)
QNX 操作系统是可以运行在 PC 机上的多任务、多用户的实时操作系统,它可以与
MS-DOS、UNIX、Windows 和 OS/2 并存于一台 PC 机或兼容机上。QNX 实时系统突出特点
之一是任务间通信主要依靠内部任务消息实现,它的结构灵活、内核小、集成网络后只有
148KB,最多可连接 32 个终端,任务调度基于优先级,对异常事件能实时响应。
QNX 由一个体积很小的内核及一些负责系统管理的共操作进程组成。如同图 1-1 所表
明的那样,QNX 的系统结构中包含了若干个管理器,各管理器之间、管理器和其“指挥者”
(内核)之间都是彼此可共操作的。这样的结构,使 QNX 系统看上去具有小组型的结构,
而不是具有层次型的结构。
图 1-1 QNX 微内核协调系统管理器之间的工作
QNX 操作系统最突出特点是,它是一个真正的分布式网络操作系统。它的网络功能最
大程度地实现了资源共享,并对网络上的每个节点资源透明存取,任务可共享网上所有资源。
在资源使用时,只要在资源名前加入节点号即可,如果不在同一节点,QNX 内核在网上通
过消息实现不同节点通信。因此使用起来非常简捷、方便,为网络用户提供了良好的网络使
用环境。此外,QNX 提倡把一个任务划分为多个子任务。每个进程执行一个子任务,由协
同操作的进程组共同完成整个任务。这样做不仅能简化程序设计,还能充分利用系统资源。
1.2 QNX 系统结构
进程
管理器
设备
管理器
文件系统
管理器
网络
管理器
微内核
QNX 开发手册 第一章 QNX 概述
4
QNX 系统定义了一些抽象的概念,诸如任务、消息、资源和节点等。任务是一个可执
行单元,它可通过消息等手段对资源进行操作和与其它任务进行通信。典型的资源有内存和
文件。网络上不同节点的两个任务可以不关心它们的状态而很方便地进行通信。
1.2.1 任务
任务是一个可调度的执行单元,换句话说,任务是由执行代码和只能由该任务存取的私
有数据组成。大多数时间任务是独立运行的,只有在与其它任务或资源同步时暂停一刻。操
作系统基于轮巡方式或预先定义的优先级方式来调度机器上的任务。相同优先级的任务只能
按时间片轮流运行。低优先级任务必须等高优先级任务的 I/O 操作或其它操作完成挂起后才
能运行,而最高优先级任务准备就绪就可运行。如果高优先级任务一直在运行,低优先级任
务就无法运行。
1.2.2 文件
文件系统将磁盘上文件按目录树方式组织起来。文件包含数据并且可驻存在任意目录层
中。目录包含有关文件和其它目录信息,诸如它们的名字和存取权限。因此目录就象个“盒
子”,可以达到任意深度。文件和目录都有唯一的名字。
QNX 实现了至少六种文件类型,其中五种是由文件系统管理器(Fsys)来管理的。这
些文件类型是:
常规文件——由可随机存取的一系列字节组成,无任何预定义的结构。
目录文件——包含查找常规文件需要用到的位置信息,也包含每个常规文件的状态和属
性信息。
符号链文件——包含着指向一个文件或目录的路径名,使人们可以通过该符号链来实现
对该文件或目录的存取。这类文件常被用来产生指向单个文件的多个路径。
管道和 FIFO 文件——可用作共操作进程之间的 I/O 通道。
块特殊文件——用于指向设备,如磁盘驱动器、磁带和磁盘驱动器分区等。有了这些文
件,应用程序可在不需要知道设备的硬件特征情况下对设备进行方便的存取。
第六种文件类型——字符特殊文件,由设备管理器负责管理。其它可能的文件类型则由
其它管理器负责管理。
1.2.3 设备
一般来说,除了硬盘外,其它外围设备都称为设备。这包括系统控制台、终端、打印机、
调制解调器等。QNX 的设备管理器(Dev)就是进程和这些设备之间的接口。系统中硬盘
和节点是被编号的,而设备是被命名的。在 I/O 名字空间中,这些设备使用“/dev”作为它
们名字的前缀,因此用户根据这一特点可以很容易的找到它们。例如,QNX 的一个控制台
设备应有像下面这样的名字:/dev/con1。
1.2.4 节点
节点是一个独立的工作站,它是 QNX 的一个重要特征。在同一时刻,各节点可以共享
服务器节点的资源,诸如打印机、硬盘等。节点间通过高速局域网连接在一起。从程序设计
剩余25页未读,继续阅读
资源评论
qq_41617405
- 粉丝: 0
- 资源: 19
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- thriftpy-0.3.9-cp34-cp34m-win_amd64.whl.rar
- thriftpy-0.3.9-cp34-cp34m-win32.whl.rar
- thriftpy-0.3.9-cp35-cp35m-win_amd64.whl.rar
- thriftpy-0.3.9-cp35-cp35m-win32.whl.rar
- thriftpy-0.3.9-cp36-cp36m-win_amd64.whl.rar
- thriftpy-0.3.9-cp36-cp36m-win32.whl.rar
- tifffile-2019.7.26.2-py2.py3-none-any.whl.rar
- thriftpy-0.3.9-cp37-cp37m-win32.whl.rar
- thriftpy-0.3.9-cp37-cp37m-win_amd64.whl.rar
- tifffile-2021.11.2-py3-none-any.whl.rar
- tifffile-2020.6.3-py3-none-any.whl.rar
- tifffile-2022.5.4-py3-none-any.whl.rar
- springboot员工日志管理信息系统小程序.zip
- tinyarray-1.0.5-cp27-none-win_amd64.whl.rar
- tiledb-0.9.3-cp37-cp37m-win_amd64.whl.rar
- tiledb-0.9.3-cp38-cp38-win_amd64.whl.rar
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功