Chapter 9. Virtual Memory¶
约 346 个字 预计阅读时间 2 分钟
虚拟地址本质是在物理地址和 CPU 间增加一个中间层
虚拟内存供软件使用,CPU 通过虚拟地址访问数据时,由 MMU 转换成对应物理地址
Why Virtual Memory?¶
物理空间地址对应着系统中实际拥有的 DRAM 容量,而系统上运行的所有进程都具有相同的虚拟空间地址,因此,虚拟空间地址通常比物理空间地址大得多。
之前的章节中我们提到,虚拟地址空间分为 Kernel Space 和 User Space ,其中只有 kernel 代码可以访问 Kernel Space 。实际上,由于所有进程的 Kernel Space 内容都相同,每个进程的地址空间的 Kernel Space 都映射到同一个物理内存上。
- 第一,将 DRAM 视为虚拟空间地址的一个缓存,仅仅将虚拟地址空间的一部分实际存储在物理存储器中,能够更有效使用内存
- 虚拟地址中未被缓存的内容仍然存储在磁盘中,但不在 DRAM 上
- 第二,大大简化了内存管理
- 第三,对访存进行保护,每个进程有其单独的地址空间
有关虚拟内存,具体内容在大三秋冬学期操作系统课上有所讲解,此处我懒得深入研究了😂