高速缓存与缓冲区
1. 磁盘缓冲区是在磁盘中 还是在内存中啊 高速缓冲存储器是在cpu中还是在内存呢
磁盘缓冲区?
1、内存缓冲区,只是它是专门为读取或写入硬盘而设置的,简称为硬盘缓冲区
2、磁盘的缓存,硬盘与外部总线交换数据的缓存,它是容量固定的硬件,比内存缓冲区更有效果,
因此买硬盘时,缓存越大,性能更好
3、高速缓冲存储器(高速缓存)是在cpu中,越好的CPU高速缓存越大,还不止一个,有1、2、3级之分(网络)缓存越大,性能更好
大至以上,这些属于电脑基础知识,看专业书更好
2. 什么是Oracle SGA 缓冲区高速缓存
看看oracle官方的解释就知道了,这些英文也不是很难,应该不用我翻译了,个别不认识的单词用金山词霸翻译一下就可以了.
A system global area (SGA)(系统全局区) is a group of shared memory structures that contain data and control information for one Oracle database instance(实例). If multiple users are concurrently connected to the same instance, then the data in the instance's SGA is shared among the users. Consequently(因此), the SGA is sometimes called the shared global area(共享全局区).
An SGA and Oracle processes constitute(构成) an Oracle instance. Oracle automatically allocates(分配) memory for an SGA when you start an instance, and the operating system reclaims(收回) the memory when you shut down the instance. Each instance has its own SGA.
The SGA is read/write. All users connected to a multiple-process database instance can read information contained within the instance's SGA, and several processes write to the SGA ring execution of Oracle.
The SGA contains the following data structures:
Database buffer cache(数据高速缓冲区)
Redo log buffer(重做日志缓冲区)
Shared pool(共享池)
Java pool
Large pool (optional)
Streams pool
Data dictionary cache
Other miscellaneous information
Part of the SGA contains general information about the state of the database and the instance, which the background processes need to access; this is called the fixed SGA. No user data is stored here. The SGA also includes information communicated between processes, such as locking information.
If the system uses shared server architecture, then the request and response queues and some contents of the PGA are in the SGA.
3. 硬盘的高速缓存与硬盘缓冲区是一回事儿 吗
不是一回事。
硬盘的高速缓存是在硬盘内部,用于硬盘的机械读写操作与硬盘接口之间的缓冲而设置的。
硬盘缓冲区是操作系统的一部分,是利用物理内存缓冲向硬盘的读写数据。
4. 高速缓冲存储器的主要作用是什么,它与主内存有什么关系
高速缓存储器分布在CPU、硬盘、光驱等配件上。
存储器的高速缓冲存储器存储了频繁访问的主内存位置的内容及这些数据项的存储地址。当处理器引用主内存中的某地址时,高速缓冲存储器便检查是否存有该地址。
如果存有该地址,则将数据返回处理器;如果没有保存该地址,则进行常规的存储器访问。因为高速缓冲存储器总是比主内存速度快,所以当主内存的访问速度低于微处理器的速度时,常使用高速缓冲存储器。
(4)高速缓存与缓冲区扩展阅读:
高速缓冲存储器是存在于主存与CPU之间的一级存储器, 由静态存储芯片(SRAM)组成,容量比较小但速度比主存高得多, 接近于CPU的速度。在计算机存储系统的层次结构中,是介于中央处理器和主存储器之间的高速小容量存储器。它和主存储器一起构成一级的存储器。高速缓冲存储器和主存储器之间信息的调度和传送是由硬件自动进行的。
5. oracle 库高速缓存和缓冲区缓存 区别
数据高速缓存跟操作系统的缓存类似,其存储最近从数据文件中读取的数据块,其中的数据可以被所有的用户所访问。如当我们利用Select语句从数据库中查询员工信息的时候,其首先不是从数据文件中去查询这个数据,而是从数据高速缓存中去查找,而没有这个必要再去查询磁盘中的数据文件了。只有在数据缓存中没有这个数据的时候,数据库才会从数据文件中去查询。Oracle数据库为什么要如此设计呢?这是由于数据库在读取数据的时候,读取内存的速度比读取磁盘的速度要快很多倍,所以这种机制可以提高数据的整体访问效率。
缓冲区缓存
重新启动数据库后,系统就会为数据库分配一些空闲的缓存块。空闲缓存块中是没有任何数据的,他在那边默默的等着别写入记录。当Oracle 数据库从数据文件中读取数据后,数据库就会寻找是否有空闲的缓存块,以便将数据写入其中。
一般来说,数据库在启动的时候,就会在内存中预先分配这些缓存块。所以,Oracle数据库在启动的时候,会占用比较多的内存。但是,这可以免去在实际需要时向内存申请的时间。所以,有时候Oracle数据库虽然已启动,内存的占用率就很高,但是,其后续仍然可以正常运行的原因。而其他数据库虽然刚启动的时候内存占用率不是很高,但是,但系统内存到达80%以上时,在进行数据处理就会受到明显的影响。
6. 在cpu中配置高速缓冲器cache是为了解决
高速缓存cache是为了解决CPU与内存之间速度不匹配的问题。高速缓存就是数据交换的缓冲区(Cache),当某一硬件要读取数据时,首先会从缓存中查找需要的数据,如果找到了则直接执行,找不到则再从内存中找。由于缓存的运行速度比内存快得多,所以缓存的作用就是帮助硬件更快地运行。
7. 计算机系统中的缓冲(buffer)和高速缓存(cache)的区别
缓冲区是开辟出来的一片临时存储区 用于交换信息
高缓只是为了解决CPU与内存之间速度不匹配的问题
8. 缓冲区的概念是什么
缓冲区,计算机读取数据时, 在内存中开辟的临时存储数据的区域.
简单说来是一块连续的计算机内存区域, 可以保存相同数据类型的多个实例。
形象的说就是一个水池的水运到另一水池,你用的水桶就是“缓冲区”
9. 缓存与缓冲的区别与联系 有什么详细的举例
相信大家现在都使用过手机和电脑了,在现在这个互联网已经普及的时代,这两种电子产品真的十分的常见了。那么大家有没有缓存过视频呢?有没有在看视频的时候进行过缓冲呢?下面我们来了解一下关于缓存与缓冲的区别与联系。
缓存是指把常用数据存储到可以快速获取的区域,以备重复利用,一般叫做cache. 缓存能提高效率缓冲是指在数据流转过程中,不同层次速度不一致时,利用缓冲区来缓解上下层之间速率问题,一般叫做buffer. 缓冲能提高速度buffer(缓冲)是为了提高内存和硬盘或其他I/0设备之间的数据交换的速度而设计的。cache(缓存)是为了提高cpu和内存之间的数据交换速度而设计。cpu在执行程序所用的指令和读数据都是针对内存的也就是从内存中取得的。由于内存读写速度慢,为了提高cpu和内存之间数据交换的速度,在cpu和内存之间增加了cache,它的速度比内存快,但是造价高,又由于在cpu内不能集成太多集成电路,所以一般cache比较小。
以后intel等公司为了进一步提高速度,增加了二级cache,甚至三级cache,它是根据程序的局部性原理而设计的就是cpu执行的指令和访问的数据往往在集中的某一块,所以把这块内容放入cache后,cpu就不用在访问内存了,这就提高了访问速度。当然若cache中没有cpu所需要的内容,还是要访问内存的。 缓冲buffers是根据磁盘的读写设计的,把分散的写操作集中进行,减少磁盘碎片和硬盘的反复寻道,从而提高系统性能。linux有一个守护进程定期清空缓冲内容,即写入磁盘也可以通过sync命令手动清空缓冲。
举个例子吧,我这里有一个ext2的U盘,我往里面cp一个3M的MP3,但U盘的灯没有跳动?过了一会儿,或者手动输入sync,U盘的灯就跳动起来了。卸载设备时会清空缓冲,所以有些时候卸载一个设备时要等上几秒钟。修改/etc/sysctl.conf中的vm.swappiness右边的数字可以在下次开机时调节swap使用策略。该数字范围是0-100数字越大越倾向于使用swap。默认为60,可以改一下试试。--两者都是RAM中的数据。简单来buffer是即将要被写入磁盘的,而cache是被从磁盘中读出来的。
buffer是由各种进程分配的,被用在如输入队列等方面。一个简单的例子如某个进程要求有多个字段读入,在所有字段被读入完整之前,进程把先前读入的字段放在buffer中保存。cache经常被用在磁盘的I/O请求上,如果有多个进程都要访问某个文件,于是该文件便被做成cache以方便下次被访问,这样可提高系统性能。
10. 缓存与缓存之间的总线称为啥
缓存与缓存之间的总线称为高速缓冲存储器。缓存就是数据交换的缓冲区叫做高速缓冲存储器(也称Cache),当某一硬件要读取数据时,会先从缓存中查找需要的数据,若找到了则直接执行,找不到的话则从内存中找。