
启动区(bootstrap,uboot),内核区(kernel),文件系统(filesystem)
具体安装大小,要看各个部分的软件被你编译成了多少。
在你编译后的size的基础上,再适当增加一点,作为个分区的容量。
给你一个atmel的官方arm linux的分区示意图。
http://www.at91.com/linux4sam/bin/view/Linux4SAM/GettingStarted
上面只是对初学者的简要说明。每一部分都是可变的,关键看你自己的制作环境是什么。
想了解更详细的,你需要了解了每一部分的启动原理,存储位置等,才能充分明白。
或者把上面的网站里,左侧菜单的所有内容熟悉一遍,也会加深理解的。
通过flash驱动提供接口进行读写,而且flash的读写不是你想的可以按字节来读,而是按flash的pagesize大小来的,而且擦除只能按block擦除一般通用的可以使用mtdutils这个软件包交叉编译,它有提供nanddump nandtest nandwrite等命令
从flash读取到内存的数值是没有格式的,只能按照起始地址和长度读取二进制,你需要对这段内存值进行强制格式转换,然后就可以打印出你需要的值了
-在烧写Flash时,需要按照事先规划进行具体烧写-在uboot程序中可以读到这部分内容,也就是Flash区的划分
-这部分区域最好是以页为单位,对应内存中相应的变量,因为Flash擦除是以页为单位的,所以在修改其中一部分内容时,需要将整个页读出来到内存,在内存中修改,然后整个页写回;,一般对于重要数据还要保留至少一个备份(因Flash容易出坏块)
-在划分好区域后,在程序中写专用的程序进行Flash数据的读取、擦除、写这些 *** 作
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)