MMU与虚拟内存

MMU与虚拟内存:

1,MMU的作用:

  A,不使用虚拟内存,直接使用武力内存

           如果我们以物理内存你的方式分配内存给应用程序,效果如下图:

  像上图这样,以实际的物理地址来分配物理内存,几个缺点:

            1,如果我们有n个APP应用程序,将需要定义n个链接地址来分配内存;

            2,在编写每个应用程序时每个应用程序的基地址都不一样,带给程序员一些不必要的麻烦;

            3,如果程序超出了整个RAM的内存空间,将会到值其他应用程序,甚至是系统的崩溃。

B,使用虚拟内存:

    当我们是用MMU后,CPU在运行不同的应用程序时,CPU只需要发出虚拟内存,MMU会根据页表将不同的应用程序的内存映射到不同的物理内存中。例如:

  1,CPU在运行APP1和APP2时,都发出读取0x80b4地址的信号,如图中的VA信号

  2,MMU收到信号后,会将APP1的读取信号按照页表1虚拟地址转换为对应物理地址,然后发送给物理内存(RAM)如图中的PA信号,物理内存将对应地址的数据返回给CPU;

  3,同样,MMU会将APP2的读取信号按照页表2虚拟地址转换为对应物理地址,然后发送给物理内存(RAM)如图中的PA信号,物理内存将对应地址的数据返回给CPU

 

    虚拟内存的拎一个作用是可以扩展物理内存,当应用程序使用的内存超出了我们分配的物理内存时,操作系统会将一部分没有使用到的内存存入flash(或者硬盘,SSD等),然后释放这一部分的内存再次使用,从而起到扩展内存你的作业

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值