在某开发板上安装QNX系统,具体流程和一些问题记录下:
术语解释
- Initial Program Loader (IPL,感觉就是qnx自己做的uboot):http://www.qnx.com/developers/docs/7.0.0/#com.qnx.doc.neutrino.building/topic/intro/intro_ipl.html
- Image filesystem (IFS) : http://www.qnx.com/developers/docs/7.0.0/#com.qnx.doc.neutrino.building/topic/intro/intro_ifs.html
安装过程
- 采购QNX套件(挺贵)
- 在QNX官网查询该开发板对应的BSP文档
- 熟读BSP文档,按照里面的流程,一步步安装。(先装qnx software development platform 7.0 ==> 从software center里下载与板子对应型号的BSP,bsp中包含了image的buildfile,prebuilt的image,不同平台的lib库,等等)
- 步骤3会把image烧到一个sdcard中,把该sdcard插入到板子中,上电,即可qnx系统。
使用过程
-
ip配置:
刚开始,prebuilt image中没有把网卡驱动编进去,导致qnx插入网线后,dhcp模式,ifconfig无法获取ip。后来修改了buildfile,打开了网卡驱动,rebuild image,采用dhcp模式后,ifconfig可以显示动态获取的ip。 -
prebuilt image中有大量命令不存在,很多命令很可能是无法使用的(可能因为是嵌入式的bsp,预编译image支持的命令有限)。我额外添加了vim,测试可用。
-
不知道为何,我的文件系统是只读的,我没法操作任何文件,只能通过nfs把我的host文件系统挂载到qnx板子上(好在板子支持nfs),参考:
- http://www.qnx.com/developers/docs/7.0.0/index.html#com.qnx.doc.neutrino.utilities/topic/m/mount.html
- http://www.qnx.com/developers/docs/7.0.0/index.html#com.qnx.doc.neutrino.utilities/topic/f/fs-nfs3.html
开机的时候,先要在控制台键入fs-nfs3这个命令启动nfs服务,然后就通过mount命令把host的目录挂在到你想挂载的位置,这个位置你可以读写。
- http://www.qnx.com/developers/docs/7.0.0/index.html#com.qnx.doc.neutrino.utilities/topic/m/mount.html
-
我访问板子,有两种方式:
-
方式1,通过串口访问,通过putty等工具即可;
-
方式2,通过ssh或telnet访问,由于我板子不支持ssh,而默认支持telnet,因此我采用的是telnet的方式。
关于这块,请参考以下文章:- qnx telnet 登录开发板
-
Can’t use FTP or Telnet to connect to QNX
先在板子开启inetd进程,然后host即可通过telnet访问qnx板子。 -
qnx的ssh远程登录 (由于我板子也没有ssh相关的模块,所以也没尝试ssh方式登录)
ssh功能,需要确定以太网功能,配置sshd,配置**,开启ssh server
scp功能,其实就是ssh功能
telnet功能,默认的时候就是开启,直接使用即可。
-
常用命令
常用命令和ubuntu很类似,例如ls/cd/mkdir/等等,所有命令可以去qnx官网看文档
独特的有几个
- 例如pidin查看进程信息
- mount挂载到新的目录时,不需要自己新建目录,这条命令会帮你建立
问题记录
我的板子进入qnx后,整个磁盘都是只读的,不能建立文件夹,也不能创建/修改文件。这里还没弄清楚为什么。
参考:
总结
qnx任何问题都可以先去官网查找资料,官网的资料写的非常清晰,一看就懂