`
java-mans
  • 浏览: 11427510 次
文章分类
社区版块
存档分类
最新评论

ubifs文件系统的制作过程&&遇到的问题及解决方案总结---之一“uboot中添加对UBIFS文件系统的支持”

 
阅读更多

为了更好的理解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)"

/*还要修改下面几个宏,因为使用UBIFS会占用更多的堆、栈空间*/

#define CONFIG_STACKSIZE (512*1024)
#define CONFIG_SYS_MALLOC_LEN (CONFIG_ENV_SIZE+1024*1024)
#define CONFIG_SYS_GBL_DATA_SIZE 512

2.回到uboot的顶层目录下

(可能拿到的uboot已被编译过,所以最好要用此命令清理中间文件)

执行命令:make clean

(uboot是通用的bootloader,支持多种开发板,所以编译之前先选择使用哪种board)

执行命令:make mini2440_config

注意:我用的是mini2440开发板,所以要编译这个开发板使用的uboot,所以这里的目标为mini2440_config,表示选择的board是mini2440

(mini2440_config在Makefile标准术语称为“目标”,可以在uboot顶层Makefile找到该目标)

执行命令(开始编译uboot) :make CROSS_COMPILE=arm-linux-

分享到:
评论

相关推荐

    ubifs文件系统的制作详解

    ubifs文件系统的制作详解 错误讲解 分析 ubi在uboot 内核文件中的支持

    UBIFS文件系统简析

    UBIFS文件系统简析,从MTD层、UBI层、UBIFS层及与VFS层接口等方面详细介绍了UBIFS文件系统的实现原理和核心源码,原创文章近300页,供大家交流探讨

    对嵌入式Linux操作系统中的UBIFS文件系统备份方法.docx

    对嵌入式Linux操作系统中的UBIFS文件系统备份方法.docx

    ubifs文件系统制作教程

    项目需要制作ubifs的文件系统,找了一些资料,发现就这篇文章讲的还算明白,不敢独享

    UBIFS文件系统介绍

    中文版。 UBIFS, Unsorted Block Image File System,...它是用于固态硬盘存储设备上,并与LogFS相互竞争,作为JFFS2的后继文件系统之一。真正开始开发于2007年,并于2008年10月第一次加入稳定版本于Linux核心2.6.27版。

    Ubifs文件系统的制作和启动

    Ubifs文件系统的制作和启动,关于Davinci系列相机支持

    ubi文件系统制作过程

    自己试验过的ubi文件系统制作过程,能够稳定运行

    ubifs文件系统英文介绍.zip

    想了解一下UBIFS,看了CSDN的一个名为“UBIFS文件系统详解“的资源,竟要50积分,而内容不过是一篇名为A Brief Introduction to the Design of UBIFS的英文文章,而该文章只需要用google搜索一下就可以免费下载,...

    Linux下的flash文件系统的性能比较,jffs2,yaffs2,ubifs

    Linux下的flash文件系统的性能比较,jffs2,yaffs2,ubifs

    UBI&UBIFS 的使用注意和说明.pdf

    ➢ Runs on top of MTD(MTD(Memory Technology Device)是flash在Linux系统的一种 软件架构); ➢ A sub system that provides consecutive logical eraseblocks (逻辑块)which are mapped to physical ...

    ubifs配置文件

    ubifs是imx283文件系统移植所需要的配置文件,请有需要的朋友自行下载,没有积分的朋友请联系博主。

    UBIFS 资料

    UBIFS,filesystem,rootfs,google搜集

    UBIFS白皮书

    介绍UBIFS构成、原理等……相当详细,想研究flash文件系统最好看下!因为很多思想在所有flash文件系统都差不多!

    Android系统移植技术详解

    制作ubifs文件系统 7 android编译系统makefile(Android.mk)写法 10 Android系统移植(一)-让android系统在目标平台上运行起来 18 Android系统移植(二)-按键移植 20 Android系统移植(三)-按键字符表 25 android启动...

    UBI及EXT4文件系统

    YAFFS等皆无法再去控制Nand Flash的空间,于是在2006年由IBM与Nokia的工程师设计开发了UBI(Unsorted Block Image)及其UBIFS文件系统,专门为了解决MTD(Memory Technology Device)设备所遇到的瓶颈。...

    rootfs的制作.docx

    本文档适合嵌入式初学者练习制作linux系统上的最小根文件系统。 rootfs的制作 1 1) 创建dev/ sys/ etc/ root/ home/ proc/ tmp/等文件夹 2 2) 创建设备文件 2 3) 设置init启动配置信息。 3 1) 配置profile文件...

    文件系统知识点-制作根文件系统

    1.inittab表action说明; 2.嵌入式相关文件系统:autofs、cramfs、squashfs、JFFS2、YAFF2、ubifs、ramdisk、ramfs、tmpfs、procfs、sysfs; 3.windows文件系统:fat、FAT32、NTFS、EXT3、EXT4;

    mtd-utils-d055f1c.tar.gz

    制作ubifs文件系统必须安装的工具之一

    在ubuntu 10.10上交叉编译编译 mtd-utils及使用UBIFS

    ubifs 的相关工具制作和使用,已经验证完全能够在atmel91sam9g45平台运行起来。

    yaffs2image制作工具

    本工具用于linux根文件系统镜像文件的制作,压缩包里有使用说明。 下面是工具说明: mkcramfs 制作cramfs镜像的工具 mkimage 制作jffs2镜像的工具 mkyaffs2image 制作2.6的yaffs2的镜像工具(针对Nand Flash是128MB到...

Global site tag (gtag.js) - Google Analytics