cache与buffer的区别

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/

原文地址:https://www.cnblogs.com/gered/p/9682678.html

时间: 2024-09-28 06:30:06

cache与buffer的区别的相关文章

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

Linux Free命令每个数字的含义 和 cache .buffer的区别 我们按照图中来一细细研读(数字编号和图对应)1,total:物理内存实际总量2,used:这块千万注意,这里可不是实际已经使用了的内存哦,这里是总计分配给缓存(包含buffers 与cache )使用的数量,但其中可能部分缓存并未实际使用.3,free:未被分配的内存4,shared:共享内存5,buffers:系统分配的,但未被使用的buffer剩余量.注意这不是总量,而是未分配的量6,cached:系统分配的,但未

[转] Cache 和 Buffer的区别

程序员开发过程中经常会遇到“缓存”.“缓冲”等相似概念,之前没有特别关注,现在停下来做一下总结,才能更好地前行. 先来下枯燥的概念: 1.Cache:缓存区,是高速缓存,是位于CPU和主内存之间的容量较小但速度很快的存储器,因为CPU的速度远远高于主内存的速度,CPU从内存中读取数据需等待很长的时间,而  Cache保存着CPU刚用过的数据或循环使用的部分数据,这时从Cache中读取数据会更快,减少了CPU等待的时间,提高了系统的性能.Cache并不是缓存文件的,而是缓存块的(块是I/O读写最小

Cache和Buffer的区别(转载)

1. Cache:缓存区,是高速缓存,是位于CPU和主内存之间的容量较小但速度很快的存储器,因为CPU的速度远远高于主内存的速度,CPU从内存中读取数据需等待很长的时间,而  Cache保存着CPU刚用过的数据或循环使用的部分数据,这时从Cache中读取数据会更快,减少了CPU等待的时间,提高了系统的性能. Cache并不是缓存文件的,而是缓存块的(块是I/O读写最小的单元):Cache一般会用在I/O请求上,如果多个进程要访问某个文件,可以把此文件读入Cache中,这样下一个进程获取CPU控制

Cache和Buffer的区别

1. Cache:缓存区,是高速缓存,是位于CPU和主内存之间的容量较小但速度很快的存储器,因为CPU的速度远远高于主内存的速度,CPU从内存中读取数据需等待很长的时间,而  Cache保存着CPU刚用过的数据或循环使用的部分数据,这时从Cache中读取数据会更快,减少了CPU等待的时间,提高了系统的性能. Cache并不是缓存文件的,而是缓存块的(块是I/O读写最小的单元):Cache一般会用在I/O请求上,如果多个进程要访问某个文件,可以把此文件读入Cache中,这样下一个进程获取CPU控制

缓存与缓冲的区别 Difference Between Cache and Buffer

Cache vs Buffer Both cache and buffer are temporary storage areas but they differ in many ways. The buffer is mainly  found in ram and acts as an area where the CPU can store data temporarily, for example, data meant for other output devices mainly w

linux cache and buffer【转】

转自:http://blog.csdn.net/turkeyzhou/article/details/6426738 版权声明:本文为博主原创文章,未经博主允许不得转载. Linux下对文件的访问和设备的访问通常会被cache起来加快访问速度,这个是系统的默认行为. 而cache需要耗费我们的内存,虽然这个内存最后可以通过echo 3>/proc/sys/vm/drop_caches这样的命令来主动释放.但是有时候我们还是需要理解谁消耗了我们的内存. 我们来先了解下内存的使用情况: [[emai

Linux系统中的Page cache和Buffer cache

Linux系统中的Page cache和Buffer cache Free命令显示内存 首先,我们来了解下内存的使用情况: Mem:表示物理内存统计 total:表示物理内存总量(total = used + free) used:表示总计分配给缓存(包含buffers 与cache )使用的数量,但其中可能部分缓存并未实际使用. free:未被分配的内存. shared:共享内存. buffers:系统分配但未被使用的buffers 数量. cached:系统分配但未被使用的cache 数量.

linux 内存中cache和buffer解析

cache是从磁盘读数据到内存中的缓存,减少读取磁盘的次数, 大家知道的硬盘读取速度过慢. buffer是准备从内存写到硬盘的缓存,缓存中的数据会进行合并 同时,避免频繁操作硬盘. linux 内存中cache和buffer解析

200 from memory cache / from disk cache / 304 Not Modified 区别

三者情况有什么区别和联系,什么情况下会发生200 from memory cache 或 200 from disk cache 或 304 Not Modified? 200 from memory cache / from disk cache / 304 Not Modified 区别 >> python 这个答案描述的挺清楚的:http://www.goodpm.net/postreply/python/1010000008991724/200frommemorycachefromdi