u bifs 文件系统的制作过程&&遇到的问题及解决方案总结---之一“uboot 中添加对UBIFS 文件系统的支持” 分类: 嵌入式 2012-04-18 21:34 314人阅读 评论(0) 收藏 举报 为了更好的理解ubifs 根文件系统的制作,首先,我们简单的说一下,系统的组成: Bootloader(uboot) parames(启动参数) kernel(内核) root Filesystem (根文件系统) bootloader(uboot)的作用就是用来加载操作系统;而嵌入式linux 系统由linux内核和根文件系统两部分构成,两者缺一不可。 所以我们要制作一个UBIFS 的根文件系统,首先必须让上面系统组成的几个部分都支持UBIFS 文件系统,就得在这几个组成部分添加一些“东西”(支持UBI 的配置): (打个我自己理解的比喻吧:“娶媳妇”比作--启动系统,娶媳妇是不是要经过老爸、老妈、丈母娘、岳父的同意和支持?bootloader、parames、kernel、root Filesystem 便是老爸、老妈、丈母娘、岳父...O(∩ _∩ )O~,而你叫"UBI") 这篇博文主要是详细解析:uboot 中添加对UBIFS 文件系统的支持 一、移植环境 §主机:vmware-redhat5 §开发板:mini2440--256MB nandflash §kernel:2.6.29 编译器:arm-linux-gcc-4.3.2.tgz §uboot: u-boot-2008.10 二.移植步骤 本次移植的功能为:支持UBIFS 文件系统 1.在include/configs/mini2440.h 中添加如下配置: (注意:不同的开发板在include/configs/目录下对应的修改的配置文件不同,我的开发板是mini2440 所以修改的是mini2440.h) #define CONFIG_MTD_DEVICE #define CONFIG_MTD_PARTITIONS #define CONFIG_CMD_MTDPARTS #define CONFIG_LZO #define CONFIG_RBTREE #define CONFIG_CMD_UBIFS //要支持ubIfs 首先得让uboot 支持UBIFS 的烧写命令 #define CONFIG_CMD_UBI //uboo 支持的ubifs 烧写命令:1.mtdparts: 用来给NAND 分区; /*2.nand erase.part:用来擦除指定分区 等这些命令 在“UBIFS 镜像的制作&&烧写”博文理解*/ //其次要支持MTD(memory technology device 内存技术设备)是用于访问memory 设备(ROM、flash)的Linux 的子系统 #define MTDIDS_DEFAULT "nand0=nandflash0" //同时要给nandlflash 建立默认的分区, #define MTDPARTS_DEFAULT "mtdparts=nandflash0:384k(bootloader),"\ //我的分区: "128k(params),"\ "5m(kernel),"\ "64m(root)" /*还要修改下面几个宏...