`
卡拉阿风
  • 浏览: 100815 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Buffer Cache notes

 
阅读更多

Buffer(缓冲)是为了提高内存和硬盘(或其他I/O设备)之间的数据交换的数据而设计的。
Cache(缓存)是为了提高CPU和内存之间的数据交换而设计的,一级、二级、三级缓存...

CPU在执行程序所用的指令和读数据都是针对内存的,由于读写数据慢,为了提高CPU和内存之间数据交换的速度在CPU和内存之间增加了Cache,它的速度比内存快,但造价高,又由于在CPU内不能集成太多电路,所以一般Cache比较小,以后Intel公司为了进一步提高数据,又增加了二级Cache,甚至三级Cache,它是根据程序的局部性原理而设计的,就是CPU执行的指令和访问的数据往往在集中的某一块,所以把这块内容放入Cache后CPU就不用再访问内存了,这就提高了速度(当然若Cache中没有CPU所需要的内容,还是要访问内存的)

 

Buffer是根据磁盘的读写设计的,把分散的写操作集中进行,减少磁盘碎片和磁盘的反复寻道,从而提高系统性能。

Cache位于应用程序与物理数据源之间,用于临时存放复制数据的内存区域,目的是为了减少应用程序对物理数据源访问的次数,从而提高应用程序的运行性能。

 

简单的说,Buffer是即将被写入磁盘的,而Cache是被从磁盘中读出来的。

 

Buffer是由各种进程分配的,被用在如输入队列等方面,例子:某个进程要求有多个字段读入,在所有字段被读入完整之前,进程把先读入的字段放在Buffer中保存。

Cache经常被用在磁盘的I/O请求上,如果有多个进程都要访问某个文件,于是该文件便被做成Cache以方便下次被访问,这样可提高系统性能。

分享到:
评论

相关推荐

    oracle性能调优之buffer cache

    Oracle 性能调优之 Buffer Cache Buffer Cache 是 Oracle 中的一种缓存机制,负责将磁盘上的数据 block 读取到内存中,以提高数据库的访问速度。在本文中,我们将详细介绍 Buffer Cache 的工作原理、状态、管理和...

    buffer cache深度分析.zip

    Buffer Cache是数据库管理系统中至关重要的一个组件,尤其是在Java应用程序中,它对于提升系统性能起着决定性作用。Buffer Cache深度分析涉及到内存管理、缓存命中率优化、并发控制等多个方面,是理解Java数据库连接...

    深入Buffer Cache 原理

    ### 深入Buffer Cache 原理 #### Buffer Cache 概述 Buffer Cache作为System Global Area (SGA) 的一部分,在Oracle数据库中扮演着极其重要的角色。它的主要任务是缓存数据块以减少磁盘I/O操作,提高数据访问速度...

    Oracle Buffer和Cache的区别

    Oracle数据库中的Buffer Cache和一般的Cache概念虽然相似,但它们在具体应用中有着不同的侧重点。首先,我们需要理解Buffer Cache的基本概念。在Oracle数据库系统中,Buffer Cache是内存结构的一部分,它存储了最近...

    oracle_buffer_cache深入分析

    ### Oracle Buffer Cache 深入分析 #### 一、Buffer Cache 概念及重要性 Oracle 数据库的核心功能之一就是高效地管理和访问数据。而为了提高数据访问速度,Oracle 引入了一个重要的内存组件——Buffer Cache(数据...

    Oracle 中 Buffer Cache 的研究.pdf

    Oracle数据库中的Buffer Cache是数据库性能优化的关键组件,主要用于缓存数据块,以提高用户访问数据文件数据的效率。Buffer Cache的工作原理和参数设置对于数据库性能有着显著的影响。本文将深入探讨Buffer Cache的...

    Linux内存中Swap和Buffer Cache机制

    Linux内存管理是操作系统的核心组成部分,尤其在服务器环境中,理解Swap和Buffer Cache机制至关重要。Swap空间是Linux实现虚拟内存的关键,它允许系统将物理内存中暂时不用的数据存储到硬盘上,以此扩展内存容量。当...

    深入学习Buffer cache

    Buffer Cache是Oracle数据库管理系统中的一个重要组件,主要用于存储从数据文件中读取的数据块,以减少对磁盘的物理I/O操作,从而显著提升数据库的性能。在Oracle 10g中,Buffer Cache的设计和管理更加先进,实现了...

    Oracle buffer cache

    Oracle Buffer Cache 深度解析 Oracle Buffer Cache 是 Oracle 数据库中的一种内存缓存机制,用于提高数据库的性能。Buffer Cache 通过将频繁访问的数据块缓存在内存中,减少了磁盘 I/O 操作,从而提高了数据库的...

    Linux操作系统中内存buffer和cache的区别.docx

    Linux 操作系统中内存 buffer 和 cache 的区别 在 Linux 操作系统中,内存 buffer 和 cache 是两个重要的概念,它们都是占用内存的,但是它们的作用和特点却不同。本文将详细介绍内存 buffer 和 cache 的概念、区别...

    buffer cache深度分析.docx

    buffer cache深度分析

    linux内存中buffer与cache的区别

    ### Linux内存中Buffer与Cache的区别 #### 概述 Linux操作系统在管理内存资源时采用了高效且灵活的方法。当我们使用`free`命令查看系统的内存使用情况时,可能会注意到一个现象:即使系统似乎没有运行太多的应用...

    Linux内存buffer和cache的区别

    ### Linux内存管理中的Buffer与Cache区别详解 #### 一、引言 在现代操作系统中,内存管理是一项极其重要的任务,特别是在Linux这样的多用户多任务环境中。Linux系统在内存管理方面采取了许多高效的策略来提高系统...

    Linux操作系统中内存buffer和cache的区别.pdf

    ### Linux操作系统中内存buffer和cache的区别 #### 一、引言 在Linux操作系统中,内存管理是一项关键的技术,它直接影响到系统的性能和稳定性。本文将详细介绍Linux系统中内存buffer和cache的区别及其工作原理,...

    操作系统课程作业-队列管理、进程管理、内存管理、bufferCache、系统文件、内存管理.zip

    操作系统课程作业-队列管理、进程管理、内存管理、bufferCache、系统文件、内存管理.zip

    Linux系统内核文件Cache管理机制

    Page Cache和Buffer Cache之间的关系是,每个Page Cache条目可能包含多个Buffer Cache条目。VFS(虚拟文件系统)处理应用程序与Page Cache之间的数据交换,通过read和write等接口提供服务。内存管理系统在分配和回收...

    Oracle 数据缓冲区调优精选

    在Oracle数据库系统中,数据缓冲区(Buffer Cache)是用来存储数据文件中的数据块的内存区域,通过缓存数据,避免频繁地进行磁盘I/O操作,从而提高数据库的性能。本课件“Oracle 数据缓冲区调优精选”由CUUG网络公开...

    linux下释放cache内存

    为了提升文件系统访问速度,Linux内核会利用空闲内存来缓存文件数据(称为Page Cache)和其他类型的缓存(如Buffer Cache)。这样做的目的是减少磁盘I/O操作,从而提高系统性能。 然而,在某些情况下,用户可能会...

Global site tag (gtag.js) - Google Analytics