QNX实时操作系统学习笔记之嵌入式系统(二)

QNX实时操作系统学习笔记之嵌入式系统(二)

BSP

一个BSP一般包括:IPL,startup,默认的buildfile,网络支持,具体开发板设备驱动,系统管理器,公用工程等。一般情况下BSP是以源代码的形式给出的,除非对源代码有限制的,只会以二进制形式给出。
一般把安装BSP的路径成为bsp_working_dir,包含以下子路径:src,prebuit,install,images.
—————————————————————————————————————————————————
images路径是最终boot images存放的地址,它包含了运行image(s)的makefile。这个路径中的其他文件包括了custombuildfiles(for flash等),EFS buildfiles,IPL build scripts。
prebuilt路径包含prebuilt二进制文件以及和BSP一起的头文件。在BSP被build之前,prebuilt路径中的所有文件都被复制到install路径中,包括路径结构。
install路径在BSPbuild过程的开始得到安置,prebuilt中所有的文件都被复制,所有产生的二进制文件在compile的同时都被安装到这。当mikifs执行的时候,install路径中的文件首先被使用。
——————————————————————————————————————————————-——
以上部分是在使用command来编译BSP的时候需要用的。

将OS镜像下载到开发板: 编译好OS镜像后,就要将它下载到开发板。可以用IDE通过串口将镜像下载,或者用TFTP网络接口,如果开发板没有ROM监视器,可能就不能使用IDE的下载功能。可以使用别的方式下载,例如JTAG
flash文件系统:flash文件系统驱动在NORflash存储设备上补充一个POSIX-like文件系统。对于不同的嵌入式系统硬件例如PCMCIA存储卡,有很多种 文件系统驱动的版本。命名方式是devf-系统名。例如devf-800fads驱动就是800FADS PowerPC评估板的驱动。
flash文件系统驱动支持一种以上的逻辑闪存驱动。每一种逻辑驱动成为一个socket,由相邻的同类闪存区域组成。例如,在一个在不同的地址中包含两种类型的闪存设备的系统,一个是用来启动镜像,另一个是flash文件系统,每一个闪存设备将会出现在不同的socket中。每个socket可能被分为一个或多个分区。QNX支持两种分区,裸分区(raw partitions)和flash文件系统分区。
裸分区是socket中不包含flash文件系统的任意分区,flash文件系统驱动不会识别除了flash文件系统的任何文件系统类型,一个裸分区可能包含了一个镜像文件系统或一些应用专用的数据。
flash文件系统分区包含了POSIX-like闪存文件系统,它用QNX专有的格式将文件系统数据保存在flash设备中。这个格式和MicrosoftFFS2或PCMCIA FTL规格是不兼容的。
flash文件系统允许文件和路径随意创建删除。它支持所有标准的POSIX公用工程,如ls,mkdir,rm,ln,mv,cp,也有一些用于管理flash文件系统的QNX Neutrino公用工程。
flashctl:擦除,格式化和列出flash分区。
deflate:压缩flash文件系统的文件。
mkefs:创建flash文件系统镜像文件。
flash文件系统支持所有标准的POSXI I/O函数,例如open()close()read()write().特殊的功能也是被支持的,例如擦除使用devctl().
flash文件系统源:每一个BSP包含了合适的flash文件系统驱动的二进制和源代码,但是QNX软件开发平台包含了相关了头文件和库文件。
如何创建一个分区:
启动flash文件系统驱动;
擦除整个flash;
格式化分区;
slay(杀死,杀戮)flash文件系统驱动;
重启flash文件系统驱动。
以下是Renesas Biscayne 开发板的例子,它可以从DMON或flash启动:
1.要从DMON开始启动,输入以下的命令启动flash文件系统驱动:
devf-generic -s0xe800000,32M &
2.要从flash启动,输入以下命令:
devf-generic -s0x0,32M
现在应该可以看到一个fs0p0入口在/dev下面。
3.要为分区准备区域,必须擦除整个flash。输入以下命令:
flashctl -p/dev/fs0 -ev
4.格式化分区,输入以下命令:
flashctl -p/dev/fs0p0 -f
5.slay flash文件系统驱动:
slay devf-generic
6.最后,重启驱动:devf-generic &
现在,可以看到以下入口:
/dev/fs0p0               OS镜像(32MB)
/dev/fs0p1               flash文件系统分区(32MB)

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: QNX是一种用于实时嵌入式系统的操作系统,有着高效、可靠的特点。QNX的使用手册可以帮助用户了解QNX实时操作系统的各种功能和用法,以让他们更好地管理和运营系统。 这本用户手册详细介绍了QNX实时操作系统的各个方面,包括系统基础知识、进程管理、内存管理、I/O设备管理、文件系统、网络协议等内容,并提供了丰富的实例和指导,使用户能够更轻松地实现各种功能。 在这本手册中,我们可以了解到QNX实时操作系统的优点,如其高效的多任务处理能力、内存保护机制、强大的网络支持等等。同时,手册也提供了详细的指导,包括如何创建和管理进程、如何使用消息传递机制、如何访问I/O设备、如何进行文件操作等等,让用户可以更加深入地了解QNX实时操作系统的使用技巧。 总之,QNX实时操作系统使用手册使得用户可以更好地了解和掌握QNX的各种功能和使用方法,以更加高效、可靠地实现嵌入式系统的运行。 ### 回答2: QNX实时操作系统使用手册是一本深入介绍该操作系统如何使用的重要书籍。QNX实时操作系统是一种嵌入式操作系统,被广泛应用在铁路、航空航天、医疗器械、工控设备等领域。 该使用手册主要介绍了QNX实时操作系统的基础概念、安装、配置以及开发应用程序的方法和技巧。手册不仅提供了详细的技术指导,还提供了丰富的示例代码和开发工具,帮助用户快速入门和提高开发效率。 在手册中,用户可以学习QNX操作系统的各种特性和功能,例如:实时性、可靠性、安全性、可扩展性等。用户可以了解到如何使用QNX系统调用实现进程管理、内存管理、文件系统管理等功能。此外,手册还提供了丰富的网络编程和设备驱动开发的介绍,让用户可以更好地掌握QNX实时操作系统的应用范围和技术特点。 总之,QNX实时操作系统使用手册是帮助用户深入了解和掌握这一操作系统的重要工具。用户可以通过其来学习和应用QNX操作系统,进而开发出优秀的嵌入式应用程序。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值