QNX快速入门指南.docx

上传人:b****1 文档编号:23288966 上传时间:2023-05-16 格式:DOCX 页数:14 大小:1.56MB
下载 相关 举报
QNX快速入门指南.docx_第1页
第1页 / 共14页
QNX快速入门指南.docx_第2页
第2页 / 共14页
QNX快速入门指南.docx_第3页
第3页 / 共14页
QNX快速入门指南.docx_第4页
第4页 / 共14页
QNX快速入门指南.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

QNX快速入门指南.docx

《QNX快速入门指南.docx》由会员分享,可在线阅读,更多相关《QNX快速入门指南.docx(14页珍藏版)》请在冰豆网上搜索。

QNX快速入门指南.docx

QNX快速入门指南

QNX快速指南

安装和配置QNXMomentics工具和QNXNeutrino操作系统,然后开发程序。

1要求

2安装QNXMomentics开发包

3安装QNXNeutrino实时操作系统

4与QNXNeutrino联网

5创建工程

6与QNXNeutrino联网

7编译和连接

8为运行程序做准备

9运行和调试

10将程序变为自己的程序

1要求

首先需要有QNXMomentics开发包,然后才能编写在QNXNeutrino实时操作系统下运行的程序。

你可以把它安装在windows2000、WindowsXp、Linux、或者是Solaris,等操作系统下面,也可以安装在QNXNeutrino系统下面。

如果你没有QNXMomentics的CD,可以在从网上下载它的镜像文件。

网址是:

除了开发系统,你还需要一个运行QNXNeutrinoRTOS系统的平台以及你将要开发的程序。

通常有两种方法来熟悉QNXNeutrino,在普通PC机上安装QNXNeutrino操作系或者是在参照的平台上运行QNXNeutrino,通常这个平台由CPU开发商设计。

由于QNX对所有的平台都采用相同的设计方法,而且使用方法页相同,因此在这个快速指南中我们使用PC机安装版。

同样,如果使用参考平台,那么你需要在这个平台里面安装QNXBoardSupportPackage(BSP)。

BSP中的文档解释了怎样在目标系统上安装QNXNeutrino。

使用另外一个PC可以加快进度——这太PC机甚至可以很老。

硬盘容量可以为300MB(如果你仅仅想要安装操作系统和必要的运行软件)但是如果你想要在QNXNeutrino系统里面安装开发环境,那么硬盘容量至少要2.5GB。

在另一个分区的Windows操作系统不会受到损害。

如果没有那么大容量的硬盘空间,也可以从CD上直接启动QNXNeutrino操作系统。

如果你没有QNXNeutrino的CD,可以从网上下载镜像文件。

网址是:

2安装QNXMomentics开发包

QNXMomentics中包含你想要开发运行在QNXNeutrino实时操作系统下运行的程序所需要的全部套件。

这其中包括扩展的集成开发环境(IDE),编译器,连接器,库,以及QNX支持的所有CPU架构的QNXNeutrino套件。

启动Windows2000或XP系统,插入QNXMomenticsWindowsHostCD。

如果安装不能自动进行,则只需要运行光盘上的qnxSetupWin32.exe.你将被指引着进行安装过程。

读安装注意事项可以得到更多的信息。

安装程序需要系列号,如果是从网上下载的光盘映像,则相应的序列号会通过邮箱发给你。

另外,在你购买QNXMomentics开发包的时候会得到序列号。

安装程序会要求你选择哪些元件,默认的是全部安装。

这里推荐全部安装,因为我们不知道需要哪些或是不需要哪些。

安装完成之后,会在Windows桌面上出项QNXMomenticsIDE的图标,以及一个HTML文件。

后者中含有关于QNXMomentics和QNXNeutrino的一些有趣信息。

最后要确保你从网站的下载重心安装了最新的QNXMomentics服务包。

3安装QNXNeutrino实时操作系统

在第二台机器的光驱中插入QNXNeutrinoCD然后启动机器。

此时,你可以选择直接从光盘上启动或者是把QNXNeutrino安装到硬盘上。

请选择在按转到硬盘上,然后继续屏幕上出现的安装步骤。

系统安装期间,需要选择是否要在Neutrino中安装软件开发包。

如果选择是的话,则完整的QNXMomentics开发环境将被安装到QNXNeutrino系统中。

然后你就可以在QNXNeutrino系统中直接进行开发编译和测试。

在重新启动之后,计算机会自动扫描硬件。

如果选择图形模式,则不用密码就可以直接进入。

在屏幕的右边可以找到图标栏。

从这里可以实现很多功能,比如点击“clicking”打开shell程序。

现在在你面前的是预配置的,并且具有完整的QNXNeutrino特点的实时操作系统,系统中包括QNXPhoton微图形用户接口的窗口系统(当然你也可以运行文本模式)。

同样要确保你从网站的下载重心安装了最新的QNXMomentics服务包。

通过“pidin”命令,可以查看目前在系统中存在的进程。

每一个进程都具有可选择性,这也就意味这在你以后的设计中,你可以移除进程来节省资源,或者添加其他进程来增加系统的功能。

