qnx
文章平均质量分 60
keyboardOTA
喜欢技术挑战
展开
-
理解APCS-- ARM过程调用标准
因为需要在QNX Momentics中混合C语言和ARM汇编进行开发,于是初步了解了一下APCS。和大家分享一下我自己的学习过程,然后通过一个形象一点的类比讲述我自己的理解。 刚开始的时候我是不知道有APCS这回事,所以第一次从C语言中调用ARM汇编函数的时候返回就出错了原创 2011-09-22 00:15:58 · 15781 阅读 · 12 评论 -
如何在BlackBerry PlayBook NDK 2.0环境中使用Cocos2dx
从高手那里了解到Cocos2dx现在可以支持BlackBerry PlayBook了,于是拿PlayBook NDK 2.0环境测试了一把,效果非常好,2D游戏需要的很多功能都有实现,真的是PlayBook开发利器。 下面是测试的基本过程,供各位参考。 首先应该先去Cocos2dx的网站上去看一下,网址如下:http://www.cocos2d-x.org/ 其中有一篇文章是讲如何在BlackBe原创 2012-02-07 00:03:19 · 3267 阅读 · 1 评论 -
PlayBook NDK上的多线程编程
测试了PlayBook NDK上编写的控制台程序后,马上想进一步测试的就是PlayBook NDK上的多线程编程。经过测试很开心地发现PlayBook NDK上进行多线程编程和之前的QNX编程环境是相同的。也就是说在程序中可以简单地调用pthread_create方法实现线程的创建。 如此简单的事情就不再啰嗦了,直接上代码,供各位参考:#include #include #include原创 2011-11-04 00:04:56 · 4089 阅读 · 5 评论 -
最简单的PlayBook NDK应用
运行了PlayBook NDK上的样例后,有一个的想法就是看看怎么用C写一个最简单的PlayBook NDK 应用,主要是抛开复杂的事件处理和界面展现,将注意力集中在最简单的应用上。 想到最简单的应用,无外乎就是通过控制台输出一个“Hello World”,于是马上动手写一个控制台输出的PlayBook NDK 应用。 在NDK环境里创建一个BlackBerry Tablet项目,在项目类型选择时原创 2011-11-02 10:26:07 · 3074 阅读 · 1 评论 -
BlackBerry PlayBook NDK 官方样例介绍。
在PlayBook NDK环境中可以通过导入样例的方式创建新项目,所创建的项目中会包括样例的源代码和相关配置文件,开发人员可以直接进行测试,是很好的PlayBook NDK 开发入门资料。现在的样例不多,只有四个,分别是:“Hello World ” “Falling Blocks” “Good Citizen”和“Play Wav”。 首先简单讲一下样例导入的方法:1. 在PlayBook ND原创 2011-11-02 00:04:27 · 4645 阅读 · 5 评论 -
下载安装BlackBerry PlayBook NDK 开发环境
等待了很长时间,BlackBerry PlayBook的原生开发工具PlayBook NDK终于在在BlackBerry Dev Con上发布了。如大家所知,BlackBerry PlayBook的操作系统是QNX(现在叫做BBX)。所以,PlayBook NDK,PlayBook的本地开发工具,相当于就是PlayBook的c/C++开发工具,可以直接访问底层资源,令我等技术控很是期待。既原创 2011-10-24 00:03:08 · 3503 阅读 · 0 评论 -
BlackBerry PlayBook NDK上的第一个应用
安装了BlackBerry PlayBook NDK后,开始开发第一个PlayBook NDK应用, 相当于NDK的HelloWorld。整个过程仅仅是使用了NDK开发环境的向导,不需要进行c或者C++的编码,不管是否熟悉c/C++,都可以轻松完成这个HelloWorld应用的创建。 下面是具体过程: 1. 创建项目点击“File -> New -> BlackBer原创 2011-10-24 15:11:43 · 3055 阅读 · 0 评论 -
有关QNX和BBX
在BlackBerry Dev Con上,BlackBerry官方宣布了BBX的名字,BBX是BlackBerry PlayBook和BlackBerry未来其它设备的操作系统,前身就是QNX。作为一个技术人员,其实我对名字的变化不是很敏感。取个好名字固然重要,最关键的还是操作系统本身。当然,为了和官方统一,本博客后面也将使用BBX的名称。 顺便说开去的就是有关BBX未来发展的遐想(或者说原创 2011-10-24 01:06:00 · 3829 阅读 · 10 评论 -
为Android开发环境安装BlackBerry PlayBook插件
为了让Android开发人员可以快速地将Android应用发布到PlayBook上,BlackBerry官方发布了PlayBook的Eclipse插件,可以将这个插件安装到Android的Eclipse开发环境中,让Android开发人员可以直接在Android开发环境中生成PlayBook应用。 如之前提到的,将Android应用转换成PlayBook应用有三种方式:通过网页应用原创 2011-10-21 00:22:51 · 3281 阅读 · 0 评论 -
如何将Android应用移植到BlackBerry PlayBook上。
美国西部时间18号早上,也就是我们的19号凌晨,BlackBerry DevCon活动隆重举行,PlayBook 2.0开发测试版随之发布。PlayBook 2.0的一个重要功能就是支持Android应用。那么,如何将Android应用移植到PlayBook上呢?我自己测试了一下,成功在PlayBook上运行Android应用,下面我们来看看具体的方法。 因为PlayBook 2.0上带有原创 2011-10-20 00:05:45 · 11773 阅读 · 8 评论 -
QNX多线程同步之Barrier(屏障)
之前和大家介绍过QNX上的线程同步方法metux和semophore,通过这两种方法可以对一个或者几个资源进行加锁,避免资源使用上的冲突。在另一种情况下,某个线程需要在其它线程完成工作后才继续执行,这时就需要使用到线程同步方法barrier。 举个现实的例子,假设有三个士原创 2011-10-12 18:16:20 · 4248 阅读 · 3 评论 -
在BlackBerry上使用OpenGL绘图(十二):光照
12光照光照在3D世界中非常重要,在不设置光照的情况下很多模型都无法体现它的真正体积。在OpenGLDemo样例中,当立方体旋转时我们可以看到立方体不同面的明暗效果,这就是光照的作用。 要在OpenGL中使用光照,首先要启用光照支持。启用光照支持同样是通过调用glEn原创 2011-09-27 14:10:39 · 2615 阅读 · 0 评论 -
在BlackBerry上使用OpenGL绘图(汇总)
为了方便大家阅读,现在将《BlackBerry上使用OpenGL绘图》一文的所有章节汇总起来,点击链接可以直接访问。 BlackBerry上使用OpenGL绘图在BlackBerry上进行图像相关的编程有很多方式,开发人员可以通过Graphics编程接口在屏幕上完成复原创 2011-09-27 14:20:13 · 2180 阅读 · 0 评论 -
在BlackBerry上使用OpenGL绘图(十一):纹理数组
11 纹理数组现实世界中的物体由不同的材质组成,表面可能会有不同的花纹,这些特性在模拟的3D世界中无法通过简单的平面实现。为了更好地在3D世界中模拟现实物体,设计人员引入了纹理的概念,主要思路是通过2维图片绘制类似于某种材质表面的图像,然后将2维图片贴附在平面上,形成与现实物原创 2011-09-27 14:06:59 · 4538 阅读 · 1 评论 -
在BlackBerry上使用OpenGL绘图(四):顶点数组与法向量数组
4 顶点数组与法向量数组我们分析样例的目的是希望了解样例中各部分代码的作用以及它们之间的关系。而实现这一目的的有效方法是对样例进行简化,解析出其中最基本的语句,并分析它们的用法。 从样例的运行结果我们知道OpenGLDemo显示了一个转动的立方体,在立方体的表面还有黑原创 2011-09-23 22:40:29 · 3824 阅读 · 0 评论 -
在BlackBerry上使用OpenGL绘图(十):视口变换
10 视口变换相对于以上变换,视口变换更为简单一些,视口变换最终决定显示出来的图片大小。视口变换类似于冲印的照片底片后最终决定放大还是缩小照片,还决定照片放在相框的哪个位置。 视口变换通过方法glViewport实现,该方法接受四个参数,第一个参数和第二个参数指定图片原创 2011-09-26 11:16:10 · 2566 阅读 · 0 评论 -
BlackBerry PlayBook NDK 2.0 使用Cocos2dx详细步骤
昨天写完如何在PlayBook NDK 2.0环境中使用Cocos2dx的文章后,几个网友都想知道详细步骤,下面将配置过程的截图传上来,配上简单的说明,希望可以帮助大家快速搭建环境,同时也为自己保留一个详细的记录,免得下次配置的时候忘了。 和上文相同,有关PlayBook NDK 2.0的环境配置以及签名工具的安装就不再讲述了,有关Cocos2dx的代码下载过程也略了。现在假设大家已经安装好Pla原创 2012-02-07 17:33:53 · 4989 阅读 · 6 评论 -
在PlayBook NDK中创建自己的Cocos2dx项目
之前的文章讲述了BlackBerry PlayBook NDK 2.0环境中配置Cocos2dx的详细过程,今天继续分享PlayBook NDK环境中的项目创建过程。 在下载解压的cocods2dx目录中,有一个vbs文件叫做create-qnx-project.vbs,在Windows环境中双击执行这个文件可以创建一个自己的cocods2dx项目。执行过程中会提示你输入项目名称,执行完成后会在v原创 2012-02-09 15:10:23 · 3264 阅读 · 2 评论 -
BlackBerry PlayBook NDK 2.0环境中Debug Token的使用。
如之前提到的,在BlackBerry PlayBook NDK 2.0环境中开发PlayBook应用需要申请签名并在NDK环境中进行配置。当应用程序需要在PlayBook真机上测试时需要对应用进行签名,否则应用无法启动。不过对于开发测试过程而言,每次测试都要签名的话比较麻烦,不利于测试。这时可以使用NDK环境中的Debug Token。使用Debug Token的话NDK环境会创建一个bar文件,原创 2012-03-16 16:18:04 · 2563 阅读 · 2 评论 -
BlackBerry PlayBook NDK 2.0开发使用真机测试Qt应用
前几天将BlackBerry PlayBook NDK 2.0上使用Qt的详细步骤记录了下来,不过当时是使用PlayBook模拟器测试的。这几天因为需要在PlayBook真机上测试Qt应用,于是又配置了一遍PlayBook NDK上的Qt环境,不过这次是真机环境。因为PlayBook 模拟器使用的是X86架构,而PlayBook真机是ARM架构,所以两个环境的配置过程有一点不一样。下面记录Qt真机原创 2012-03-14 22:18:45 · 3102 阅读 · 2 评论 -
安装Skyeye学习ARM汇编
对于希望学习ARM汇编的同学而言, 购买ARM开发板进行板上实测无疑是一个有效的方法,不过购买ARM开发板需要一笔费用,而且每次测试都需要连接开发板,比较麻烦。如果有一个ARM的模拟器就好了,抱着这样的想法在网上找了一下,发现了Skyeye,还是我们中国人开发的。通过Skyeye,可以直接在一台PC上完成ARM汇编的开发调试工作了,摆脱了ARM开发板的限制,真是不错! 不过,开始介绍Skyeye安原创 2011-10-12 00:06:00 · 5610 阅读 · 3 评论 -
从头开始为BeagleBoard编译Android系统
折腾了几天,终于将Android系统编译好,成功运行在BeagleBoard上。为了让大家可以更快上手,将整个编译过程详细记录下来,供大家参考,其中有几个容易出问题的地方列出了解决方法,可以少绕弯子。 最开始为BeagleBoard编译Android系统时,准备按标准的做法从android.git.kernel.org下载repo,然后通过repo从kernel.org下载Android源码。但是原创 2011-10-09 00:01:48 · 13093 阅读 · 12 评论 -
在BeagleBoard上运行QNX系统(总结)
为了让同学们更好地了解在BeagleBoard上运行QNX系统的方法,我将前几天的工作总结了一下。需要完成的主要步骤如下: 1. BeagleBoard的准备:首先是准备好BeagleBoard和周边的设备。 我个人使用的是BeagleBoard XM Rev C,然后再加Chipsee 的BeagleBoard XM 扩展板。如果同学们使用的是BeagleBoard XM Rev B或之前的版本原创 2011-09-13 11:50:41 · 12346 阅读 · 21 评论 -
在BeagleBoard上运行QNX系统(二)
在BeagelBoard上成功运行QNX系统后,本以为可以很快开始进一步的学习,没想到遇到麻烦的问题。又经过几天的努力才把问题弄清楚,下面继续记录折腾过程。 第一次成功地在BeagleBoard上运行QNX系统后首先注意到的问题是QNX系统不能够自动启动,需要在串口上运行装载ifs文件的命令才能启动。针对这个问题,需要研究一下u-boot如何自动装载系统影像文件。 发现的第二个问题更严重一些,就是原创 2011-09-13 09:44:24 · 7697 阅读 · 5 评论 -
在BeagleBoard上运行QNX系统(一)
折腾了好几天,终于成功在BeagleBoard上运行QNX系统,如果说在BeagleBoard上运行Android费了一些手脚的话,在BeagleBoard上运行QNX可以说是费尽周折。秉承本博客的主旨,将折腾过程记录下来,供各位同学参考,以后可以少绕一些弯子。 为了在BeagleBoard上运行QNX系统,我参考了一些书和网上的资料,同时将制作Android系统的sh文件打开仔细读了一下,得出原创 2011-09-12 10:10:37 · 6386 阅读 · 3 评论 -
在BeagleBoard XM 开发板上运行Android
虽然购买BeagleBoard的最终目的是想在上面运行QNX系统,不过既然BeagleBoard板支持Androind而且ChipSee在附带的关盘里提供了Android系统,就先运行测试一下吧。 在BeagleBoard上运行Android就不像运行WinCE那么简单了,因为附带的测试SD卡里没有部署好的Android系统,需要自己做一张有Android系统的SD卡。 和大家分享一下我自己制作A原创 2011-09-09 09:59:53 · 4956 阅读 · 1 评论 -
Ubuntu上PlayBook NDK 2.0链接无法工作的问题。
在真机上安装了Ubuntu后随即在上面安装了PlayBook NDK 2.0环境,安装过程就不详细讲了,需要了解详细步骤的同学可以参考我好友berryreload的教程,链接如下:http://blog.csdn.net/berryreload/article/details/7315665正如berryreload提到的,按照标准过程安装好了PlayBook NDK 2.0环境后,home目录下原创 2012-03-13 16:26:31 · 2049 阅读 · 0 评论 -
BlackBerry PlayBook NDK 启动时出现“License check failure”错误的解决方法。
在BlackBerry PlayBook NDK 2.0环境安装好后,因为环境变量设置的原因,有时NDK 2.0启动时会出现“License check failure”的错误,系统弹出以下窗口,窗口关闭后会发现编程环境中没有BlackBerry相关的菜单项。 因为窗口信息中有“license”相关的字样,有些人会以为是软件过期了不能使用。其实这个错误是因为环境变量没有设置好导致的一个误报,错误原原创 2012-03-10 23:33:22 · 2937 阅读 · 0 评论 -
BlackBerry PlayBook NDK 2.0样例分析之“HelloWorldDisplay”
分析了“HelloWorldConsole”样例和PlayBook NDK的事件处理机制后让我们来看看PlayBook NDK中的第二个样例“HelloWorldDisplay”。 样例“HelloWorldDisplay”就是之前NDK Beta中的“HelloWorld”样例,之前的博文也介绍过,程序启动后在屏幕上显示一张底图和“HelloWorld”字样。既然我们已经开始理解PlayBook原创 2012-03-07 00:06:24 · 2760 阅读 · 4 评论 -
BlackBerry PlayBook NDK事件循环与事件处理
PlayBook上的应用为用户呈现的是一个窗口系统。虽然平板电脑上的窗口系统和PC上的窗口系统有一些差别,但是其本质是完全相同的:应用程序再设备上展现一个图形窗口,然后等待用户动作,当用户动作发生时窗口会相应地作出响应。在这样一个窗口系统中,事件的处理是其中的关键,程序启动后进入一个事件循环,等待用户事件的发生,当用户事件发生时调用对应的处理函数,完成对用户事件的响应。在很多窗口系统中,事件循环是原创 2012-03-06 00:01:42 · 2869 阅读 · 3 评论 -
BlackBerry PlayBook NDK 2.0已经正式发布。
经过几个月的beta测试后,BlackBerry PlayBook NDK 2.0已经正式发布了,对PlayBook 本地开发有兴趣的同学们快去下载! 在这个版本的NDK中加入了大量的样例,更加完整地介绍了PlayBook开发过程中会遇到的关键点,如虚拟键盘的处理,网络的处理等等。 2.0版本下载地址如下:https://bdsc.webapps.blackberry.com/native/dow原创 2012-03-04 22:02:54 · 1682 阅读 · 0 评论 -
BlackBerry PlayBook NDK 2.0样例分析之“HelloWorldConsole”
如上一篇博文提到的,BlackBerry PlayBook NDK 2.0正式版已经发布了,在该版本中增加了很多样例,不再是以前的4个简单样例。其中吸引我的包括样例“HelloWorldConsole”,这是一个真正的“Hello World”,程序非常非常简单,只是在控制台输出一个“Hello World”字样。个人认为这种“Hello World”可以让初学者对于程序的运用过程有一个最简单的认原创 2012-03-04 22:32:41 · 1994 阅读 · 0 评论 -
PlayBook NDK编程如何获取系统时间
开始PlayBook NDK编程,在发现前所未有的发挥空间之余,同时也发现底层工作需要考虑越来越多,这个世界就是充满着矛盾结合体。 其中的一项底层工作就是如何获取系统时间。 在PlayBook NDK中可以通过系统定义好的头文件引入时间相关的函数,include代码如下:#include 该头文件中定义了clock_gettime函数用于获取当前时间,定义如下:extern int cl原创 2012-03-05 09:50:17 · 5122 阅读 · 0 评论 -
在BlackBerry上使用OpenGL绘图(八):模型的运动
8 模型变换:模型的运动在OpenGL ES中,对模型的变换主要有移动、伸缩和旋转三种,分别对应方法glTranslatef、glScalef和glRotatef三个方法。 glTranslatef方法用于模型的平移,接受三个参数,分别对应X、Y和Z轴上的移动值,正数原创 2011-09-26 11:10:34 · 3145 阅读 · 0 评论 -
在BlackBerry上使用OpenGL绘图(七):视图变换:观察点的运动
7 视图变换:观察点的运动对视图的操作主要表现为对观察点的操作,形象的比喻就是在3D世界中摆放“相机”,你可以指定“相机”的位置,也可以指定“相机”镜头的朝向,还可以指定“相机”机身的朝向。在OpenGL中,开发人员可以通过gluLookAt方法设置观察点,不过在标准的Ope原创 2011-09-24 21:32:50 · 3333 阅读 · 0 评论 -
QNX 中的线程休眠
在多线程环境中,经常会需要让一个线程等待一段时间。象我这样之前使用java编程的人第一时间想到的当然是sleep()方法,因为它使用很方便。在QNX环境中也有sleep()方法,调用方式也很简单,在sleep()方法中传入一个整型参数就好了,如:sleep(10);以上方原创 2011-09-08 11:39:33 · 3133 阅读 · 0 评论 -
QNX Momentics里Target File System Navigator 视图的使用。
有关如何将编译好的文件上传到QNX虚拟机上,前两篇博文提到了两种方法,一种是使用FTP将文件上传到QNX虚拟机,另一种是通过QNX Momentics的运行设置,使应用在测试之后留在目标虚拟机上。看了上面提到的博文后,有网友告诉我说可以使用QNX Momentics里的Tar原创 2011-09-08 09:50:36 · 4131 阅读 · 1 评论 -
通过QNX Momentics直接将程序上传到QNX虚拟机上
昨天写了博文讲述如何通过FTP将编译好的程序上传到QNX虚拟机上,过程比较复杂,今天就发现原来有更好的方法。 在QNX Momentics环境中,可以通过“Run -> Run Configuration”配置运行目标,这个在之前的博文提到过。今天发现在配置运行目标页面中原创 2011-09-08 09:34:32 · 4912 阅读 · 4 评论 -
将QNX应用上传到QNX虚拟机上
已经完成了第一个QNX应用的开发和测试,进一步需要将应用直接上传到QNX虚拟机上运行。 我猜想QNX Momentics应该有工具直接进行部署,不过找了一轮没找到,就决定使用最笨的办法:FTP 先从我的WIN 7 CMD命令行窗口通过FTP命令进入FTP界面,输入原创 2011-09-07 21:43:13 · 6640 阅读 · 5 评论 -
QNX Neutrino 命令手册,“使用宝典”!
因为QNX开发调试需要一些QNX Neutrino操作,所以进一步熟悉一下QNX操作,发现QNX官网上有完整的命令手册,真是如获至宝,官网文档网址如下,找其中的《QNX Neutrino Utilities Reference》。http://www.qnx.com/down原创 2011-09-07 15:32:40 · 5753 阅读 · 2 评论