翼度科技»论坛 云主机 LINUX 查看内容

知识扩展--- MMU 将虚拟地址转换为物理地址

2

主题

2

帖子

6

积分

新手上路

Rank: 1

积分
6
MMU(内存管理单元)如何将虚拟地址转换为物理地址

什么是MMU?

MMU是“Memory Management Unit”的缩写,中文名是内存管理单元。
MMU是现代计算机操作系统中的一个重要组成部分,其主要功能是将虚拟地址转换为物理地址。通过MMU,可以实现虚拟内存管理、内存保护、内存共享等功能,从而提高系统的稳定性和安全性。MMU通过页面表(Page Table)实现虚拟内存管理,页面表记录了每个虚拟页面和其对应的物理页面之间的映射关系。这样,当CPU发出一个虚拟地址时,MMU可以通过页面表查找并将其转换为对应的物理地址。此外,MMU还可以通过页面表实现内存保护和共享等功能,例如标记某些内存区域为只读或禁止访问,以确保程序不会意外地修改关键数据或访问不允许的内存区域。MMU是CPU中用来管理虚拟存储器和物理存储器的控制线路,它位于CPU和内存之间,负责处理程序发出的内存访问请求,并将逻辑地址转换为物理地址,实现对内存的管理和保护。总的来说,MMU是现代计算机系统中不可或缺的一部分,它通过硬件机制确保了内存访问的安全性和效率。
虚拟地址到物理地址的转换

虚拟地址的产生:


MMU中的转换:

MMU的转换分为两部分,分段机制和分页机制,如果没有打开分页机制的话,默认就是分段机制,则得出的线性地址就是物理地址。如果打开了分页机制,就需要引入页表的概念

分页机制

分页,其实就是把虚拟地址空间划分成为若干个大小相等的页,随后由操作系统为这些虚拟内存页分配真实的物理内存页,它查找物理内存中可用的页,然后在页表中登记这些物理页地址,这样就完成了虚拟页到物理页的映射。


来源:https://www.cnblogs.com/fly-home/p/18178428
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

举报 回复 使用道具