打印

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

[复制链接]
2412|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
21ichzy|  楼主 | 2007-2-4 08:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
请教各位大侠以下若干问题,还望各位不吝赐教!多谢!

不同的镜像文件格式(比如hex文件或者是M0文件等)是否对bootloader有影响,如果往一个目标板里下载不同格式的文件,bootloader如何判断把这些代码写往哪些内存空间。

在非IDE开发环境中,用于分配内存空间的map文件应该怎样产生呢,手动写吗?

芯片可以加载的程序大小由谁决定呢,ram空间长度还是flash的大小。

对ram和flash区域Remap的工作由谁做呢?操作系统还是bootloader?

bootloader和操作系统的开始都要对硬件做初始化,区别是什么呢?PLL在进入操作系统以后是否要被重新初始化?

ARM在bootloader工作期间处于哪种模式?进入操作系统以后如何切换?

相关帖子

沙发
rw99yy| | 2007-2-5 10:34 | 只看该作者

这个帖子的问题

这个帖子的问题我也曾经疑惑过,现在也不是很清楚。请高手出马。

使用特权

评论回复
板凳
BitFu| | 2007-2-5 11:07 | 只看该作者

我的理解

1:不同的镜像文件格式(比如hex文件或者是M0文件等)是否对bootloader有影响,如果往一个目标板里下载不同格式的文件,bootloader如何判断把这些代码写往哪些内存空间。
答:bootloader不管文件格式,它只接收bin数据

2.在非IDE开发环境中,用于分配内存空间的map文件应该怎样产生呢,手动写吗?
答:大概都叫连接脚本吧

3.芯片可以加载的程序大小由谁决定呢,ram空间长度还是flash的大小。
答:当然是flash

4.对ram和flash区域Remap的工作由谁做呢?操作系统还是bootloader?
答:如果是进入了操作系统(或者用户程序)执行前应当先设置,当系统复位后如果进入BOOTLOADER状态,可能default设置remap到BOOT区.

5.bootloader和操作系统的开始都要对硬件做初始化,区别是什么呢?PLL在进入操作系统以后是否要被重新初始化?
答:两个不同的执行状态,只有复位才能切换这个状态所以都应对硬件初始化.

6.ARM在bootloader工作期间处于哪种模式?进入操作系统以后如何切换?
答:不知道,也不管它,能编程就行.

使用特权

评论回复
地板
decament| | 2007-2-12 09:23 | 只看该作者

偶也理解一下


第一个问题和第二个问题和楼上的差不多.

3.芯片可以加载的程序大小由谁决定呢,ram空间长度还是flash的大小。
   答:可加载的程序大小,楼主的意思应该是加载到内存中运行吧,如果是由
      bootloader和一些没有虚拟内存功能的系统加载,那应该由ram大小决定.

4.对ram和flash区域Remap的工作由谁做呢?操作系统还是bootloader?
   答:不是所有的arm芯片都需要remap,如果需要应该是由bootloader做.

5.bootloader和操作系统的开始都要对硬件做初始化,区别是什么呢?PLL在进 入操作系统以后是否要被重新初始化?
   答:bootloader需要做一些基础的设置比如地址空间的配置,和一些自己需要的资源的初始化比如串口,LED等.如果系统是linux,有些标准的参数需要由loader传递给内核,这需要loader来做.操作系统(linux)进行初始化时,他只知道他需要的标准参数,他不知道谁帮他做了那些初始化,所以会自己初始化一便.

6.ARM在bootloader工作期间处于哪种模式?进入操作系统以后如何切换?
  答:一般loader再加载系统前,需要设置成系统模式(至少linux是这样);系统正常启动完后会转到usr模式,通过中断可以切换和修改运行模式.

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

1

帖子

0

粉丝