从事软件开发多年,这是一个非常有意思的话题,理论上是可行的但起码要满足两个条件,有这么容量的缓存其实就是不计代价,其二默认的操作系统可以针对缓存进行移植对接。这种想法只是在适用于理想状态下,真是状态下意义不是很大,毕竟成本因素占比还是非常大。未来科技的发展不排除有这种设想,主要因素还是成本方面的问题,现在配置电脑都会带着ssd硬盘,而且ssd硬盘在诞生之初价格也是高的吓人,随着技术的成熟以及产业链的成熟慢慢,成本逐渐下来了。
现在讲下缓存的原理,缓存就是数据交换区,计算机的工作原理是CPU访问的数据都是放置在内存区,如果需要保存操作硬盘来完成,现在常说的运行的程序文件存储在硬盘上,运行的时候在内存上,为了提升效率专门在cpu上集成一个缓冲区,就是我们说到的缓存,cpu的缓存作用就是数据交换区,cpu在访问数据的时候第一优先级先把缓存里面的数据取出来,如果没有再从内存中获取,但这个效率就会下降很多,大家都知道缓存是个好东西,但由于其材质等方面的因素价格要比普通的内存多上好几倍,而且为了不影响cpu的性能体积还不能太大,所以常见的缓存一般都设置的很小,即使很小性能上也会提升许多。
其实这种方式在软件上利用空间换时间的方式,有些大块头的软件为了提升运行的效率提前分配一块内存运行,这样运行的时候直接运行内存中程序,效率就会提升许多,所以无论硬件还是软件都有想通之处,现在的缓存技术已经升级到二级,三级的水准,道理还是相似,就是起到数据缓冲区的作用,而且这里面涉及到一个非常重要的概念,由于数据交换的频度或者调用的次数不一样,对于缓冲区数据的交换需要按照一定的算法规则来实现,不同的缓冲区可能采用不同的算法,不要觉得CPU里面的编程就变少了,只能讲软件无处不在。
多级缓存的原理如果再次深入学习的话,会变得十分复杂,缓存之间还需要固定的通讯格式,如果再加上多核cpu复杂度又是数量级的提升,所以芯片这块国内还是非常大的弱项,主要这项技术需要一个长时间的积累,不是单靠拿出几年的时间就能突击出来的,现在国内能做出来的基本上属于底端芯片,华为的麒麟芯片算是比较高端的了,也是经历多少年的打磨,在技术上距离顶端的还是存在一定的距离,不过随着时间的推移国人早晚会拥有属于自己的芯片技术,毕竟落后的太多了。
所以我们平时在买电脑的时候,一旦想追求点高速度就需要有大的缓存,而且增加一点很小的缓存就能增加不少金钱,所以缓存技术算是cpu里面一项非常重要的技术创新