Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2062529
  • 博文数量: 610
  • 博客积分: 11499
  • 博客等级: 上将
  • 技术积分: 5511
  • 用 户 组: 普通用户
  • 注册时间: 2008-03-12 19:27
文章分类

全部博文(610)

文章存档

2016年(5)

2015年(18)

2014年(12)

2013年(16)

2012年(297)

2011年(45)

2010年(37)

2009年(79)

2008年(101)

分类: LINUX

2008-03-30 23:58:48

    CSDN Blog推出文章指数概念,文章指数是对Blog文章综合评分后推算出的,综合评分项分别是该文章的点击量,回复次数,被网摘收录数量,文章长度和文章类型;满分100,每月更新一次。
添加自己的程序或文件到板子的文件系统

        首先,所谓文件系统就是用户程序和文件的集合,在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包里面都会默认带有的目录。

阅读(2229) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~