一种数据资源分配方法、系统、智能终端及可读储存介质技术方案

技术编号:32221595 阅读:18 留言:0更新日期:2022-02-09 17:26
本申请涉及一种数据资源分配方法、系统、智能终端及可读储存介质,涉及内存资源分配的领域,包括:获取域宽信息以及域深信息,从域宽信息中查找出数组并随机抽取一个流存储至搁置内存块中;计算域宽差值;若域宽差值为0,则完成放置存储并重新抽取;若不为0,则判断域是否存在流;若存在流,则随机抽取流,并放置,并更新占用内存块,完成放置存储;若不存在流,则完成放置存储;直至所有流放置存储完成。改善了随意分配往往容易导致很多空缺内存资源的浪费的问题,本申请具有减少了空缺内存资源的浪费,提高了内存块的使用效率的效果。提高了内存块的使用效率的效果。提高了内存块的使用效率的效果。

【技术实现步骤摘要】
一种数据资源分配方法、系统、智能终端及可读储存介质


[0001]本申请涉及内存资源分配的领域,尤其是涉及一种数据资源分配方法、系统、智能终端及可读储存介质。

技术介绍

[0002]随着网络的普及化和复杂化,网络的合理架设和正常运行变得异常重要,而保障网络的正常运行必须借助网络检测辅助设备。
[0003]流是输入输出设备的抽象概念。每个仿真端口可以配置多条流,这些流是产生数据报文的基本控制单元,也是最小资源管理单元,每条流按照自己的配置信息独立生成网络数据帧,从仿真端口发送出去。网络测试仪中,存在一个流量发生器的部件。流量发生器是用来检测网络性能,进行网络相关研究的一个很重要的工具。在每次产生网络数据帧时,流量发生器会从流内数据列表中取出一条放入对应的数据域中。流量发生器预备一块连续的内存资源,软件需要在这块连续内存中,为每个需要配置流内数据列表跳变的流分配一份连续固定大小的内存块。
[0004]相关技术中,参照图1,每个流均需要占据一块宽度和深度固定的内存资源,不同的流用不同的图案进行表示。当一个流出现时,流直接将同一端顶格的空缺内存块作为初始点进行放置存储且下一个流出现时继续按照上述步骤开始存储。例如,当前流分别为S1 {2,10},S2{8,1},S3{2,3} ,S4{4,2},S5{5,3},其中前一个数字代表域宽,后一个数字代表域深。
[0005]针对上述中的相关技术,专利技术人认为按照上述步骤分配往往容易导致很多空缺内存资源的浪费,利用率较低,尚有改进的空间。

技术实现思路

