我正在将产品从jffs2文件系统迁移到ubifs.

以前的jffs2设计包含3个mtd分区(2 ro和1 rw).

转向ubifs – 我应该创建:

>一个mtd分区和3个卷

> 3 mtd分区,每个1卷

基本上我问我是否应该在转移到ubifs时用卷替换分区?

(我的理解是,如果这样做,ubi层将管理整个闪存)

谢谢,

最佳答案 选项存在,这里有好处……One mtd partition and 3 volumes

UBI层将管理卷.这是一个闪存虚拟化层,可将不可靠的闪存转换为可靠的内存. UBI层确实磨损均衡.即使对于只读数据,偶尔重写数据也是有益的.这将为浮动门等充电,以便数据保持更长时间的可读性.对于读写数据,它对于寿命非常有益. UBI磨损均衡将在所有卷上进行.这极大地增加了文件系统可以处理的擦除 – 写入周期.3 mtd partitions, 1 volume each

这通常不太理想,但有一些好处,它可能适合某些用户.主要具有单独的分区增加了安装单个体积的可靠性.如果单个MTD分区出现问题,则整个闪存可能无法使用.通过具有单独的MTD分区,当读写文件系统失败时,可以使用只读MTD / UBI / UbiFS系统.

这对第三种选择更有利,multiple MTD with mixed file systems.

可以将CramFS,RomFS放在某些闪存设备中,其中设备块由制造商提供可靠性.这可能是一个启动文件系统,它是系统最低功能所需的全部内容.用于操作这些分区的工具非常简单(与UBI / UbiFS相比),并且可以在最小的代码空间中实现.一些系统具有较大的DDR和较小的片上SRAM.加载程序/闪存可能具有受限的代码空间.

也就是说,最近(最近两年)mtd-utils包含UBI解析代码.这可能需要移植到闪存器,恢复代码等.恢复代码可能位于附加的initrd分区中,该分区执行UBI / UbiFS分区的挂载/故障安全恢复.

u-boot包含用于管理和操作UBI / UbiFS代码的代码,它在许多平台上使用两阶段引导(从内部SRAM运行,配置DDR然后迁移),以在引导加载程序中具有丰富的功能.如上所述,u-boot本身需要在另一台设备上或单独的MTD中.

第二个选项3 mtd分区,每个1卷可能是最不可能/最需要的.第一个将有利于系统/闪存的生命周期.最后一个将提供更高可靠性/恢复的简单性.最好的将取决于分区上的数据和可用于恢复数据的非Linux资源.幸福的媒介是为UBI提供尽可能多的NAND闪存空间,并在您需要逻辑分区时使用卷.

通常,我会质疑为什么要使用卷,只是在这种情况下将所有数据放在一起,但这又取决于数据的性质.

