【问题标题】:How is virtual address space greater than physical address space?虚拟地址空间如何大于物理地址空间?
【发布时间】:2014-12-11 03:09:52
【问题描述】:

虚拟地址空间比物理地址空间大多少?

假设一个虚拟 0x7000 映射到物理地址 0x8000,可以说另一个虚拟地址

0x7500 映射到和 0x8000 相同的物理位置,如果没有那怎么会有更多的虚拟

地址和有限的物理内存,因为映射必须转换为物理地址?

请帮助我理解这个概念。

【问题讨论】:

    标签: memory-management operating-system


    【解决方案1】:

    http://en.wikipedia.org/wiki/Virtual_memory

    虚拟内存使用物理内存和硬盘空间来表示比实际存在更多的内存,并提供一个接口,每个程序都可以请求内存资源,而不必关心机器上存在的其他程序以及内存地址他们可能会要求。

    【讨论】:

      【解决方案2】:

      整个虚拟地址空间不必同时映射到物理内存。这就是使它“虚拟”的原因。已分配但当前未映射到物理内存的虚拟内存的内容驻留在某种形式的外部存储上,通常是磁盘。

      根据需要将虚拟内存页面移入和移出物理内存是内存管理系统的工作,这样做的要求是为什么虚拟内存计算机在分配了足够的内存而不再全部运行时会整体变慢同时适合物理内存。

      【讨论】:

      • 那么 MMU 是否负责将页面移入和移出物理地址?
      • 是的,我就是这么说的。
      猜你喜欢
      • 1970-01-01
      • 2020-04-16
      • 1970-01-01
      • 2014-05-23
      • 2018-01-14
      • 2014-03-14
      • 2021-03-18
      • 1970-01-01
      • 2018-08-12
      相关资源
      最近更新 更多