MMU的作用及工作过程

以下内容摘自《步步惊芯——软核处理器内部设计分析》一书的第10章 MMU剖析

 

 

MMU的作用及工作过程

      MMUMemory Management Unit)是内存管理单元的简称,读者朋友在学习嵌入式的时候应该听说过µCLinux,这是适合没有MMU的微控制器使用的嵌入式Linux操作系统,比如ARM7。由于没有MMU,所以在µCLinux上实现多任务功能是一个非常棘手的问题。从而引出了本节的关注点:MMU的作用是什么?简单地说,MMU的作用有两点:地址翻译、内存保护。

1、地址翻译

      在处理器上一般会运行一个操作系统,如Linux,用户编写的源程序需要经过编译、链接得到可执行文件,然后被操作系统加载执行。编译、链接的过程在第2章实验环境搭建中有过描述,在链接的时候需要指定一个链接描述脚本,链接描述脚本有很多作用,其中一项是控制可执行文件中Section和符号的内存布局,也就是控制可执行程序在内存中是如何放置的,操作系统会按照可执行文件的要求将其加载到内存对应地址并执行。假如用户A编写了程序ProgramA,并且ProgramA占用的内存空间是0x100-0x200,用户B

  • 20
    点赞
  • 77
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
CPU核、cache、MMU是计算机系统中三个重要的组成部分,它们协同工作可以提高计算机系统的性能和安全性。具体来说,它们的协同工作可以通过以下几个方面实现: 1. Cache的命中率:当CPU核执行指令或访问数据时,首先会查询cache中是否已经存在需要的数据或指令,如果存在则可以直接从cache中读取,减少了从主存中读取的时间和开销。而MMU则可以通过虚拟地址转换为物理地址,将cache中的数据和指令正确地映射到物理内存中。 2. Cache的一致性:由于多个CPU核可能同时访问同一个缓存行,因此需要保证缓存中数据的一致性。当一个CPU核更新了缓存中的数据时,MMU会通过硬件机制通知其他CPU核对该缓存行的数据进行更新,从而保证缓存中数据的一致性。 3. 内存保护:MMU可以通过虚拟地址转换为物理地址,并对物理地址进行访问权限的检查,从而保护系统的内存不被非法访问。此外,MMU还可以将物理地址映射到不同的页面中,实现内存的隔离和保护。 4. 虚拟化:MMU可以将物理内存映射到不同的虚拟地址空间中,从而实现虚拟化。虚拟化技术可以让多个操作系统同时运行在同一台物理计算机上,提高计算机系统的利用率和灵活性。 综上所述,CPU核、cache、MMU是计算机系统中协同工作的重要组成部分,它们的协同工作可以提高计算机系统的性能和安全性,实现内存保护、虚拟化等功能。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值