缓存区处理和控制方法、设备及存储设备技术

技术编号:3854956 阅读:214 留言:0更新日期:2012-04-11 18:40
本发明专利技术实施例公开一种缓存区处理和控制方法、设备及存储设备。该缓存区处理方法包括:向缓存区控制设备发送缓存区大小计算请求,缓存区大小计算请求中携带与本次输入输出操作相关的操作记录信息;接收缓存区控制设备根据操作记录信息获得并反馈的缓存区大小信息;根据缓存区大小信息调节缓存区的大小。本发明专利技术实施例能够可以对缓存区大小进行动态调节,且通用性较好,准确度较高。

【技术实现步骤摘要】

本专利技术实施例涉及计算机
,尤其涉及一种緩存区处理和控制方 法、设备及存储设备。
技术介绍
输入输出(Input and Output,以下简称IO)技术一直占据着程序开发 技术中的重要地位。例如文件读写处理即为一种IO技术,在每读写一个字节 时都需要对磁盘IO进行操作。由于内存存取时间单位是纳秒级,而磁盘存取 时间单位是毫秒级,因此磁盘IO操作相对于内存操作来说,效率低下。为了解决这一问题,现有技术在内存中开辟緩存区,将需要读写的数据 存放在緩存区中,在緩存区满后一次性将数据写入磁盘,从而大大提升了磁 盘IO处理的速度。缓存区的大d、一般由程序员根据经验或者测试值直接设 定,在程序运行过程中也不允许修改緩存区的大小,在所有的同类操作中都 使用该同一緩存区。然而,緩存区太大会导致内存消耗增大,基于网络传输 的IO操作也容易失败而导致程序异常;緩存区太小又无法达到减少磁盘IO 操作的频率,无法起到提升IO处理效率的作用,因此緩存区的大小如何设定 成为亟待解决的问题。现有技术中是预先设置一个緩存区大小,同时为该緩存区大小提供用户 修改接口,使用户可以根据需要修改緩存区的大小。然而,专利技术人在实现本 专利技术的过程中发现尽管现有技术中緩存区大小是可调的,但是由于是人为操 作,调节精度低,无法确定最佳的緩存区大小。
技术实现思路
本专利技术实施例提供一种緩存区处理和控制方法、设备及存储设备,可以实现对緩存区大小进行动态调节,从而可以在减低内存消耗的情况下有效提 升IO处理效率,且通用性较好,精度较高。本专利技术实施例提供一种緩存区处理方法,包括向緩存区控制设备发送緩存区大小计算请求,所述緩存区大小计算请求 中携带有与本次输入输出操作相关的操作记录信息;接收所述緩存区控制设备根据所述操作记录信息获得并反馈的緩存区大 小信息;根据所述緩存区大小信息调节緩存区的大小。 本专利技术实施例提供一种緩存区控制方法,包括接收緩存区处理设备发送的缓存区大小计算请求,所述緩存区大小计算 请求中携带有与本次输入输出操作相关的操作记录信息;根据所述操作记录信息获得緩存区大小信息,并将所述緩存区大小信息 发送给所述緩存区处理设备,以使所述緩存区处理设备根据所述缓存区大小 信息调节緩存区的大小。本专利技术实施例提供一种緩存区处理设备,包括第一发送模块,用于向緩存区控制设备发送緩存区大小计算请求,所述 緩存区大小计算请求中携带与本次输入输出操作相关的操作记录信息;第一接收模块,用于接收所述緩存区控制设备根据所述操作记录信息获 得并反馈的緩存区大小信息;第一处理才莫块,用于根据所述緩存区大小信息调节緩存区的大小。本专利技术实施例提供一种緩存区控制设备,包括第二接收模块,用于接收緩存区处理设备发送的緩存区大小计算请求, 所述緩存区大小计算请求中携带有与本次输入输出操作相关的操作记录信 息;第二处理模块,用于根据所述操作记录信息获得緩存区大小信息; 第二发送模块,用于将所述緩存区大小信息发送给所述緩存区处理设备,以使所述緩存区处理设备根据所述緩存区大小信息调节緩存区的大小。本专利技术实施例还提供一种存储设备,包括上述緩存区处理设备以及緩存区控制设备。5本专利技术实施例,通过向緩存区控制设备发送携带操作记录信息的緩存区 大小计算请求,使得緩存区控制设备可以根据该操作记录信息获得用于调节緩存区大小的緩存区大小信息,并将该緩存区大小信息反馈给緩存区处理设 备,使得緩存区处理设备可以根据该緩存区大小信息调节緩存区的大小。本 专利技术实施例在调节緩存区大小时,不需要人工参与,即可对緩存区的大小进 行动态调节,调节精度较好,通过多次IO操作,从而确定出较佳的緩存区大 小。而且,本专利技术实施例所述的緩存区控制设备在获得緩存区大小信息的过程中,可以充分利用与本次IO操作的相关的各种操作记录信息,全面考虑程序的不同运行环境,在调节緩存区大小时的通用性较好。 附图说明为了更清楚地说明本专利技术实施例的技术方案,下面将对实施例中所需 要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发 明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的 前提下,还可以根据这些附图获得其他的附图。图1为本专利技术緩存区处理方法一个实施例的流程图2为本专利技术緩存区控制方法一个实施例的流程图3为本专利技术方法一个实施例的信令流程图4为本专利技术緩存区处理设备一个实施例的结构示意图5为本专利技术緩存区控制设备一个实施例的结构示意图6为本专利技术緩存区控制设备另一个实施例的结构示意图7为本专利技术存储设备一个实施例的结构示意图。具体实施例方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进 行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例, 而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没 有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。图1为本专利技术緩存区处理方法一个实施例的流程图,如图1所示,本实施例的方法包4舌步骤IOI、向緩存区控制设备发送緩存区大小计算请求,所述緩存区大小 计算请求中携带有与本次输入输出操作相关的操作记录信息。举例来说,当完成一次IO操作后,緩存区处理设备可以向緩存区控制设 备发送緩存区大小计算请求,该緩存区大小计算请求中携带了与本次IO操作 相关的操作记录信息。该操作记录信息可以包括与本次IO操作相关的各种记 录数据,举例来说,该记录数据可以包括该IO操作的运行环境参数以及耗费 时间信息等,通过操作记录信息可以全面反映本次IO操作的完成情况。步骤102、接收所述緩存区控制设备根据所述操作记录信息获得并反馈的 緩存区大小信息。具体的,緩存区控制设备在接收到该緩存区大小计算请求后,即可获得 该緩存区大小计算请求中携带的操作记录信息,从而可以根据该操作记录信 息获得緩存区大小信息。获得緩存区大小信息的原则可以为如果本次IO才喿作的效率高于前一 次 IO操作的效率,即本次10操作的数据处理时间少于前一次IO操作的数据处 理时间,则增大緩存区的大小,即当前获得的最佳緩存区大小与前一次获得 的最佳緩存区大小相比,可以进一步增大,从而可以获取更高的IO操作效率; 如果本次IO操作的效率低于前一次IO操作的效率,即本次IO操作的数据处 理时间多于前一次IO操作的数据处理时间,则减小緩存区的大小,即当前获 得的最佳緩存区大小与前一次获得的最佳緩存区大小相比,需要减小,从而 在IO操作效率较低的情况下,通过减小緩存区的大小来提高IO操作的效率, 进而保证IO才喿作的成功率;否则保持不变,即当前获得的最佳緩存区大小与 前一次获得的最佳緩存区大小相等。在具体实现过程中,根据操作记录信息获得緩存区大小信息的过程可以 通过计算技术参数来完成,根据计算获取的技术参数来确定如何调节緩存区 大小,以达到当前最佳的緩存区大小,从而更好的提高IO操作的效率。步骤103、根据所述緩存区大小信息调节緩存区的大小。具体的,緩存区控制设备可以将获得的緩存区大小信息反馈给緩存区处理设备,从而使得緩存区处理设备可以根据该緩存区大小信息调节緩存区的大小。在系统运行一段时间,进行多次10操作后,上述步骤101和步骤102即 可反复执行多次,从而多次对緩存区的大小进行调节,从而使緩本文档来自技高网...

【技术保护点】
一种缓存区处理方法,其特征在于,包括: 向缓存区控制设备发送缓存区大小计算请求,所述缓存区大小计算请求中携带有与本次输入输出操作相关的操作记录信息; 接收所述缓存区控制设备根据所述操作记录信息获得并反馈的缓存区大小信息;  根据所述缓存区大小信息调节缓存区的大小。

【技术特征摘要】

【专利技术属性】
技术研发人员:孙波
申请(专利权)人:成都市华为赛门铁克科技有限公司
类型:发明
国别省市:90[中国|成都]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1