什么是虚拟内存?

我们的物理内存主要是指主存,但由于物理主存空间有限,现代操作系统通常会将一部分内存块放置在磁盘上,需要时再装入主存。然而,对于用户程序而言,它不需要关注实际的物理内存是如何管理的,这是因为存在着虚拟内存的机制。

简单来说,虚拟内存是操作系统提供的一种机制,用于将不同进程的虚拟地址与不同内存的物理地址进行映射。

每个进程都拥有自己独立的地址空间,而操作系统则负责将这些虚拟地址映射到实际的物理内存上。

因此,这里就涉及到两种地址的概念:

程序使用的内存地址被称为虚拟内存地址(Virtual Memory Address)。

实际存在硬件内存中的空间地址被称为物理内存地址(Physical Memory Address)。

os-ec171cea-0046-4709-a390-7babf3272c49.png

标签: java, Java面试题, 操作系统, Java问题合集, Java编程, Java问题精选, Java常见问题, 操作系统面试题