一、前言
以前的程序,都是直接运行在物理内存上的,即程序在运行时访问的地址都是物理地址。这种方式带来的问题就是:如何把有限的物理内存分配给这么多程序使用呢?
与此同时,这种内存分配策略也带来几个问题:
(1) 程序间的地址不隔离,恶意程序可能会借此损坏正常程序的数据。
(2) 内存使用效率低,由于内存大小有限,当剩余的内存不够装载接下来要运行的程序的时候,正在运行的程序需要暂停换出到磁盘,以空出足够的内存来,等它运行完了再换回来。这样大量的数据进进出出,导致内存的使用效率非常低
一、前言
以前的程序,都是直接运行在物理内存上的,即程序在运行时访问的地址都是物理地址。这种方式带来的问题就是:如何把有限的物理内存分配给这么多程序使用呢?
与此同时,这种内存分配策略也带来几个问题:
(1) 程序间的地址不隔离,恶意程序可能会借此损坏正常程序的数据。
(2) 内存使用效率低,由于内存大小有限,当剩余的内存不够装载接下来要运行的程序的时候,正在运行的程序需要暂停换出到磁盘,以空出足够的内存来,等它运行完了再换回来。这样大量的数据进进出出,导致内存的使用效率非常低