晕倒,buffer和cache。
cache是指硬件,物理概念。buffer是指需要使用缓存的程序在硬件里申请的一片连续的存储空间,逻辑概念。
就好像网络传输中的网卡和VLAN接口一样,看起来都是接口,但是却工作在不同的层面。
简单地讲,在开发程序的时候,你申请一段内存空间做为你进行硬件I/O的buffer,至于这个buffer是放在内存,还是放在cache里,还是都放,又或是放在pagefile里?。都可以,放在哪里都是你可用的buffer。
而具体是放在哪,那是操作系统的内存调度算法、CPU的缓存调度算法应该去完成的事情,在用户层面的你就不需要操心了。 |