linux内核mtd分区,linux-kernel – ubifs卷与mtd分区相关推荐

  1. 编译Linux内核没有zImage,Linux 编译系统的简单介绍与内核编译安装

    这里不只是讲怎样编译.安装Linux内核的,更主要的是介绍内核的编译系统和各个重要的文件.最后还利用学到的编译.安装Linux内核去修改Linux的01调度变成随机调度.如果你只是需要编译.安装内核的 ...

  2. 【Linux 内核】编译 Linux 内核 ⑤ ( 查看 .config 编译配置文件 | 正式编译内核 )

    文章目录 一.查看 .config 编译配置文件 二.正式编译内核 一.查看 .config 编译配置文件 在上一篇博客 [Linux 内核]编译 Linux 内核 ④ ( 打开 Linux 内核编译 ...

  3. 【Linux 内核】编译 Linux 内核 ① ( 下载指定版本的 Linux 内核源码 | Linux 内核版本号含义 | 主版本号 | 次版本号 | 小版本号 | 稳定版本 )

    文章目录 一.下载 Linux 内核 1.下载最新版本 Linux 内核 2.下载指定版本 Linux 内核 二.Linux 内核版本号含义 一.下载 Linux 内核 1.下载最新版本 Linux ...

  4. 简述arm linux内核启动流程,Linux内核启动过程和Bootloader(总述)

    1.Linux内核启动过程概述 一个嵌入式 Linux 系统从软件角度看可以分为四个部分:引导加载程序(Bootloader),Linux 内核,文件系统,应用程序.其中 Bootloader是系统启 ...

  5. 武汉linux内核好找吗,Linux内核入门

    Linux内核入门 收藏 如何获取Linux内核源代码 下载Linux内核当然要去http://www.kernel.org/了,网站提供了两种文件下载,一种是完整的Linux内核,另一种是内核增量补 ...

  6. linux 内核优化实战,Linux编译优化必须掌握的几个姿势总结

    01.编译选项和内核编译 Linux内核(英语:linux kernel),是一种计算机操作系统内核,已C语言和汇编语言写成,匹配POSIX标准,以GNU通用公共许可证发布.从技术上说Linux只是一 ...

  7. Linux内核及主流Linux发行版对应关系汇总

    Linux内核及主流Linux发行版对应关系汇总 如需转载请标明出处:http://blog.csdn.net/itas109 QQ技术交流群:129518033 文章目录 Linux内核及主流Lin ...

  8. linux的头文件下载,Linux内核头文件(linux headers)

    更新 Linux 内核头文件(linux headers) 三 8th, 2013 2,474 views | 发表评论 | Trackback 一般来说,如果不是自己编译 kernel,那么更新头文 ...

  9. 【Linux 内核】编译 Linux 内核 ⑦ ( 安装内核模块 | 安装内核 | 重启系统 | 查看当前内核版本 )

    文章目录 一.安装内核模块 二.安装内核 三.重启系统 四.查看当前内核版本 一.安装内核模块 确保 Linux 内核编译完成 , 没有任何报错之后 ; 参考 [Linux 内核]编译 Linux 内 ...

最新文章

  1. 【干货51页PPT】深度学习理论理解探索
  2. MVC – 9.mvc整体请求流程
  3. 谷歌登录com.google.andriod.gms.common.api.ApiException:10异常处理
  4. windows黑客编程系列(一):运行单一实例
  5. 大一计算机引论知识点,计算机引论知识点2013-1-6.doc
  6. 电商系统购物车流程图
  7. Android TV 认证简介
  8. Binary XML file line Error inflating class解决办法以及自定义view的基本实现
  9. 假期即将结束,前方道路还很长……CLANNAD,16话,渚就这么香消玉殒了……
  10. Java逐行读取fasta文件
  11. github项目推荐:少儿图形化编程启蒙游戏
  12. win10笔记本外接显示器后,微信界面字体模糊问题的解决方案
  13. 8600 系列 VSM 用于磁性微型机器人以及韦根线研究
  14. java:从左至右显示“12345678”,接着显示“23456781”,在接着显示“34567812”,一直到“81234567”, 然后返回“12345678”
  15. 校园导航问题(用图实现一个模拟地图)
  16. 苹果Mac 30周年:那些改变世界的人和Mac电脑
  17. java 网络编程详细解析
  18. 视频怎么消除人声?一款视频去人声软件,轻松去除视频人声
  19. Windows输入法 字母间隙突然变大
  20. (小甲鱼字符串I编程)1.一个英文字符串,去掉相邻的大写小写如Aa,输出这个字符串 2.字符串按如下存放:它的偶数下标为小写英文字母奇数下标为正整数编写代码将奇数下标的数字转换为上一个字母偏移后的字母

热门文章

  1. 后端系统开发之白名单机制
  2. noi.ac NA535 【生成树】
  3. [原创]分布式系统之缓存的微观应用经验谈(三)【数据分片和集群篇】
  4. 队爷的 Au Plan(dp+单调队列)
  5. 重新使用Eclipse建立安卓工程遇到的问题
  6. C#设计模式(1)——单例模式
  7. javascript要点
  8. Eclipse打JAR包引用的第三方JAR包找不到 问题解决
  9. VS2008的网页报表可以直接打印了
  10. 浅析Facebook LibraBFT与比原链Bystack BBFT共识