0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

内存管理单元的重要功能是什么

麦辣鸡腿堡 来源:TrustZone 作者:Hcoco 2023-11-26 15:36 次阅读

微观理解

内存管理单元(MMU)的一个重要功能是使系统能够运行多个任务,作为独立的程序运行在他们自己的 私有虚拟内存空间。

它们不需要了解系统的物理内存图,即硬件实际使用的地址,也不需要了解可能在同一时间执行的其他程序。

所以在这种时候其实也要注意,你到底是使用的物理内存还是虚拟内存,使用的同一片内存,会不会出现踩踏内存的现象。

图片

你可以为每个程序使用相同的虚拟内存地址空间。

你也可以使用一个连续的虚拟内存地图,即使物理内存是碎片化的。

这个虚拟地址空间与系统中的实际物理内存地图是分开的。

你可以编写、编译和链接应用程序以在虚拟内存空间中运行。

如下图所示的内存虚拟和物理视图的系统实例,一个系统中的不同处理器和设备可能有不同的虚拟和物理地址图。

操作系统对MMU进行编程,在这两个内存视图之间进行转换。

图片

要做到这一点,虚拟内存系统中的硬件必须提供地址转换,即把处理器发出的虚拟地址转换为主内存中的物理地址。

虚拟地址是你、编译器和链接器在内存中放置代码时使用的地址。

物理地址是由实际的硬件系统使用的。

MMU使用虚拟地址的最重要的位来索引映射表中的条目,并确定哪个块被访问。

MMU将代码和数据的虚拟地址映射成实际系统中的物理地址。

这种转换是在硬件中自动进行的,对应用程序是透明的。

除了地址转换外,MMU还控制内存访问权限、内存排序和每个区域内存的缓存策略。

(安全地址与非安全地址的访问控制权限,检查页标签

图片

MMU使任务或应用程序的编写方式要求它们对系统的物理内存图或可能同时运行的其他程序一无所知。这使你可以为每个程序使用相同的虚拟内存地址空间。

它还允许你使用一个连续的虚拟内存地图,即使物理内存是碎片化的。这个虚拟地址空间与系统中的实际物理内存地图是分开的。应用程序被编写、编译和链接以在虚拟内存空间中运行。

这个就回到了我之前说的这个MMU本质上提供的能力。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 操作系统
    +关注

    关注

    37

    文章

    6651

    浏览量

    123097
  • 程序
    +关注

    关注

    115

    文章

    3753

    浏览量

    80709
  • 内存管理
    +关注

    关注

    0

    文章

    168

    浏览量

    14112
  • MMU
    MMU
    +关注

    关注

    0

    文章

    91

    浏览量

    18242
收藏 人收藏

    评论

    相关推荐

    有什么方法优化重要功能

    PIC16F145X,XC8:我有一个重要功能:UIT88T函数(UTI8YT,UIT88T,UIT88T,UIT88T**);这个函数可以在PIC运行期间一直优化重要功能调用;不知道是否有一些
    发表于 01-14 09:52

    电动后尾门控制单元要功能

    随着车辆舒适性要求的不断提高,越来越多的汽车采用电动后尾门。经纬恒润平台化的电动后尾门控制单元可为不同的后尾门应用场合提供解决方案。主要功能•车门电动打开与关闭•门锁自动上锁•电动过程障碍物检测
    发表于 08-26 13:18

    电池管理系统的主要功能包括哪些

    电池管理系统(BATTERY MANAGEMENT SYSTEM),俗称电池保姆或电池管家,是连接车载动力电池和电动汽车的重要纽带,其主要功能包括:电池物理参数实时监测;电池状态估计;在线诊断与预警
    发表于 09-08 07:17

    电动后尾门控制单元要功能

    随着车辆舒适性要求的不断提高,越来越多的汽车采用电动后尾门。经纬恒润平台化的电动后尾门控制单元可为不同的后尾门应用场合提供解决方案。主要功能•车门电动打开与关闭•门锁自动上锁•电动过程障碍物检测
    发表于 09-14 06:03

    ARM系统内存管理单元架构规范SMMU架构2.0版

    ARM系统MMU(SMMU)体系结构为存储器管理单元(MMU)实施提供了灵活的实施框架,具有多个实施定义的选项。 该体系结构可用于系统级的MMU。 它基于转换表中保存的地址映射和内存属性信息,支持从
    发表于 08-12 06:25

    如何管理STM32产品中的内存保护单元(MPU)

    本应用笔记介绍如何管理 STM32 产品中的内存保护单元(MPU)。MPU 是用于存储器保护的可选组件。STM32 微控制器(MCU)中嵌入 MPU 之后变得更稳健可靠。在使用 MPU 之前,必须
    发表于 09-07 06:23

    全系统模拟中内存管理单元的模拟实现

    内存管理单元是体系结构中少数与操作系统进行直接交互的接口之一,其模拟模型的执行效率和扩展能力在全系统模拟环境中尤为重要。本文介绍了SimSoc 全系统模拟框架中
    发表于 01-25 15:41 7次下载

    ARM 内存管理单元MMU详细图解资料

    ARM 内存管理单元MMU详细图解资料 本文描述基于存储器管理单元的系统结构, 包含以下内容:·  关于存储器
    发表于 03-03 16:22 97次下载

    DSO中的内插技术 (数字示波器重要功能的使用)

    DSO中的内插技术 内插是当前数字示波器中的一项重要功能。DSO的主要用途是分析和查看模拟波形。为此,DSO以某种有限采样率对波形采样,相对于
    发表于 10-08 08:06 5128次阅读

    管理 STM32 MCU 中的内存保护单元

    管理 STM32 MCU 中的内存保护单元
    发表于 11-21 08:11 4次下载
    <b class='flag-5'>管理</b> STM32 MCU 中的<b class='flag-5'>内存</b>保护<b class='flag-5'>单元</b>

    AN4838 管理STM32 MCU中的内存保护单元

    AN4838 管理STM32 MCU中的内存保护单元
    发表于 11-21 17:07 0次下载
    AN4838 <b class='flag-5'>管理</b>STM32 MCU中的<b class='flag-5'>内存</b>保护<b class='flag-5'>单元</b>

    如何管理STM32产品中的内存保护单元(MPU)

    电子发烧友网站提供《如何管理STM32产品中的内存保护单元(MPU).pdf》资料免费下载
    发表于 08-01 09:15 0次下载
    如何<b class='flag-5'>管理</b>STM32产品中的<b class='flag-5'>内存</b>保护<b class='flag-5'>单元</b>(MPU)

    MMU内存管理单元的工作原理和作用

    MMU(Memory Management Unit,内存管理单元)是一种硬件模块,用于在CPU和内存之间实现虚拟内存
    的头像 发表于 08-03 10:03 2229次阅读
    MMU<b class='flag-5'>内存</b><b class='flag-5'>管理</b><b class='flag-5'>单元</b>的工作原理和作用

    MMU内存管理单元的宏观理解

    (Memory Management Unit,内存管理单元)是一种硬件模块,用于在CPU和内存之间实现虚拟内存
    的头像 发表于 11-26 15:21 516次阅读
    MMU<b class='flag-5'>内存</b><b class='flag-5'>管理</b><b class='flag-5'>单元</b>的宏观理解

    SINC滤波器模块的重要功能

    电子发烧友网站提供《SINC滤波器模块的重要功能.pdf》资料免费下载
    发表于 11-30 09:14 3次下载
    SINC滤波器模块的<b class='flag-5'>重要功能</b>