[0006]为了改善随意分配往往容易导致很多空缺内存资源的浪费的问题,本申请提供一种数据资源分配方法、系统、存储介质及智能终端。
[0007]第一方面,本申请提供一种数据资源分配方法,采用如下的技术方案:获取申请资源中内存块的流的域宽信息以及域深信息,内存块包括搁置内存块以及占用内存块,从域宽信息中查找出域宽值一致的流并根据域宽值生成对应的数组;从任一数组中随机抽取一个流,并将抽取的流从任一端存储至搁置内存块中,以转换为占用内存块;计算占用内存块中的流所对应的域宽值与所预设的最大域宽信息所对应的域宽值之间的域宽差值;判断域宽差值是否为0;若域宽差值为0,则完成当前域宽信息所对应的域深信息所在行的放置存储并重新从任一数组中随机抽取一个流,并将抽取的流从任一端存储至搁置内存块中,以转换为占用内存块,并重复判断域宽差值是否为0;
若域宽差值不为0,则判断域宽值小于或等于域宽差值的数组中是否存在流;若存在流,则从域宽值小于或等于域宽差值的数组中随机抽取一个流,并将流放置于占用内存块所对应的域深信息所在行中,并更新占用内存块,完成当前域宽信息所对应的最大域深信息所在行的放置存储,并重新从任一数组中随机抽取一个流,并将抽取的流从任一端存储至搁置内存块中,以转换为占用内存块,并重复判断域宽差值是否为0;若不存在流,则完成当前域宽信息所对应的域深信息所在行的放置存储,并重新从任一数组中随机抽取一个流,并将抽取的流从任一端存储至搁置内存块中,以转换为占用内存块,并重复判断域宽差值是否为0;直至所有流放置存储完成。
[0008]通过采用上述技术方案,通过判断是否存在两个域宽值之和小于等于最大域宽信息的流,从而将域宽值之和小于等于最大域宽信息的流存储至同一行的搁置内存块中,使得同一行中至少存在两个流,相比于一行放置一个流来说,减少了空缺内存资源的浪费,提高了内存块的使用效率。
[0009]可选的,同一行中搁置内存块的存储方法包括:更新占用内存块中的流的域宽值之和与最大域宽信息所对应的域宽值之间的域宽差值;判断更新后的域宽差值是否为0;若更新后的域宽差值为0,则完成当前行的放置存储,并重新从任一数组中随机抽取一个流,将抽取的流从任一端存储至搁置内存块中,以转换为占用内存块,并重复判断域宽差值是否为0;若更新后的域宽差值不为0,则从域宽值小于或等于域宽差值的数组中随机抽取一个流,并将流放置于当前行的占用内存块所对应的域深信息所在行中,以更新占用内存块并重复判断域宽差值是否为0;直至域宽差值为0时,或直至不存在域宽值小于或等于域宽差值的数组时,完成当前行的放置存储。
[0010]通过采用上述技术方案,如果在同一行中存储两个流的情况下首行中还存在搁置内存块且还存在能够放入剩余的搁置内存块中的流的话,则继续存储,进一步减少了一行中空缺内存块资源的浪费,提高了内存块的使用效率。
[0011]可选的,将流放置存储于搁置内存块中时,对流的选择方法包括:将数组按照流的域宽值进行排序;根据抽取动作,从排序后的数组中查找出最值数组,最值数组包括域宽值最大的数组以及域宽值最小的数值;将域宽值最大的数组所对应的流进行抽取。
[0012]通过采用上述技术方案,通过将数组按照域宽值进行排序并且从域宽值最大的数组中进行抽取,在未存储的数组中流的查找更加方便,相比于随意放置的方法,筛选时较为快速,提高了流的抽取效率。
[0013]可选的,将流放置存储于搁置内存块中时,对流的选择方法包括:将同一数组中的流按照流的域深值进行排序;根据抽取动作,从排序后的流中查找出最值流,最值流包括同一数组中域深值最
大的流以及同一数组中域深值最小的流;将域深值最大的流进行抽取。
[0014]通过采用上述技术方案,通过将数组中的流按照域深值进行排序并且抽取域深最大的流,在同一数组中相同的流的查找更加方便,相比于随意放置的方法,筛选时较为快速,提高了流的抽取效率。
[0015]可选的,将流放置存储于搁置内存块中时,对流的选择方法包括:根据抽取动作,判断流中是否存在与同一行中占用内存块所对应的域深值相同的流;若流中存在与同一行中搁置内存块所对应的域深值相同的流,则将域深值相同的流进行抽取。
[0016]通过采用上述技术方案,通过优先选择域深相同的流进行存储,使得流与流之间不存在空缺的搁置内存块,使得完成当前行的放置存储后流可以从下一行进行存储不易受到当前行的流占用后的占用内存块的干扰,提高了内存块的占用效率。
[0017]可选的,将流放置存储于搁置内存块中时,对流的选择方法包括:若流中不存在与同一行中搁置内存块所对应的域深值相同的流,则从同一行中小于占用内存块所对应的域深值的流中,抽取流进行组合放置直至与同一行中搁置内存块所对应的域深值相同;若抽取流进行组合放置后不能与同一行中搁置内存块所对应的域深值相同,则将流中与同一行中相邻且大于搁置内存块所对应的域深值的流进行放置;若流中不存在相邻且大于同一行中搁置内存块所对应的域深值的流,则将流中与同一行中相邻且小于搁置内存块所对应的域深值的流进行放置;若流中不存在相邻且小于同一行中搁置内存块所对应的域深值的流,则完成放置存储。
[0018]通过采用上述技术方案,通过查找域深值之和等于同一行中搁置内存块所对应的域深值相同的流并进行放置存储,使得完成当前行的放置存储后流可以从下一行进行存储不易受到当前行的流占用后的占用内存块的干扰,提高了内存块的占用效率。...