这同样适用于图形,网络和视频;每一个QNXNeutrino组件都是一个单独的进程,可以动态的加载。

通过你刚才创建的QNX安装过程,你可以很快的熟悉QNX的功能和特点。

这些都不需要你亲自指定或者启动映像。

4将QNXNeutrino联入网络

现在将你的QNXNeutrino机器(目标计算机)联入网络。

你的开发机应该在同一个网络中。

通过DHCP服务,你的QNXNeutrino机器将会自动收到一个IP地址。

你可以通过使用ifconfigen0命令进行查看。

在终端窗口中,使用ifconfigen0IP_address来手动分配IP地址(用你想要分配给你的系统的IP地址替换原来的IP地址)。

另外,你可以使用与QNXNeutrino安装同时到来的网络配置工具。

可以在屏幕右侧的图标栏找到“Configue”这一项,或者是“Launch”菜单。

在“Devices”下,可以选择使用DHCP或手工分配IP地址。

在网络中输入网关和DNS的IP地址。

使用“pingIP_address”命令,你可以检查你的开发机器(主机)可以连接到网络中的QNXNeutrino系统,同时目标机器也可以连接到主机。

注意:

如果主机中使用防火墙,那么你可能连接不到目标机器。

在WindowsXPSP2中,你需要在ICMP设置中使能“Allowincomingechorequest”,在开始菜单中选择控制面板,然后选择安全中心,之后选择高级标签。

如果网络不能正常工作,你可能正在使用一个不支持的网卡。

对于能支持网卡的清单,访问

提示:

Neutrino全性能安装使用自动硬件检测来启动相应的硬件驱动。

使用“enum-devices-n”可以看到检测器检测到了哪些硬件,以及在启动过程中开启了哪些驱动。

5创建程序

在开发主机上,打开QNXMomenticsIDE。

创建一个QNXC项目。

“File”->“New”->“QNXCProject:

在弹出的对话框中,命名工程,并点击“Next”。

下一步,为你要创建的二进制文件选择CPU框架。

如果目标机为PC机,选择x86.对于其他处理器上的工程,选择对应的CPU类型:

PPC,SH4,ARM,或者是MIPS。

点击“finish”.

经过上述步骤,一个带有“makefile”的项目框架变的可用,其中包含一个小程序(“HelloWorld”),你可以在自动生成的源代码文件中找到这个小程序。

现在,进入IDE的C/C++界面。

这个界面有众多特点。

包括,指引,编辑器,以及其他有用的界面和显示与目前项目有关信息的区域。

6与QNXNeutrino通信

你的目标系统应该能够对开发环境的请求进行相应。

可以通过开始“qconn”程序,达到这一目的。

在运行QNXNeutrino的PC机上,可以通过终端窗口做。

通过创建一个目标工程来连接目标系统。

打开“SystemInformationPerspective”在“Window”菜单中选择“OpenPerspective”,然后单击“Other”。

选择“QNXSystemInformation”,点击“OK”。

在控的“TargetNavigator”视图中,单击右键,选择“AddNewTarget”.

为你的目标系统命名,然后在相应的区域输入其IP地址。

点击“Finish”。

然后你会看到在你的QNXNeutrino系统中运行的进程的清单。

其他的视图提供一些信息。

在“ShowView”下的“Window”菜单,你甚至可以发现更有用的视图。

7编译和连接

有多种方法可以回到C/C++视图:

在显示的右上角的的下拉菜单中选择“C/C++视图”。

或者按下Ctrl键,重复按F8直到弹出菜单“C/C++”变为高亮,然后释放这两个键,又或者选择“Window”->“Navigation”->“NextPerspective”然后从弹出菜单中选择“C/C++”.

在编译之前,你可能需要设置编译是否需要调试信息。

通过右击项目名,然后选择“Properties”可以达到z这个目的。

点击“QNXC/C++Projects”,点击“BuildVariants”,之后点击“x86”后面的小加号。

默认情况下编译会给出调试信息。

如果不想这样的化,可以选择不带调试信息的编译。

在QNXC项目创建的过程中,还生成了一个带有“Makefiles”的QNX目录结构。

现在生成二进制文件,右击项目名称,选择“BuildProject”。

编译器和连接器会自动做其工作。

在“Console”视图的“C-Build”输出中,会出现编译器输出,包括出现的错误。

然而,如果在编译过程中出现错误,你会发现错误视图会很有用,因为它会将编译器的输出以集成的以及更易读的形式显示。

如果你将指针放到错误上时,编辑器也会给出错误信息。

在编译完成后,二进制文件被放入“Binaries”文件夹。

物理上,它们位于CPU目录中的O和o-g下。

IDE自动创建相应的Makefiles。

QNX库“libc.so”在默认情况下,动态连接到你的二进制文件(库中含有很多基础的函数)。

如果你想在此后添加其他的库,可以通过“Project”->“Properties”。

在此,点击“Linker”然后在“Category”中选择“ExtraLibs”。

