zoukankan      html  css  js  c++  java
  • 为什么要有mmu

    我们在程序中使用的变量和函数都有各自的地址,程序被编译后,这些地址就成了指令中的地
    址,指令中的地址被CPU解释执行,就成了CPU执行单元发出的内存地址,所以在启用MMU的
    情况下,程序中使用的地址都是虚拟地址。一个操作系统中同时运行着很多进程,通常桌面上
    的每个窗口都是一个进程,Shell是一个进程,在Shell下敲命令运行的程序又是一个新的进程,
    此外还有很多系统服务和后台进程在默默无闻地工作着。由于有了虚拟内存管理机制,各进程
    不必担心自己使用的地址范围会不会和别的进程冲突,比如两个进程都使用了虚拟地址0x0804
    8000,操作系统可以设置MMU的映射项把它们映射到不同的物理地址,它们通过同样的虚拟地
    址访问不同的物理页面,就不会冲突了。虚拟内存管理机制还会在后面进一步讨论。

  • 相关阅读:
    mysql参数优化
    看见的一个mysql面试题
    面向对象的继承
    面向对象的权限修饰符
    php实现无限极分类
    php的冒泡排序
    frame框架的跳转
    thinkphp中open路径问题
    mysql触发器
    mysql事务
  • 原文地址:https://www.cnblogs.com/notepi/p/2874134.html
Copyright © 2011-2022 走看看