面试题:什么是虚拟内存?为什么需要虚拟内存?
我的回答:
我来讲一下我对虚拟内存的理解:
虚拟内存是程序运行的时,把硬盘上的一部分空间当做“物理内存”来使用,从而扩大了物理内存(RAM)的大小。
我来讲一下为什么要使用虚拟内存?
1.扩大了物理内存空间
应用程序可以使用超过本机物理内存的大小,使更大的程序可以运行起来。
2.内存保护(或者叫内存隔离)
每一个应用程序都使用各自的虚拟内存,这样都保证了自己程序的运行。而且一个程序的崩溃不会影响到其他程序的执行。
3.内存管理
操作系统可以将当前不活跃的程序或者数据移动到虚拟内存上,从而为现在活跃的程序或数据腾出物理内存,保证当前活跃程序的执行。
4.有利于多任务执行
多个程序都执行时,可以保证每个程序都有足够的内存来执行,这样提高了多任务的执行效率。