点击“Add”,然后输入库的名字,不用输入名字的前缀和后缀。

例如,如果想要添加数学运算库“libm.so”,你只需要在“Name”区域输入m..

点击“OK”。

连接器将在你编译程序时自动连接到该库。

8为运行程序作准备

需要首先建立一个运行设置,然后才能在目标机上编译和运行你所创建的程序。

包括设置能影响程序启动的各种变量(例如:

命令行参数,环境变量等)。

这些变量只需设置依次,然后就能反复的使用。

现在设置你自己的运行环境:

在“Run”菜单喜爱,选择“Debug……”。

然后打开一个窗口,你可以启动已经存在的设置,或者对应经存在的设置进行更改,甚至新建一个。

在窗口的左边,选择设置的类型“C/C++QNXQCnn(IP)”。

这种模式意味这使用基于网络的开发环境,从机上运行QNXNeutrino系统。

点击“New”创建一个新的运行环境。

现在你将不得不做出与你即将运行的程序有关的多项配置。

默认情况下,只有“Main”项需要你的输入。

当然,你也要了解其他的标签提供何种功能。

紧接着“C/C++Appplication”,点击“Search”按钮然后选择将要运行的二进制文件。

如果你在编译的时候选择了编译信息,那它会出现一个“bug”小标记。

相反的,如果没有选择编译信息,那么则会出现“runningman”标志。

因为我们要在接下来的过程中运行调试,,因此,此处选择带有调试信息的二进制文件。

在“TargetOpition”下,选择你的目标系统,然后点击“Apply”,设置完成。

9运行及调试

现在,屏幕上可能仍在显示运行设置对话框。

之前已经为运行做了设置,此时可以在调试器中运行。

点击“Debug”。

IDE转换到“Debug”视图,同时将你的程序从开发机通过网络传到目标的QNXNeutrino系统,然后开始调试。

这时,调试器将停滞在程序的第一行。

在Debug视图中,你会看到所有进程的概况,包括调用栈。

在Debug视图中使用主工具条,可以控制调试。

使用“StepOver”按钮,跳到代码的下一行

在调试的过程中,可以通过右边的“Variables”视图查看程序中变量的变化。

使用“StepInto”按钮,让调试跳到函数中的代码(当然,只有在你的源码中含有这个函数的代码才有用)。

将鼠标指针放到源码现实的左边框,点击右键从弹出的快捷菜单中选择“ToggleBreakpoint”,从而设置断点。

断点以一个小的指针显示,当然也可以在写代码时添加或移除断点。

当程序运行到断点时,运行停止,这时你可以检查变量。

点击“Resume”按钮,程序继续运行,知道遇到下一个断点。

点击“Terminate”按钮,停止程序的运行。

程序运行完成后,点击“RemoveAllTerminatedLaunches”停止调试,同时将二进制文件从目标系统中删除。

 

如果运行没有调试器的程序,再次使用“Run”菜单,但这次不是点击“Debug……”,而是点击“Run……”。

然后点击“launchconfiguration”运行程序。

或者是重新配置运行环境,然后选择没有调试信息的二进制文件。

也可以使用系统信息视图的文件系统指引来传送文件(Window>ShowView)然后从终端启动程序。

安装共享的网络驱动同样可以完成这一目的。

10将程序变为你自己的程序

可以通过更改和扩展之前创建的程序将这个过程变成你的第一个QNX程序。

利用一些典型程序,然后把代码复制到工程中。

既然,你已经开始了你的QNX旅程,你一定想要得到更多信息,例如,怎样创建自己的线程,QNX的消息传递机制是怎样进行的,系统采用了哪一种进程同步机制,怎样得到IO的控制权,怎样建立QNXNeutrino资源管理器。

不过不用担心,所有的这一切都和你刚才体验的快速入门一样简单。

“WelcometoQNXMomentics”指南可以帮你找到你所想要的信息。

我们推荐浏览“QNXNeutrinoSystemArchitectureGuide”(QNXNeutrino系统架构指南),“IDEUser’sGuide”(IDE用户手册)以及“QNXNeutrinoProgrammer’sGuide”(QNXNeutrino程序员指南)。

在“Help”菜单下,点击“HelpContents”。

在帮助窗口,选择“QNXMomenticsProfessionalEdition”。

单击位于屏幕右侧的图标栏的“help”,可以在装有Neutrino的机器上查看文件资料。

经常使用“search”功能会很有帮助。

当然你也可以找到打印版的帮助文档。

给出的例子覆盖了线程创建,互斥的使用,消息传递以及其他的进程间通信的方式。

在ftp服务文件ftp.qnx.de中还可以找到资源管理器的模板。

作为FTP客户登陆,可以下载源码包。

用户名是“qnx”,密码是“qnx!

nettrino”。

内容包括一个“ReadMe”文档,它展示了怎样把源码导入到QNXMomenticsIDE。

源码中还有许多扩展的内容,怎么做等等。

如果你对一个函数感兴趣,可以在“Helpviewer”中找到帮助文档。

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 职业教育 > 中职中专

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1