zoukankan      html  css  js  c++  java
  • ARM处理器启动流程

    S3C2440:

      从nandflash启动的时候,上电之后,硬件自动将nandflash里bootloader的前4K代码复制到stepping stone(0地址)中,这4K的代码除了负责一些硬件初始化,还负责将bootloader剩下的代码复制到内存0x3000 0000中,然后4K运行完之后跳转到内存中继续运行剩下的bootloader,最后引导操作系统启动。

    S3C6410:

      s3c6410中零地址是一个映射区域(位于0地址),6410可实现从SDRAM,IROM(包含SD卡启动和nandflash启动)中启动,从什么地方启动,就将其映射到映射区域中。

      比如从IROM启动(包括SD卡启动和nandflash启动两种方式)时,把IROM映射到0地址处,然后从0地址开始运行,

      从nandflash启动的时候,上电之后,首先运行irom中的代码(可以看做是0地址),irom中的代码是硬件厂商固化好的,这些代码主要负责一些硬件的初始化,还负责将bootloader中的前8K代码复制到stepping stone中(第一阶段),在stepping stone中这8K代码运行完之后还将剩余的bootloader复制到内存0x5000 0000中运行(第二阶段),最终引导操作系统启动。

      跳转到内存的地址是怎么来的:uboot根目录下的config.mk文件中搜索 TEXT_BASE 这表示从垫脚石会跳转到这个地方执行,这个地址会覆盖链接器脚本中的地址 具体值在板文件目录下的config.mk设置

    S5PV210

      与6410相似,0地址处也是一个映射区域,从nandflash启动实际是从irom启动。

      从nandflash启动的时候,上电之后,首先运行irom中的代码(可以看做是0地址),irom中的代码是硬件厂商固化好的,这些代码主要负责一些硬件的初始化,还负责将bootloader中的第一阶段代码(BL1---16K)复制到stepping stone(96K)中,然后将BL2(一般容量为80k)复制到stepping stone中,此时若stepping stone中还装不下bootloader,则继续将剩余的bootloader复制到内存中运行,最后引导操作系统启动。

  • 相关阅读:
    postman 安装,配置,鉴权
    monkey操作,获取包名,参数,日志,百分比
    monkey环境搭建
    postman接口测试&压力测试
    Fiddler介绍(PC端+Android,IOS端,弱网)
    软件测试的环境搭建
    python2.x- selenium-robot framework自动化测试环境搭建
    SVN的简单操作,版本控制
    svn介绍和安装
    js 函数和函数的参数
  • 原文地址:https://www.cnblogs.com/chd-zhangbo/p/5276621.html
Copyright © 2011-2022 走看看