大菜鸟关于bootloader及系统启动的若干问题!

[复制链接]
3700|3
 楼主| 21ichzy 发表于 2007-2-4 08:02 | 显示全部楼层 |阅读模式
请教各位大侠以下若干问题,还望各位不吝赐教!多谢!<br /><br />不同的镜像文件格式(比如hex文件或者是M0文件等)是否对bootloader有影响,如果往一个目标板里下载不同格式的文件,bootloader如何判断把这些代码写往哪些内存空间。<br /><br />在非IDE开发环境中,用于分配内存空间的map文件应该怎样产生呢,手动写吗?<br /><br />芯片可以加载的程序大小由谁决定呢,ram空间长度还是flash的大小。<br /><br />对ram和flash区域Remap的工作由谁做呢?操作系统还是bootloader?<br /><br />bootloader和操作系统的开始都要对硬件做初始化,区别是什么呢?PLL在进入操作系统以后是否要被重新初始化?<br /><br />ARM在bootloader工作期间处于哪种模式?进入操作系统以后如何切换?
rw99yy 发表于 2007-2-5 10:34 | 显示全部楼层

这个帖子的问题

这个帖子的问题我也曾经疑惑过,现在也不是很清楚。请高手出马。
BitFu 发表于 2007-2-5 11:07 | 显示全部楼层

我的理解

1:不同的镜像文件格式(比如hex文件或者是M0文件等)是否对bootloader有影响,如果往一个目标板里下载不同格式的文件,bootloader如何判断把这些代码写往哪些内存空间。<br />答:bootloader不管文件格式,它只接收bin数据<br /><br />2.在非IDE开发环境中,用于分配内存空间的map文件应该怎样产生呢,手动写吗?<br />答:大概都叫连接脚本吧<br /><br />3.芯片可以加载的程序大小由谁决定呢,ram空间长度还是flash的大小。<br />答:当然是flash<br /><br />4.对ram和flash区域Remap的工作由谁做呢?操作系统还是bootloader?<br />答:如果是进入了操作系统(或者用户程序)执行前应当先设置,当系统复位后如果进入BOOTLOADER状态,可能default设置remap到BOOT区.<br /><br />5.bootloader和操作系统的开始都要对硬件做初始化,区别是什么呢?PLL在进入操作系统以后是否要被重新初始化?<br />答:两个不同的执行状态,只有复位才能切换这个状态所以都应对硬件初始化.<br /><br />6.ARM在bootloader工作期间处于哪种模式?进入操作系统以后如何切换?<br />答:不知道,也不管它,能编程就行.<br />
decament 发表于 2007-2-12 09:23 | 显示全部楼层

偶也理解一下

<br />第一个问题和第二个问题和楼上的差不多.<br /><br />3.芯片可以加载的程序大小由谁决定呢,ram空间长度还是flash的大小。<br />&nbsp;&nbsp;&nbsp;答:可加载的程序大小,楼主的意思应该是加载到内存中运行吧,如果是由<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bootloader和一些没有虚拟内存功能的系统加载,那应该由ram大小决定.<br /><br />4.对ram和flash区域Remap的工作由谁做呢?操作系统还是bootloader?<br />&nbsp;&nbsp;&nbsp;答:不是所有的arm芯片都需要remap,如果需要应该是由bootloader做.<br /><br />5.bootloader和操作系统的开始都要对硬件做初始化,区别是什么呢?PLL在进&nbsp;入操作系统以后是否要被重新初始化?<br />&nbsp;&nbsp;&nbsp;答:bootloader需要做一些基础的设置比如地址空间的配置,和一些自己需要的资源的初始化比如串口,LED等.如果系统是linux,有些标准的参数需要由loader传递给内核,这需要loader来做.操作系统(linux)进行初始化时,他只知道他需要的标准参数,他不知道谁帮他做了那些初始化,所以会自己初始化一便.<br /><br />6.ARM在bootloader工作期间处于哪种模式?进入操作系统以后如何切换?<br />&nbsp;&nbsp;答:一般loader再加载系统前,需要设置成系统模式(至少linux是这样);系统正常启动完后会转到usr模式,通过中断可以切换和修改运行模式.<br /><br />
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

1

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部