高速缓存,缓冲区,对换区

江畔何人初见月?江月何年初照人?

文章目录


前言

这三个东西都是为了缓和高速设备和低速设备之间的速度不匹配而想出的策略

对换区

将磁盘分为对换区和文件区,对换区物理上使用连续分配的方式,文件区使用离散分配的方式,因此对换区的磁盘IO速度比文件区的更快。这样,当发生缺页请求时,这样当发生缺页中断的时候,尽量从文件区找你需要的块,UNiX方式,运行之前将进程有关的数据全部放到文件区,故使用过的页面都可以从文件区直接调入,若被使用过的页面需要换出,则写回对换区,下次需要从对换区调入,物理上是属于磁盘的

高速缓存

存放的是低速设备上的某些数据的复制数据,即高速缓存上有的,低速设备上必然有,高速缓存存放的是高速设备上经常要访问的数据,若是高速设备要稳定的数据不在高速缓存中,则高速设备就需要访问低速设备,常见的高速缓存是Cache,磁盘高速缓存计数则是利用内存中的存储空间来暂存从磁盘中读出的一系列盘块中的数据,因此,磁盘高速缓存逻辑上属于磁盘,物理上则是驻留在内存中的盘块。

缓冲区

存放的是低速设备传递给高速设备的数(或高速设备给低速设备的数据)而这些数据在低速设备(或高速设备)上却不一定有备份,这些数据再从缓冲区传送道高速设备(低速设备)

高速设备和低速设备的通信都要经过缓冲区,高速设备永远不会直接区访问低速设备,我们这个缓冲区通常是为了解决CPU与外设之间的速度问题,通常是于内存中,大家熟悉的SPOLLing技术就是使用的缓冲区

相关推荐
ikkkkkkkl13 小时前
进程同步与死锁
操作系统·进程
_OP_CHEN1 天前
【Linux系统编程】(十五)揭秘 Linux 环境变量:从底层原理到实战操作,一篇吃透命令行参数与全局变量!
linux·运维·操作系统·bash·进程·环境变量·命令行参数
添砖java‘’2 天前
常见的进程间通信方式详解
linux·c++·操作系统·信息与通信·进程通信
西西弗Sisyphus2 天前
C++ 实现支持 32 位和 64 位进程的模块枚举
开发语言·c++·操作系统
悄悄敲敲敲3 天前
操作系统的运行-中断
linux·操作系统
江湖人称贺行风4 天前
操作系统八股
操作系统·八股
Trouvaille ~4 天前
【Linux】进程调度与环境变量:Linux内核的智慧
linux·运维·服务器·操作系统·进程·环境变量·调度算法
肆忆_4 天前
Day5:线程池进阶——我从「只会跑 void 任务」到「能返回 future」,并用 Demo 验证跑通
操作系统
CS创新实验室4 天前
计算机考研408【操作系统】核心知识点总结
java·linux·考研·计算机·操作系统·408
_Voosk4 天前
C指针存储字符串为何不能修改内容
c语言·开发语言·汇编·c++·蓝桥杯·操作系统