安卓开发板烧写程序与安装软件的区别_向开发板文件系统烧写程序(RAMDISK与JFFS2等)...

添加自己的程序或文件到板子的文件系统

首先,所谓文件系统就是用户程序和文件的集合,在LINUXPC机上放到一个统一的目录下,然后通过一个工具打包成一个image文件,这通常是个压缩的过程。然后烧制到板子上后,LINUX内核启动完成后,会逐个挂接这些文件系统映象文件并做解包的工作,当然第一个挂接的就是rootfs了,有了rootfs并提供了SHELL之后,就可以通过mount这个SHELL命令来挂载其它FS了。

所以,若用户要添加自己的程序到文件系统的image里面去,就是把自己的程序或文件复制到这个FS在PC LINUX上的目录里面去,然后重新打包生成image,这样你的东东就加进去了,以后就是下载和烧写的问题了。

那么具体在做“把自己的程序或文件复制到这个FS在PC LINUX上的目录里面去”这个步骤的时候,不同的文件系统就略有区别了:

例如您的程序是一个可执行程序hello,放在/目录下面:

对于RAMDISK:

它是要先在PC上解压到一个目录上的

mkdir /mydir

mount –o loop ramdisk.image /mydir

cp /hello  /mydir

umount mydir

gzip ramdisk.image

这样就加入了

对于JFFS2,则不要解压原有的jffs2.img,而是直接往原来的目录里面添加即可:

注意:下面的这个jffs2_dir是你的软件包里面原来就有的,例如HHARM9-EDU就是

/HHARM9-EDU/Images/backup/jffs2目录,这个目录里面原来就有我们默认添加的一些文件和目录,你只要把自己的程序复制进去即可。

当然了,若你的软件包里面没有提供我们原来的这个目录,那也没关系,您完全可以自己重新

mkdir  /jffs2_dir

这样做就是你新做的jffs2.img里面除了你刚刚添加的hello外没有任何目录和文件,而这完全可以工作,启动后自己添加即可。

mkfs.jffs2 -d  /jffs2_dir  -o  jffs2.img

这个mkfs.jffs2工具是要额外提供的,如果您没有,可发信索取。

对于CRAMFS:

和JFFS2完全相同的做法,你也完全可以自己

mkdir /cramfs_dir

mkcramfs /cramfs_dir cramfs.img

当然了,和JFFS2不同的是,它是只读的,你在PC机上添加了什么,到板子上就只能有什么,不能再动态创建目录和复制进去文件了,要添加必须重做cramfs.img烧   写到FLASH上才行。

这个mkcramfs的工具是REDHAT LINUX自带的。

对于uClinux上用的ROMFS:

genromfs -v -V "ROMdisk" –f romfs.img –d romfs_dir

当然了,这个romfs目录是任何一个uClinux-dist包里面都会默认带有的目录。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值