一、引子
在这一小节中,我们要学习这一章的最后一个内容,就是虚拟存储器。
在操作系统那门课里,虚拟存储器这个部分,将花整整一个章节来介绍相关的东西。
但是计组这门课当中,虚拟存储器相关的这些概念和内容,在王道书里只有一两页的篇幅。所以这也说明,虚拟存储器这个部分的内容,其实重点还是要在操作系统学习。
因此在小结当中,我们只对这个部分的内容做一个简要的了解。
二、虚拟存储系统
(1)介绍
首先来看什么是虚拟存储系统。
学到这个阶段,大家应该能够体会到,其实我们的计算机系统很多地方都是套一层套一层的。
比如刚开始我们本来以为把内存里的东西丢入 cache 就 OK 了,但是后来我们知道cache,它又分为了L1、L2、 L3 这样的多级cache。每一级的 cache 都是一层套娃。
这个小节我们要学习的虚拟存储系统又是更完美一层的套娃。
之前我们说过微信。比如装在手机里边,总共是 1GB 的大小。当微信启动的时候,我们需要把微信这 1GB 的数据全部调入到内存,微信才可以开始正常的运行。
基于局部性原理,由于我们某一个时间段内只有可能用到微信的某一部分的代码或者数据,因此我们可以把内存里的某一部分数据给它复制一份到 cache 当中,用这样的方式来提升整体的性能。