完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
学linux到目前为止,总是不得问题的原委,大多数是别人说哪里出了错就去修改,然而编译通过,下到板子里面还是一样的错误,不能说别人的建议没用,应该是每个人的情况(虽说错误是完全一样的)是不一样的缘故。个人觉得还是理解程序的运行流程和阅读源码是比较重要的。
在此,我这菜鸟就遇到很多概念不太理解,分区就是其中的一个。 1:为什么对nandflash的分区有两个:u-boot中有一个,linux内核中还有一个?两者到底有什么关系? u-boot对nandflash的分区情况是怎么传入内核的?如果不传入内核,那是完全没有意义的。 2:#define MTDPARTS_DEFAULT "mtdparts=nandflash0:512k@0(bios)," "128k(params)," "128k(toc)," "512k(eboot)," "1024k(logo)," "4m(kernel)," "-(root)" 为什么还会有一个params,它的作用猜也知道:肯定是存放启动参数的。但是为什么有些u-boot 却 :没有设置这个分区呢? 3:根文件系统的映像是烧写到了nandflash中,不同的u-boot当然会把它烧写到不同的nandflash位置, 那么,怎么保证linux系统知道文件系统的存放位置,然后再去挂接它呢? 恳请各位大哥不吝赐教!在此感激不尽! |
|
相关推荐
4个回答
|
|
看这个贴子:http://www.100ask.net/forum/showtopic-15.aspx
|
|
|
|
持续跟踪此贴,看看后续答复如何;
|
|
|
|
1、uboot中的分区只不过是一个“环境变量”,用来方便烧写文件,比如我们烧写uboot
nand write 0x30000000 0x0 filesize 可以变为 nand write bootloader ,用分区名来替代起始地址和长度 2、内核的分区是真正意义上的分区,比如内核启动会挂载mtdblock3作为文件系统 内核分区的划分在内核的启动过程中可以通过打印信息看到,当然分区的划分在代码中是可以更改的 3、要保证uboot和内核的分区划分一致,如果出现不一致的情况,我们在使用uboot烧写文件系统的时候烧写到了uboot的block3,而内核去挂载block3的时候缺找不到文件系统,因此就出现挂载失败的问题。 4、uboot的分区信息可以通过Bootargs传递给内核,这个可以百度一下,我也没有搞过。 |
|
|
|
|
|
|
|
只有小组成员才能发言,加入小组>>
197个成员聚集在这个小组
加入小组为什么点亮LED的例子放在NORFlash上跑会出现奇怪的现象?
2181 浏览 6 评论
1983 浏览 5 评论
韦东山老师推出的《玩转ARM裸机实战》课程将帮你以上问题一扫而光!
4541 浏览 1 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-23 04:09 , Processed in 0.529773 second(s), Total 53, Slave 43 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号