找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2508|回复: 0
收起左侧

[待验证]ARM启动过程中的为什么要做内存重映射-希望做一个启动的全流程学习和理解

[复制链接]
ID:105323 发表于 2016-3-4 14:14 | 显示全部楼层 |阅读模式
ARM启动过程中首先是映射SRAM地址到0x0,这个时候DRAM是映射到自己的物理地址的,也就是说尚未进入操作系统;
之后要进行地址重映射,把SRAM从0x0搬走,将DRAM的地址映射到0x0,这是为了保证一些中断处理程序等的地址正确性,而且之后正式进入操作系统运行。

那么为什么不从一开始就把DRAM映射到0x0呢,我想,是因为系统启动之后程序从0x0开始运行,先把SRAM映射到这个位置,执行SRAM中的代码,进行必要的初始化,之后把DRAM映射进来,进入操作系统。

再之后进入操作系统的启动过程,也就是如何把操作系统从硬盘读取到内存DRAM并执行,下一步再来补充。

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表