首页|嵌入式系统|显示技术|模拟IC/电源|元件与制造|其他IC/制程|消费类电子|无线/通信|汽车电子|工业控制|医疗电子|测试测量
首页 > 分享下载 > 常用文档 > QNX环境下多线程编程

QNX环境下多线程编程

资料介绍
嵌入式系统论文

QNX环境下多线程编程
作者Email:  zoutom@163.com
   
摘要:介绍了QNX实时操作系统和多线程编程技术,包括线程间同步的方法、多线程程序
的分析步骤、线程基本程序结构以及实用编译方法。
    关键词:QNX;多线程;同步;程序结构
    0引言:
   
QNX是由加拿大QNX软件有限系统公司开发的一种多任务、分布式、可嵌入的实时操作系
统。它有着轻巧的微内核,可以对进程进行全面的地址保护,可剪裁,模块化程度高,
实时性强,安全可靠。符合POSIX标准的API使它成为一个开放式互联系统,便于与UNIX
/LINUX系统的移植。QNX有着不同于UNIX或LINUX的模块化设计思想,并不是UNIX或LINU
X的一种演化,而是完全不同的一种全新的实时操作系统。由于其独特的体系结构,QNX
广泛应用于嵌入式系统、机器人工程、工业控制、航空航天等各个领域。
   
在QNX中,线程是一个单一的控制执行流。从程序的最低层角度考虑,线程包括当前指令
位置指针(也称为计数器或PC)、栈顶指针(SP)和一些寄存器,而进程占据一定的内
存空间,是一个或多个线程的集合。在同一进程中的线程共享许多资源,在QNX系统中共
享的资源有:内存中储存在栈区以外的变量——即非局部变量;信号处理器;信号忽略屏
蔽字;通道——建立于服务器端;连接——建立于客户端,而在不同进程中的线程除了CPU之
外,几乎不共享任何资源。当然QNX提供了shm_open()函数来使不同进程中的线程共享一
段内存。
   
在早期的QNX版本如QNX4中,对于线程的支持是比较弱的,在当时的条件下,处理大型、
复杂的并发多任务问题时,常常将问题分解为多个进程以降低问题的复杂性。而且QNX提
供了与UNIX类似的进程间通讯IPC手段如消息、代理、信号灯等,功能也相对比较成熟、
完善。1999年以后
Q
QNX环境下多线程编程
本地下载

评论