bootloader的分区和linux内核分区的关系

本文发布时间: 2019-Mar-22
首先,如果bootloader需要提供分区,那应该和内核保持一致。其实bootloader不需要知道内核分区的的详细信息,只要知道在哪个地址启动内核就可以了。看过一个帖子,可供参考,我也想表达那个意思。 分区只是内核的概念,就是说A~B地址放内核,C~D地址放文件系统,储如此类。 bootloader有没有分区的概念不重要,只要它能把内核烧到A位置,把文件系统烧到C位置。所以,在bootloader对Flash进行操作时,哪块区域放什么是以内核为主的。 另外,嵌入式设备中,并不像台式机一样在磁盘的首部有一个分区表,所有人想知道哪个分区在哪个位置时,就去查分区表。 所以,在嵌入式开发中,所谓的“分区”以内核为准,并且是固定写在内核代码中的。 为了方便bootloader的操作,我们也引入分区的概念,可以使用“nand write 3000000 kernel”命令将uImage烧到kernel分区,而不必写那么长:nand write 3000000 A …… 在bootloader中还可以重划、保存分区信息:为什么可以重划?你总不能在内核中重新修改了一下分区,又重新修改一下bootloader吧?只需要重新设置一下bootloader环境参数,就可以使用同样的“nand write 3000000 kernel”命令进行烧写了。 bootloader的分区信息保存在环境参数中,你看看mtdpart.c这个文件,名字记不清了,有mtd、part字样 。


(以上内容不代表本站观点。)
---------------------------------
本网站以及域名有仲裁协议。
本網站以及域名有仲裁協議。

2024-Mar-04 02:11pm
栏目列表