【技术保护点】

【技术特征摘要】
1.一种数据资源分配方法,其特征在于,包括:获取申请资源中内存块的流的域宽信息以及域深信息,内存块包括搁置内存块以及占用内存块,从域宽信息中查找出域宽值一致的流并根据域宽值生成对应的数组;从任一数组中随机抽取一个流,并将抽取的流从任一端存储至搁置内存块中,以转换为占用内存块;计算占用内存块中的流所对应的域宽值与所预设的最大域宽信息所对应的域宽值之间的域宽差值;判断域宽差值是否为0;若域宽差值为0,则完成当前域宽信息所对应的域深信息所在行的放置存储并重新从任一数组中随机抽取一个流,并将抽取的流从任一端存储至搁置内存块中,以转换为占用内存块,并重复判断域宽差值是否为0;若域宽差值不为0,则判断域宽值小于或等于域宽差值的数组中是否存在流;若存在流,则从域宽值小于或等于域宽差值的数组中随机抽取一个流,并将流放置于占用内存块所对应的域深信息所在行中,并更新占用内存块,完成当前域宽信息所对应的最大域深信息所在行的放置存储,并重新从任一数组中随机抽取一个流,并将抽取的流从任一端存储至搁置内存块中,以转换为占用内存块,并重复判断域宽差值是否为0;若不存在流,则完成当前域宽信息所对应的域深信息所在行的放置存储,并重新从任一数组中随机抽取一个流,并将抽取的流从任一端存储至搁置内存块中,以转换为占用内存块,并重复判断域宽差值是否为0;直至所有流放置存储完成。2.根据权利要求1所述的一种数据资源分配方法,其特征在于,同一行中搁置内存块的存储方法包括:更新占用内存块中的流的域宽值之和与最大域宽信息所对应的域宽值之间的域宽差值;判断更新后的域宽差值是否为0;若更新后的域宽差值为0,则完成当前行的放置存储,并重新从任一数组中随机抽取一个流,将抽取的流从任一端存储至搁置内存块中,以转换为占用内存块,并重复判断域宽差值是否为0;若更新后的域宽差值不为0,则从域宽值小于或等于域宽差值的数组中随机抽取一个流,并将流放置于当前行的占用内存块所对应的域深信息所在行中,以更新占用内存块并重复判断域宽差值是否为0;直至域宽差值为0时,或直至不存在域宽值小于或等于域宽差值的数组时,完成当前行的放置存储。3.根据权利要求1或2所述的一种数据资源分配方法,其特征在于,将流放置存储于搁置内存块中时,对流的选择方法包括:将数组按照流的域宽值进行排序;根据抽取动作,从排序后的数组中查找出最值数组,最值数组包括域宽值最大的数组以及域宽值最小的数值;将域宽值最大的数组所对应的流进行抽取。
4.根据权利要求3所述的一种数据资源分配方法,其特征在于,将流放置存储于搁置内存块中时,对流的选择方法包括:将同一数组中的流按照流的域深值进行排序;根据抽取动作,从排序后的流中查找出最值流,最值流包括同一数组中域深值最大的流以及同一数组中域深值最小的流;将域深值最大的流进行抽取。5.根据权利要求3所述的一种数据资源分配方法,其特征在于,将流放置存储于搁置内存块中时,对流的选择方法包括:根据抽取动作,判断流中是否存在与同一行中占用内存块所对应的域深值相同的流;若流中存在与同一行中搁置内存块所对应的域深值相同的流,则将域深值相同的流进行抽取。6.根据权利要求5所述的一种数据资源分配方法,其特征在于,将流放置存储于搁置内存...

【专利技术属性】
技术研发人员:杨二建
申请(专利权)人:江苏信而泰智能装备有限公司
类型:发明
国别省市:

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

1