虚拟内存
虚拟内存概念
虚拟内存是指在实际设备上并不存在的虚拟 RAM 空间。
它的作用是当应用运行时,所需内存超出了设备实际拥有 RAM ,操作系统创造出的虚拟内存环境。
虚拟内存如何实现?假设一个操作系统需要 120 MB 的 RAM 来运行所有应用,但是实际内存只有 50 MB。 此时操作系统会调用,VMM(virtual memory menager) 去管理这 120 MB 内存空间,由于实际无内存不足, VMM 会在硬盘上创建 70MB 的空间充当内存,这个空间山创造的对所需内存的映射我们称为页面文件。 也可以叫交换文件,页面文件和实际物理内存组合在一起,包含类应用所需的所有内存,当应用需要 内存超过实际范围时,VMM 会查找实际内存中目前未被使用的块,将内容复制到交换文件中,然后将交换文件 中对应的应用所需内存,放到实际的内存中。这个过程称为页面调度或交换。
因为有了虚拟内存,实现了多个任务的同步运行提供了存储保障,即使实际内存不足,也可以利用虚拟内存实现任务调度。
但是当应用大量依赖于虚拟内存时,由于 RAM 和实际内存之间读写速度存在差异,所以就会使系统具有卡顿。这种频繁的页面调度对系统的性能影响我们称为抖动。