必威体育Betway必威体育官网
当前位置:首页 > IT技术

缓冲管理

时间:2019-09-01 14:40:00来源:IT技术作者:seo实验室小编阅读:68次「手机版」
 

缓冲

为了缓和cpu与I/O设备速度不匹配的矛盾,提高它们之间的并行性,在现代计算机系统中,几乎所有的I/O设备在与CPU交换数据时,都用了缓冲区。缓冲管理的主要职责是组织好这些缓冲区,并向进程提供获得和释放缓冲区的手段。

缓冲机制的作用:1)缓和CPU和I/O设备间速度不匹配的矛盾 2)减少对CPU 的中断频率 3)提高CPU和I/O设备的并行性

可以通过下面这个例子分析缓冲区对CPU中断频率和响应时间的影响。

例子:在一个远程通信系统中,在本地接收从远程终端发来的数据,速率为100kb/s。

1)对于一位缓冲

CPU中断频率为100kb/1b=100k,CPU响应时间为10us。

2)对于一个8缓冲区

设备可以等到8位缓冲区填充完后再向CPU发出中断,所以CPU中断频率为100kb/8b=12.5k

当缓冲区填满时,不能再接受下一位的输入,所以CPU的响应时间必须是1b/100kb=10us。

3)对于两个8位缓冲区

设备可以等到1号8位缓冲区填充完后再向CPU发出中断,所以CPU中断频率为100kb/8b=12.5k

当1号8位缓冲区填满时,可以将本区内容传递至2号缓冲区进行送内存操作,而1号缓冲区继续接受下8位数据,所以CPU的响应时间必须是8b/100kb=80us。

缓冲的实现机制:

按照系统中设置的缓冲区个数及对缓冲区的组织方式,缓冲区的实现机制分为单缓冲、双缓冲、循环缓冲、缓冲池机制。

1)单缓冲

在块设备输入数据的过程中,首先把磁盘数据送到缓冲区,花费的时间为Ts,(简记为Ts过程)

                                      然后把操作系统缓冲区的数据送到用户区,花费的时间为Tm,(简记为Tm过程)

                                      最后用户进程对这批数据进行计算,花费的时间为Tc。(简记为Tc过程)

当Tc过程与Tm过程操作同一块缓冲区时,这两个操作不能并行(读写锁),Ts过程和Tm一直都不能并行

单缓冲的情况如下:

当Ts>Tc,(上图)主要是Tm与Ts不能并行,因此总时间T=(n*(Ts+Tm)+Tc)/n=Ts+Tm

当Ts<Tc,(上图)主要是Tm与Tc不能并行,因此总时间T=(n*(Tc+Tm)+Ts)/n=Tc+Tm

综上,单缓冲下总时间T=max(Ts+Tc)+Tm

2)

双缓冲条件下,Ts过程与Tm过程可以并行,Tm过程与Tc过程不能并行

当Ts>Tc时,(上图)由于Tm<<Tc且Tm<<Ts,所以T=(n*Ts+Tm+Tc)/n=Ts=max(Tc,Ts)

当Ts<Tc时,Tm与Tc不能并行,T=(n*(Tm+Tc)+Ts)/n=Tm+Tc=max(Tc,Ts)+Tm,但Ts<Tc这种情况非常少,所以一般做题时填双缓冲的时间都填Ts>Tc情况下的max(Tc,Ts)

综上,双缓冲时间为max(Tc,Ts)

3)循环缓冲

相比双缓冲区,增加了缓冲区的数量。对于多缓冲区,将它们组织成循环缓冲的形式。

4)缓冲池

为了提高缓冲区的利用率,目前广泛采用公用缓冲池机制。在缓冲池中设置多个缓冲区,可供若干个进程共享。

参考博客:https://blog.csdn.net/a649339266/article/details/77836813

相关阅读

淘宝新手卖家创业如何经营管理?

做淘宝为了是可以挣钱,创业,买房子,买车,这是无数淘宝卖家的创业梦想,刚开店的卖家都认为遥不可及,太难了,根本就是无法做到,无法想象的事

全方位网店管理 淘管提升效率看得见

随着国内电子商务的逐步发展,如何有效管理网店生意,逐步成了众多企业的关注重点随着订单量的日益增长,其中发货导致的客户投诉不断

世界500强公司——华为研发项目的管理精髓

在中国南方一个新兴的城市—深圳,成立三十年时间,诞生了许多优秀的科技型企业,华为公司就是其中的一个。华为公司成立于1984年,从三万

使用nrm管理npm源

1,安装nrmnpm install nrm -g 2, 可以使用 nrm ls 命令查看默认配置, 带*号即为当前使用的配置3,nrm add 命令添加公司私有npm源,

金天鹅酒店管理系统免费直连携程 帮酒店增收益

2016年6月,金天鹅酒店管理软件免费打通与去哪儿平台的直连;2016年10月,金天鹅酒店管理系统正式打通与携程平台的无缝连接,酒店可免费

分享到:

栏目导航

推荐阅读

热门阅读