嵌入式系统009-物理地址及虚拟地址

目标:了解物理地址
了解虚拟地址
.让大家能够接受或者理解下面的内容
对宏定义EXYNOS4_GPL2(0)的操作就是对4412芯片管脚AC21寄存器的操作
上层程序员(包括驱动工程师)不用关心物理地址和虚拟地址具体是多少,只需要对一组宏定义操作,就是对4412内部寄存器操作

单片机处理器
在这里插入图片描述
现代中央处理器CPU
在这里插入图片描述
物理地址
.4412中的物理地址
CPU内部寄存器register
. eMMC
TF卡
.从前门的内容看来,现代CPU和单片机就是相比多了缓存和内存管理单元,好像还是很好理解的
缓存比内存贵,速度快,所以它在挨着CPU的第一级
内存比存储器介质贵,速度快,所以它在缓存和内存之间
MMU内存管理单元-产生的历史背景
.MMU是中央处理器中用来管理虚拟存储器,物理存储器的控制线路,同时负责虚拟地址映射为物理地址
在原始的PC上,程序员编程的时候遇到一个问题
程序大于内存
当时的解决办法是程序员将程序“分割”成一段一段的,运行的时候CPU先运行一段,然后关闭前一段,再运行下一段
虽然运行的时候,CPU可以自动处理,但是“分割”的工作由程序员完成,很痛苦,很枯燥。

在这个环节下引入内存管理单元–MMU

MMU内存管理单元–地址范围
1.内存管理单元的基本思路
数据和堆栈的大小总和可以超过物理存储器的大小,操作系统把当前使用的部分留在内存中,其它的保留在硬盘上。
2.内存管理单元–地址范围
32位的CPU地址范围是0-2的32次方
64位的CPU地址范围是0-2的64次方
MMU内存管理单元–页和页帧
虚拟地址空间被划分为页的单位,相应的物理地址空间被划分为页帧,这个就是分页机制
页的大小必须一样,页帧的大小必须一样
.如果一台32位的机器有1G内存,它最大可运行4G大小的程序。
这台机器首先要有4G的存储空间。
MMU内存管理单元-虚拟地址和物理地址的映射
1.MMU本质上是一个表格
(1)MMU表格一边是CPU发送指令对应的虚拟地址,一边存储的是物理地址
(2)虚拟地址转化为物理地址,内存通过物理地址读取实际的数据

(3)在4412处理器中,内部寄存器也是通过虚拟地址和物理地址映射之后才拿来使用的。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值