内存管理之MMU实验

(注:这是观看韦东山老师视频之后的总结)

首先百度一下MMU的概念:MMU(Memory Management Unit)即内存管理单元,是中央处理器(CPU)中用来管理虚拟存储器、物理存储器的控制线路,同时也负责虚拟地址映射为物理地址,以及提供硬件机制的内存访问授权、多用户多进程操作系统MMU。

再说一下权限管理

很简单,假设在一个时间轴上会执行内核程序,A程序,B程序,这几段程序的地址空间是互不相同的,A程序无法访问内核,也无法访问B程序,如果强行要访问的话,就会出现崩溃。

再说MMU:1.CPU可以直接访问储存管理器,再通过储存管理器访问硬件,这是直接通过物理地址来访问硬件。

    2.令一种方法就是CPU通过虚拟地址——MMU——物理地址——储存管理器——硬件。MMU起到的作用就是将虚拟地址映射成物理地址。

那么如何完成映射,也就是说怎么样将虚拟地址变成物理地址呢?

通过看《嵌入式Linux应用完全开发手册——韦东山》可知道一共有四种映射长度:段(1MB),大页(64KB),小页(4KB),极小页(1KB),在这里我们用的是段,要注意段是以1MB为单位的。本实例使用SDRAM的开始16KB来存放一级页表,所以剩下的内存开始物理地址就为0x30004000。

下面开始建立页表,ARM的总取址空间是4GB,又是以1MB 为单位,那么在这个表格中表项=4GB/MB =4096。

开发板SDAM的物理地址

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值