cash and buffer

硬件:

    cash:高速缓冲器,位于CPU与内存(主存)之间,由操作系统控制,经常使用的缓存会存进这个地方。

    内存(主存):由用户和系统分配,平时程序用的就是这里。

  buffer(缓冲器):

    缓冲寄存器又称缓冲器,它分输入缓冲器和输出缓冲器两种。

    用在磁盘和内存的I/O上,存到一定的缓冲再一次过读/写。

    前者的作用是将外设送来的数据暂时存放,以便处理器将它取走;后者的作用是用来暂时存放处理器(cpu)送往外设的数据。

    由于缓冲器接在数据总线上,故必须具有三态输出功能。

软件:

  cash:在cash里面的缓存

  buffer:在内存里面的缓存

  区别:

  cache通常是硬件或OS提供,用户程序不需要(多数情况下也没有办法)为其分配存储的机制,通常它在使用者,如用户 程序看来是透明的,它属于提供cache的一方而不是其使用者;

  而buffer往往是由用户程序知道并且与OS共享 (换言之,用户程序需要分配一块内存, 并告诉OS这块内存将要用于某种操作),或由OS分配,并在主机和外设之间共享(例如网卡的DMA buffer),在使用者看来它通常不是透明的,这些内存往往属于控制内存的程序,如用户程序,或OS,而不是向其传递数据的OS,或硬件。

你可能感兴趣的:(cash and buffer)