### 虚拟内存是要干什么?
简单地说,就是要运行很多个程序,这些程序用的都是同一条内存。怎么才能让这些程序假装自己在用一条独立的内存呢?虚拟内存做到了这一点...
### 虚拟内存是怎么实现上面这个效果的呢?
以Linux系统为例,Linux系统要求CPU有一个叫“内存管理单元(MMU)”的东西。这个MMU就可以实现把一条内存,抽象成很多条空白的内存给程序用。
### 那这个MMU又是怎么实现的呢?
MMU接收一个虚拟内存地址,返回一个物理内存地址。一个程序调用的虚拟内存地址是连续的,而它对应的物理内存地址不是连续的,这就是MMU的功能。
注:以上内容纯属臆想瞎猜,如有理解上的错误请在评论区指出!