【问题标题】:reason for logical address(virtaul address space) instead of physical address space逻辑地址(虚拟地址空间)而不是物理地址空间的原因
【发布时间】:2014-05-23 21:33:44
【问题描述】:

我可以理解分页方案。对于每一页(逻辑地址+偏移量),都会维护页框。

但是分页的需要是什么?可执行程序被加载到 RAM 内存中。为什么需要存储页表(虚拟地址空间)的通知?

为什么不使用物理地址空间?

【问题讨论】:

  • 没有绝对必要,但是使用虚拟地址可以让多个进程以更简单、更灵活、更安全的方式同时运行。它抽象了硬件,并隔离了不同的进程。与 1980 年代家用计算机的工作方式大不相同,在这种情况下,并行运行多个程序即使不是麻烦,也是一种黑客行为。

标签: linux unix memory-management process operating-system


【解决方案1】:

物理地址空间不直接用于提供对特定物理硬件复杂性的抽象。虚拟地址空间为应用程序提供了比物理内存芯片更多的内存。

虚拟地址空间允许页面交换进出内存,因此更多应用程序可以共享相同的物理内存,您也可以将硬盘空间用作虚拟内存,虽然这有点慢,并且可能导致颠簸。

使用虚拟地址空间,应用程序会产生一种错觉,即拥有整个物理内存可供使用,应用程序彼此隔离,不会破坏彼此的内存。

希望我能帮上忙……

【讨论】:

猜你喜欢
  • 2020-04-16
  • 2014-12-11
  • 1970-01-01
  • 1970-01-01
  • 2019-07-03
  • 1970-01-01
  • 2021-03-18
  • 1970-01-01
  • 2018-01-14
相关资源
最近更新 更多