使用虚拟内存切换上下文?

时间:2015-12-25 03:05:02

标签: operating-system virtual-memory mmu

最近我给了操作系统课程的期中考试,其中一个问题就是这个 -

以下哪项陈述是错误的?

  1. 虚拟内存实现将程序的地址空间转换为物理内存地址空间
  2. 虚拟内存允许每个程序超过主内存的大小
  3. 虚拟内存增加了多道程序设计的程度
  4. 虚拟内存减少了上下文切换开销
  5. 我对选项1和4感到困惑。在VM的情况下,上下文切换应该更快(我不确定为什么,它只是一种直觉)。对于选项1,虚拟内存不实现地址转换,但实现此目的的是MMU。 我错过了什么吗?那么正确答案应该是什么?

2 个答案:

答案 0 :(得分:1)

  

虚拟内存减少了上下文切换开销。

在具有虚拟内存的系统中,上下文切换包含切换地址空间的额外开销。第4个语句将为false,它将为correct answer

Refer this link

  

虚拟内存实现程序地址空间的转换   进入物理内存地址空间

VM需要硬件(TLB和MMU)和OS支持(控制TLB和MMU)。 MMU硬件将虚拟地址转换为物理地址

  

虚拟内存允许每个程序超过主程序的大小   存储器

TRUE

  

虚拟内存增加了多道程序设计的程度

Vm在内存中同时改进了进程数-TRUE

答案 1 :(得分:1)

  

虚拟内存实现了将程序的地址空间转换为物理内存地址空间

这是逻辑内存转换,而不是虚拟内存。这可能是错误的,除非你混淆(尽可能多)术语"虚拟内存"和"逻辑记忆。"可能是虚假或真实。

  

虚拟内存允许每个程序超过主内存的大小

真。

  

虚拟内存增加了多道程序设计的程度

说什么?这句话意味着什么?

  

虚拟内存减少了上下文切换开销

可能。它可能不会。无论是真还是假。