一种内存目标刷新参数的确定方法及装置技术领域
本发明涉及计算机技术领域,特别涉及一种内存目标刷新参数的确定方法及装
置。
背景技术
内存作为服务器系统的关键组成部分,其好坏直接影响服务器能否正常工作。其
中,内存具有间隔性刷新的特性,以保证内存中的数据不被丢失。
现有技术中,可以根据经验值来设置内存的刷新参数,以利用该刷新参数中对应
的刷新时间段,周期性的对内存进行刷新。
然而,若内存的实际刷新时间段远远大于经验值对应的刷新时间段,那么根据经
验值设置的刷新参数会造成刷新资源的浪费;若内存的实际刷新时间段小于经验值对应的
刷新时间段,那么根据经验值设置的刷新参数会造成内存数据丢失。因此,现有技术无法准
确的确定内存的刷新参数。
发明内容
本发明实施例提供了一种内存目标刷新参数的确定方法及装置,以便能准确的确
定内存的刷新参数。
第一方面,本发明实施例提供了一种内存目标刷新参数的确定方法包括:
S1:确定初始刷新参数;
S2:利用初始刷新参数对内存进行刷新;
S3:判断刷新后的内存是否正常工作,若正常工作,则执行S4;否则,将当前使用的
刷新参数确定为目标刷新参数;
S4:按照刷新粒度对所述初始刷新参数进行更新,并利用更新后的刷新参数对内
存进行刷新,并执行S3。
优选地,
根据所述目标刷新参数确定内存使用时对应的刷新参数,其中,所述内存使用时
对应的刷新参数小于所述目标刷新参数。
优选地,
所述利用初始刷新参数对内存进行刷新,包括:
获取启动盘;
将刷新参数的设置程序和内存测试程序拷贝到所述启动盘中;
在所述启动盘中根据所述刷新参数的设置程序设置所述初始刷新参数;
根据内存测试程序读取设置的所述初始刷新参数,并根据读取的所述初始刷新参
数对内存进行刷新。
优选地,
所述启动盘包括:DOS(Disk Operating System,磁盘操作系统)启动盘。
优选地,
所述刷新粒度包括:1ms-32ms;
和/或,
所述内存包括:DRAM(Dynamic Random Access Memory,动态随机存取存储器)。
第二方面,本发明实施例提供了一种内存目标刷新参数的确定装置,包括:
设置单元,用于设置刷新粒度,将所述刷新粒度输出给处理单元;
第一确定单元,用于确定初始刷新参数,将所述初始刷新参数输出给刷新单元;
所述刷新单元,用于利用初始刷新参数对内存进行刷新;
判断单元,用于判断刷新后的内存是否正常工作,若正常工作,则触发处理单元执
行相应操作;否则,触发第二确定单元执行相应操作;
所述第二确定单元,用于将当前使用的刷新参数确定为目标刷新参数;
所述处理单元,用于按照刷新粒度对所述初始刷新参数进行更新,并利用更新后
的刷新参数对内存进行刷新,并触发所述判断单元执行相应操作。
优选地,
所述的内存目标刷新参数的确定装置,进一步包括:
第三确定单元,用于根据所述目标刷新参数确定内存使用时对应的刷新参数,其
中,所述内存使用时对应的刷新参数小于所述目标刷新参数。
优选地,
所述刷新单元,包括:
获取模块,用于获取启动盘;
拷贝模块,用于将刷新参数的设置程序和内存测试程序拷贝到所述启动盘中;
设置模块,用于在所述启动盘中根据所述刷新参数的设置程序设置所述初始刷新
参数;
处理模块,用于根据内存测试程序读取设置的所述初始刷新参数,并根据读取的
所述初始刷新参数对内存进行刷新。
优选地,
所述启动盘包括:DOS启动盘。
优选地,
所述刷新粒度包括:1ms-32ms;
和/或,
所述内存包括:DRAM。
本发明实施例提供了一种内存目标刷新参数的确定方法及装置,通过确定初始刷
新参数,并利用初始刷新参数对内存进行刷新,判断刷新后的内存是否正常工作,若正常工
作,则表明当前使用的刷新参数可以满足内存的正常刷新,通过刷新粒度对该当前使用的
刷新参数进行更新,以利用更新后的刷新参数对内存进行刷新,直到确定出当前使用的刷
新参数使得刷新后的内存无法正常工作时,将当前使用的刷新参数确定为目标刷新参数。
本方案通过该刷新粒度可以准确的确定出内存的刷新参数。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现
有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明
的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据
这些附图获得其他的附图。
图1是本发明一个实施例提供的一种内存目标刷新参数的确定方法流程图;
图2是本发明一个实施例提供的另一种内存目标刷新参数的确定方法流程图;
图3是本发明一个实施例提供的装置所在设备的硬件架构图;
图4是本发明一个实施例提供的一种内存目标刷新参数的确定装置结构图;
图5是本发明一个实施例提供的另一种内存目标刷新参数的确定装置结构图;
图6是本发明一个实施例提供的另一种内存目标刷新参数的确定装置结构图;
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例
中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是
本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员
在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明实施例提供了一种内存目标刷新参数的确定方法,其特征在
于,预先设置刷新粒度,该方法可以包括以下步骤:
步骤101:确定初始刷新参数;
步骤102:利用初始刷新参数对内存进行刷新;
步骤103:判断刷新后的内存是否正常工作,若正常工作,则执行步骤104;否则,执
行步骤105;
步骤104:按照刷新粒度对所述初始刷新参数进行更新,并利用更新后的刷新参数
对内存进行刷新,并执行步骤103。
步骤105:将当前使用的刷新参数确定为目标刷新参数;
本发明实施例提供了一种内存目标刷新参数的确定方法及装置,通过确定初始刷
新参数,并利用初始刷新参数对内存进行刷新,判断刷新后的内存是否正常工作,若正常工
作,则表明当前使用的刷新参数可以满足内存的正常刷新,通过刷新粒度对该当前使用的
刷新参数进行更新,以利用更新后的刷新参数对内存进行刷新,直到确定出当前使用的刷
新参数使得刷新后的内存无法正常工作时,将当前使用的刷新参数确定为目标刷新参数。
本方案通过该刷新粒度可以准确的确定出内存的刷新参数。
在一种可能的实现方式中,为了更快地确定目标刷新参数,所述利用初始刷新参
数对内存进行刷新,包括:
获取启动盘;
将刷新参数的设置程序和内存测试程序拷贝到所述启动盘中;
在所述启动盘中根据所述刷新参数的设置程序设置所述初始刷新参数;
根据内存测试程序读取设置的所述初始刷新参数,并根据读取的所述初始刷新参
数对内存进行刷新。
例如,制作一个DOS(Disk Operating System,磁盘操作系统)启动盘,将刷新时间
设置程序refresh.exe和内存测试程序拷贝到DOS盘中,开机进入DOS盘,运行refresh.exe
设置初始刷新时间32ms,运行内存测试程序对内存进行刷新。
为使本发明的目的、技术方案和优点更加清楚,下面结合附图及具体实施例对本
发明作进一步地详细描述。
如图2所示,本发明实施例提供了一种内存目标刷新参数的确定方法,该方法可以
包括以下步骤:
步骤201:获取启动盘。
在本实施例中,选择一个启动盘,其中,该启动盘可以为U盘、光盘、移动硬盘等。本
发明实施例以DOS启动盘为例进行说明。
步骤202:将刷新参数设置程序和内存测试程序拷贝到DOS启动盘中。
其中,该刷新参数设置程序可以预先设计好,并为该刷新参数设置程序进行命名,
例如,为refresh.exe。该内存测试程序也可以预先设计好。在获取到DOS启动盘之后,将
refresh.exe和内存测试程序拷贝到DOS启动盘中。
在本发明一个实施例中,也可以直接在DOS启动盘中进行刷新参数设置程序和内
存测试程序的设计。
步骤203:确定初始刷新参数。
在本实施例中,所测试内存为DRAM(Dynamic Random Access Memory,动态随机存
取存储器)。刷新时间的间隔标准为64ms,即正常情况下要保证存储电容能保持数据64ms。
当延长刷新时间时,意味着每次刷新数据的时间间隔变长,内存中一些保持数据能力较差
的数据位经过更长时间的漏电可能由高电平变为低电平,导致数据发生错误。为了确定内
存正常工作的刷新时间,本实施例中,选择初始刷新时间为32ms。
步骤204:开机进入启动盘,运行程序。
在本实施例中,开机进入DOS盘,运行参数设置程序refresh.exe和内存测试程序。
步骤205:利用初始刷新参数对内存进行刷新。
利用初始刷新时间,即32ms,对内存进行测试。
步骤206:判断刷新后的内存是否正常工作,若正常工作,则执行步骤207;否则,执
行步骤208。
在本实施例中,刷新后的内存如果能正常工作,则更新刷新参数为64ms,继续对内
存进行刷新,否则将当前使用的刷新参数32ms确定为目标刷新参数。
在本实施例中,可以通过判断是否发生数据丢失来确定刷新后的内存能否正常工
作,若发生了数据丢失,则表征内存无法正常工作,若未发生数据丢失,则表征内存能够正
常工作。
步骤207:按照刷新粒度对当前使用的刷新参数进行更新,并利用更新后的刷新参
数对内存进行刷新,并执行步骤206。
在本发明一个实施例中,该刷新粒度可以为1ms-32ms。
在本实施例中,刷新粒度设置的越小,确定出的目标刷新参数越准确,刷新粒度设
置的越大,在确定出目标刷新参数时经过的刷新次数越少,所以,为了平衡目标刷新参数准
确度和刷新效率,可以选择最佳的刷新粒度对应的值。例如,
该刷新粒度为32ms。
由于初始刷新时间为32ms,那么利用刷新粒度对该初始刷新时间进行更新后,得
到更新后的刷新参数为64ms,即利用64ms执行步骤206。更新刷新粒度后,继续对所测试内
存进行刷新,接着执行步骤206。
步骤208:将当前使用的刷新参数确定为目标刷新参数。
当刷新后的内存无法正常工作时,此时使用的刷新时间确定为目标刷新时间。
步骤209:根据所述目标刷新参数确定内存使用时对应的刷新参数,其中,所述内
存使用时对应的刷新参数小于所述目标刷新参数。
比如,当确定的目标刷新参数为64ms时,为了保证目标内存能够正常工作,所述内
存使用时对应的刷新参数小于所述目标刷新参数,因此,可以将内存使用时的刷新参数设
置为63ms。
如图3、图4所示,本发明实施例提供了一种内存目标刷新参数的确定装置。装置实
施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。从硬件层面而言,如
图3所示,为本发明实施例提供的内存目标刷新参数的确定装置所在设备的一种硬件结构
图,除了图3所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在
的设备通常还可以包括其他硬件,如负责处理报文的转发芯片等等。以软件实现为例,如图
4所示,作为一个逻辑意义上的装置,是通过其所在设备的CPU将非易失性存储器中对应的
计算机程序指令读取到内存中运行形成的。本实施例提供的内存目标刷新参数的确定装
置,包括:
设置单元401,用于设置刷新粒度,将所述刷新粒度输出给处理单元;
第一确定单元402,用于确定初始刷新参数,将所述初始刷新参数输出给刷新单
元;
刷新单元403,用于利用初始刷新参数对内存进行刷新;
判断单元404,用于判断刷新后的内存是否正常工作,若正常工作,则触发处理单
元执行相应操作;否则,触发第二确定单元执行相应操作;
第二确定单元405,用于将当前使用的刷新参数确定为目标刷新参数;
处理单元406,用于按照刷新粒度对所述初始刷新参数进行更新,并利用更新后的
刷新参数对内存进行刷新,并触发所述判断单元执行相应操作。
在本发明一个实施例中,请参考图5,该内存目标刷新参数的确定装置可以进一步
包括:
第三确定单元501,用于根据所述目标刷新参数确定内存使用时对应的刷新参数,
其中,所述内存使用时对应的刷新参数小于所述目标刷新参数。
在本发明一个实施例中,请参考图6,所述刷新单元403,可以包括:
获取模块601,用于获取启动盘;
拷贝模块602,用于将刷新参数的设置程序和内存测试程序拷贝到所述启动盘中;
设置模块603,用于在所述启动盘中根据所述刷新参数的设置程序设置所述初始
刷新参数;
处理模块604,用于根据内存测试程序读取设置的所述初始刷新参数,并根据读取
的所述初始刷新参数对内存进行刷新。
在本发明一个实施例中,该刷新粒度可以为1ms-32ms。
在本实施例中,刷新粒度设置的越小,确定出的目标刷新参数越准确,刷新粒度设
置的越大,在确定出目标刷新参数时经过的刷新次数越少,所以,为了平衡目标刷新参数准
确度和刷新效率,可以选择最佳的刷新粒度对应的值。例如,
该刷新粒度为32ms。
在本实施例中,所测试内存为DRAM。
在本实施例中,选择一个启动盘,其中,该启动盘可以为U盘、光盘、移动硬盘,本发
明实施选择DOS启动盘。
综上,本发明各个实施例具有如下效果:
1、本发明实施例提供了一种内存目标刷新参数的确定方法及装置,通过确定初始
刷新参数,并利用初始刷新参数对内存进行刷新,判断刷新后的内存是否正常工作,若正常
工作,则表明当前使用的刷新参数可以满足内存的正常刷新,通过刷新粒度对该当前使用
的刷新参数进行更新,以利用更新后的刷新参数对内存进行刷新,直到确定出当前使用的
刷新参数使得刷新后的内存无法正常工作时,将当前使用的刷新参数确定为目标刷新参
数。本方案通过该刷新粒度可以准确的确定出内存的刷新参数。
2、在本发明实施例中,通过刷新参数对内存进行测试,不但可以更快地确定目标
内存的刷新参数,还可以筛选出故障内存和一些有风险的内存,有效的保障筛选后的内存
在客户端稳定正常的工作,可以提高内存的稳定性和可靠性。
上述装置内的各单元之间的信息交互、执行过程等内容,由于与本发明方法实施
例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体
或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在
任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非
排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,
而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固
有的要素。在没有更多限制的情况下,由语句“包括一个······”限定的要素,并不排
除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过
程序指令相关的硬件来完成,前述的程序可以存储在计算机可读取的存储介质中,该程序
在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光
盘等各种可以存储程序代码的介质中。
最后需要说明的是:以上所述仅为本发明的较佳实施例,仅用于说明本发明的技
术方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所做的任何修改、
等同替换、改进等,均包含在本发明的保护范围内。