Cache vs Buffer 高速缓存和缓冲区

缓存区cache和缓冲区buffer都是临时存储区,但它们在许多方面有所不同。缓冲区buffer主要存在于RAM中,作为CPU暂时存储数据的区域,例如,当计算机和其他设备具有不同的速度时, buffer存储着缓冲的数据, 这样计算机就可以完成其他任务了。另一方面,高速缓存cache是一种高速存储区域,可以是主存或硬盘等其他独立存储区域的一部分。这两种缓存方法分别被称为内存缓存和磁盘缓存。

cache在cpu和内存之间,它的速度比内存快,但是造价高 
为了确保高速,缓存cache是由静态RAM而不是动态RAM。这个区域用来存储几乎所有程序在运行时所访问的信息,这使得它更快,而不是每次程序运行时从磁盘中搜索这些信息,因为这将慢得多。缓冲区buffer是由普通RAM的计算机上运行,并跟踪正在运行的程序发生变化的暂时存储在变化最终被保存在磁盘上,例如,文字处理器的任务被写入首先读取从存储在缓冲区中的数据,和然后文字处理器更新在缓冲区的内容。

缓冲区buffer主要用于输入/输出(I/O)过程,例如,在打印中。当一个发送给打印机打印的文件时,信息被存储在一个缓冲区中,然后打印机就可以按照自己的步调访问这些信息,这样可以释放CPU来执行其他任务。在将一些信息(burning information)存储到光盘上时,也会使用缓冲区,其中被数据首先存储在缓冲区中,然后在过程中将其传输到磁盘。缓存buffer主要用于读取和写入主磁盘过程中,通过使不同程序所使用的类似数据易于访问而使进程更快。

缓存Cache可以是RAM的一部分,也可以是磁盘的一部分。当主磁盘用作缓存时,该过程称为磁盘缓存,这也用作内存缓存,其中最近使用的数据存储在磁盘缓存中。如果正在运行的程序希望从磁盘访问数据,它首先检查磁盘缓存,如果磁盘缓存中所需数据不可用,则只检查磁盘。这使得数据访问过程快得多,因为从磁盘访问速度慢得多。缓冲区Buffer只能是RAM的一部分。

总结:

1、Cache是高速存储区域,而Buffer是RAM的临时存储的正常存储区域。

2、Cache是由静态RAM构成的,它比Buffer较慢的动态RAM更快。

3、Buffer主要用于输入/输出过程,而Cache则用于从磁盘读取和写入进程。

4、Cache也可以是磁盘的一部分,而Buffer只是RAM的一部分。

5、在Cache不能使用的情况下,可以在键盘中使用Buffer来编辑打字错误。

原文:http://www.differencebetween.net/technology/hardware-technology/difference-between-cache-and-buffer/

cache与buffer的区别的更多相关文章

  1. cache 和 buffer的区别

    cache 和 buffer的区别: Cache:高速缓存,是位于CPU与主内存间的一种容量较小但速度很高的存储器.由于CPU的速度远高于主内存, CPU直接从内存中存取数据要等待一定时间周期,Cac ...

  2. Linux Free命令每个数字的含义 和 cache 、buffer的区别

    Linux Free命令每个数字的含义 和 cache .buffer的区别 我们按照图中来一细细研读(数字编号和图对应)1,total:物理内存实际总量2,used:这块千万注意,这里可不是实际已经 ...

  3. Cache和Buffer的区别

    一.研究数据库的人这样理解:http://wenku.baidu.com/view/32b8b13e376baf1ffc4fad7e.html Cache和Buffer是两个不同的概念,简单的说,Ca ...

  4. [转] Cache 和 Buffer的区别

    程序员开发过程中经常会遇到“缓存”.“缓冲”等相似概念,之前没有特别关注,现在停下来做一下总结,才能更好地前行. 先来下枯燥的概念: 1.Cache:缓存区,是高速缓存,是位于CPU和主内存之间的容量 ...

  5. Cache 和 Buffer 的区别在哪里

    Cache和Buffer是两个不同的概念,简单的说,Cache是加速“读”,而buffer是缓冲“写”,前者解决读的问题,保存从磁盘上读出的数据,后者是解决写的问题,保存即将要写入到磁盘上的数据.在很 ...

  6. Cache、Buffer的区别

    什么是Cache?什么是Buffer?二者的区别是什么? Buffer和Cache的区别 buffer与cache操作的对象就不一样. 1.buffer(缓冲)是为了提高内存和硬盘(或其他I/O设备) ...

  7. Cache和Buffer的区别(转载)

    1. Cache:缓存区,是高速缓存,是位于CPU和主内存之间的容量较小但速度很快的存储器,因为CPU的速度远远高于主内存的速度,CPU从内存中读取数据需等待很长的时间,而  Cache保存着CPU刚 ...

  8. 【linux】Cache和Buffer的区别

  9. cache和buffer区别探讨

    一. 1.Buffer(缓冲区)是系统两端处理速度平衡(从长时间尺度上看)时使用的.它的引入是为了减小短期内突发I/O的影响,起到流量整形的作用.比如生产者——消费者问题,他们产生和消耗资源的速度大体 ...

随机推荐

  1. mysql分组取最大(最小、最新、前N条)条记录

    在数据库开发过程中,我们要为每种类型的数据取出前几条记录,或者是取最新.最小.最大等等,这个该如何实现呢,本文章向大家介绍如何实现mysql分组取最大(最小.最新.前N条)条记录.需要的可以参考一下. ...

  2. Triangulation by Ear Clipping(耳切法处理多边形三角划分)

    使用EarClipping三角化多边形(翻译) ---Triangulation by Ear Clipping(http://www.geometrictools.com/Documentation ...

  3. [原创]超强C#图片上传,加水印,自动生成缩略图源代码

    <%@ Page Language=“C#“ AutoEventWireup=“true“ %> <%@ Import Namespace=“System“ %> <%@ ...

  4. 【spring boot】在spring boot下使用多线程

    使用场景: 方法处理到某一步,需要将信息交给另一个线程去处理!! =================================================================== ...

  5. @Cache(usage = CacheConcurrencyStrategy.READ_WRITE)什么意思??

    从hibernate2.1开始ehcache已经作为hibernate的默认缓存方案(二级缓存方案 sessionfactory级别), 在项目中有针对性的使用缓存将对性能的提升右很大的帮助. 要使用 ...

  6. mac与phy怎样实现网络自适应

    这两天改动网卡驱动以实现10/100/1000M自适应,因此研究了下phy芯片和emac驱动怎样兼容10/100/1000M网络环境,记录在此. 网络中设备端数据链路层由mac芯片和phy芯片组成.p ...

  7. audio的总结

    H5的audio谁都会用, 照着官方api放个标签, play, stop... 实际运用中需要一些兼容性封装: //audio $.audio = function(params) { var $a ...

  8. FinalShell Mac OS版,Linux版安装及教程

    该版本功能和windows版基本一样,但是主机检测和远程桌面功能由于兼容性问题暂时无法使用,以后会支持. 该版本功能和windows版基本一样,但是主机检测和远程桌面功能由于兼容性问题暂时无法使用,以 ...

  9. OpenCV学习笔记八:opencv_photo模块

    一,简介: 该库用于数码照片的处理,处于发展中,目前只包含如下算法: //! restores the damaged image areas using one of the available i ...

  10. 【Unity】基于MVC模式的背包系统 UGUI实现

    前言 本文基于MVC模式,用UGUI初步实现了背包系统. Control层包括了点击和拖拽两种逻辑. 博文首发:http://blog.csdn.net/duzixi 下载地址:https://git ...