【问题标题】:How virtual addresses work on computers without virtual memory?虚拟地址如何在没有虚拟内存的计算机上工作?
【发布时间】:2013-05-16 18:29:30
【问题描述】:

我正在阅读操作系统中的内存管理方案。我被这个问题弄糊涂了

虚拟地址如何在没有虚拟内存的计算机上工作?

这个可能的虚拟地址可以在没有虚拟内存的情况下工作吗?

我对操作系统知之甚少,所以我问了这个问题。

【问题讨论】:

    标签: memory-management operating-system


    【解决方案1】:

    虚拟地址不能“工作”,如果它们不存在的话。虚拟地址是虚拟内存实例中的地址。

    虚拟内存不是由某些硬件自动提供的,它是操作系统的实现。如果计算机上安装的操作系统实现了虚拟内存,那么程序可以访问它们的虚拟地址。

    计算机真正需要的只是物理内存和 CPU 架构中的某种方式,以便操作系统拦截直接想要访问内存的 CPU 指令。

    【讨论】:

    • “这不是某种硬件”具有误导性,虚拟内存需要硬件支持才能工作;如果操作系统在虚拟机之上运行,则虚拟机需要模拟支持虚拟内存的架构。
    • 我认为最好改写为:“虚拟内存需要操作系统和硬件支持”;只是一个建议:)
    • 同意 Adel,硬件称为内存管理器和所谓的转换后备缓冲区实现虚拟内存,但它们由操作系统编程以了解内存的布局。
    猜你喜欢
    • 2018-07-09
    • 2023-03-17
    • 2021-07-25
    • 1970-01-01
    • 2011-06-22
    • 2021-09-11
    • 2016-09-26
    • 2012-03-21
    • 1970-01-01
    相关资源
    最近更新 更多