请问内存缓冲区和硬盘缓冲区有什么区别?一般编程时所说的写入缓冲区是指哪一个?

2025-02-25 04:37:14
推荐回答(4个)
回答1:

一般编程所说的缓冲区指的是内存缓冲区,这是程序所设置的一块内存区域,用来暂存从其他设备读入的数据或即将写入其他设备的数据。
而硬盘缓冲区有两种:
一是上面说的内存缓冲区,只是它是专门为读取或写入硬盘而设置的,因此可以简称为硬盘缓冲区。这个的例子是很多下载软件如迅雷中都有的磁盘缓存设置,即先将数据下载到内存中缓存起来,达到一定数量后再写到硬盘里,从而减少了读写硬盘的次数,达到保护硬盘的目的。
另一种是硬盘本身携带的一块随机存储器,大小通常为数MB到几十MB,这个是固化在硬盘内部的。它的作用和前一种类似,也是为了增加读写效率和保护硬盘,只是它是系统中所有程序所共用的,并且除了驱动程序外,通常的程序无法控制它,因此很多程序还会从内存中再设置一块缓存供自己使用。

回答2:

两个所指的位置不同,硬盘缓冲区是指硬盘驱动器上的缓冲区,内存缓冲区位于硬盘里面。

回答3:

缓冲区分好多种,内存里面也能开辟一块地址空间做缓冲,堆栈也能做缓冲。
没有什么必然的联系。

回答4:

位置不同 。