Windows程序存储器与Linux程序存储器

时间:2015-12-10 19:01:02

标签: linux windows linux-kernel virtual-memory

Linux为每个要使用的程序创建虚拟内存页面,操作系统处理将虚拟地址映射到真正的硬件地址,对吗?

但Windows如何做到这一点? Windows程序实际上是否具有转换为真实硬件地址的内存?我也意识到当RAM过度使用时,windows可以使用硬盘内存,而这个过程又被称为虚拟内存,但我相信这是一个完全不同的概念?

1 个答案:

答案 0 :(得分:5)

Windows和Linux(至少在Intel 32/64位系统上)都使用相同的机制实现虚拟内存:硬件支持的页表。 OS和硬件协同工作以进行地址映射。

将程序使用的逻辑地址与物理地址分开的整个概念就是所谓的虚拟内存。使用硬盘作为后备存储是虚拟内存的一种实现,它使用交换文件将虚拟内存量增加到大于系统中安装的物理内存的数量。

虚拟内存是一个非常深入和广泛的主题。也许从这篇Wiki文章Memory Management开始,然后点击谷歌以获得更深入的理解。