ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

17、高通8155座舱平台--QNX开发基础

17、高通8155座舱平台--QNX开发基础 17.1 QNX Momentics IDE:这个IDE说白了就是QNX的官方开发环境。它基于Eclipse,但做了大量针对性的定制。我个人习惯,拿到一个新板子,第一件事就是打开IDE,建一个空的QNX项目,然后跑一遍Hello World。为什么?因为这是验证工具链最快的方式。我的小技巧:在创建项目时,记得选对Target。如果你用的是高通8155,那Target一般是aarch64le。选错了,编译出来的二进制跑都跑不起来。IDE里最常用的几个视图:Project Explorer:项目文件管理,没啥好说的QNX System Information:这个很实用,能实时看CPU、内存、进程状态Debug:调试视图,支持多核调试,我经常用它来追死锁问题要注意一点。IDE自带的编译器是qcc,它其实是gcc的封装。你可以在编译选项里加各种gcc的参数,但有些QNX特有的选项,比如-Vgcc_ntoaarch64le,这是指定目标架构的,别搞混了。17.2 进程间通信(IPC):QNX的灵魂QNX的IPC机制,可以说是它最牛的地方。为什么?因为它是微内核架构,所有服务都是独立的进程。进程之间怎么通信?全靠IPC。QNX支持好几种IPC方式,我挑最常用的三个讲:17.2.1 消息传递(Message Passing)这是QNX IPC的核心。说白了就是两个进程之间互相发消息。一个叫发送端(Send),一个叫接收端(Receive)。举个例子,在8155上写一个音频服务,它需要跟硬件驱动通信。用消息传递,代码大概是这样的:// 服务端(接收消息) int chid = ChannelCreate(0); // 创建一个通道 int rcvid = MsgRece
返回列表