在移动互联网内根据状态信息进行文件预取的方法及系统与流程

文档序号:16736190发布日期:2019-01-28 12:38阅读:174来源:国知局
在移动互联网内根据状态信息进行文件预取的方法及系统与流程

本发明涉及物联网领域和互联网领域,并且更具体地,涉及移动互联网领域中的一种在移动互联网内根据状态信息进行文件预取的方法及系统。



背景技术:

目前,随着物联网,特别是移动互联网,的发展越来越快,移动终端的使用越来越普及,人们通常会利用移动终端来安装大量的应用并且存储大量的个人数据。由于数据量的增加比存储空间的增加更为迅速,因此对移动终端内的数据文件进行有效管理则越来越重要。在一些情况下,对于使用情况的规律性较强的用户,当移动终端处于特定状态时,用户通常会使用多个用户应用中的常用应用。现有技术中,没有针对这种规律性进行文件预取的技术。



技术实现要素:

根据本发明的一个方面,提供一种在移动互联网内根据状态信息进行文件预取的方法,所述方法包括:

获取与移动互联网内目标移动终端相关联的运行统计文件,对所述运行统计文件进行解析以获取所述目标移动终端内多个用户应用中每个用户应用的状态统计信息;

利用所述目标移动终端的定位组件获取所述目标移动终端在预定时间段内的当前状态,根据每个用户应用的状态统计信息和所述当前状态确定每个用户应用在当前状态下的运行概率;

根据所述目标移动终端的时间参数为每个用户应用设置第一调整系数t并且根据所述目标移动终端的位置参数为每个用户应用设置第二调整系数l,获取所述时间参数和位置参数的权重比例,根据每个用户应用的第一调整系数t和第二调整系数l以及权重比例确定每个用户应用的第三调整系数f,基于每个用户应用的第三调整系数f和在当前状态下的运行概率计算每个用户应用在当前状态下的经过调整的运行概率,基于每个用户应用在当前状态下的经过调整的运行概率对多个用户应用进行运行概率的降序排序以生成排序列表;

根据所述排序列表确定所述多个用户应用中能够被从第二存储器预先加载到第一存储器中的至少一个预取用户应用,并且根据所述排序列表为至少一个预取用户应用中每个预取用户应用设置存储级别,其中所述存储级别包括:减量存储级、增量存储级、定量存储级和压缩存储级;

为减量存储级的每个预取用户应用分配至少一个动态存储单元,为压缩存储级的每个预取用户应用分配至少一个动态存储单元,为增量存储级的每个预取用户应用分配一个动态存储单元并且为定量存储级的每个预取用户应用分配一个动态存储单元;

根据每个预取用户应用的存储级别给为每个预取用户应用所分配的动态存储单元设置存储级别;

根据预取用户应用的存储级别将与每个预取用户应用相关联的数据文件从第二存储器进行文件预取,包括:

将与减量存储级的每个预取用户应用相关联的多个数据文件从第二存储器复制到为减量存储级的每个预取用户应用所分配的至少一个减量存储级的动态存储单元,在复制完成时为每个减量存储级的动态存储单元设置第一时间周期并开始计时,每当第一时间周期期满时在每个减量存储级的动态存储单元中删除第一预定数量的数据文件;

在与增量存储级的每个预取用户应用相关联的多个数据文件中选择至少一个基础数据文件,将增量存储级的每个预取用户应用的至少一个基础数据文件从第二存储器复制到为增量存储级的每个预取用户应用所分配的增量存储级的动态存储单元,在复制完成时为增量存储级的动态存储单元设置第二时间周期并开始计时,其中每当第二时间周期期满时将与增量存储级的每个预取用户应用相关联的多个数据文件中第二预定数量的数据文件从第二存储器复制到为增量存储级的每个预取用户应用所分配的增量存储级的动态存储单元;

根据为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元的存储容量,从与定量存储级的每个预取用户应用相关联的多个数据文件选择至少一个数据文件,并且将所选择的至少一个数据文件从第二存储器复制到为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元;以及

将与压缩存储级的每个预取用户应用相关联的多个数据文件进行压缩以生成多个经过压缩的数据文件,将压缩存储级的每个预取用户应用的多个经过压缩的数据文件从第二存储器复制到为压缩存储级的每个预取用户应用所分配的至少一个压缩存储级的动态存储单元。

所述移动互联网内包括多个移动终端,并且将发起文件预取请求的移动终端确定为目标移动终端,其中用户应用的数量大于4。

所述运行统计文件包括多个状态数据表,并且为目标移动终端内多个用户应用中每个用户应用分配一个状态数据表,每个状态数据表中包括多个状态数据项并且每个状态数据项的内容为五元组<应用名称、运行状态、起始时间、结束时间、累计时间长度>。

其中将为每个用户应用所分配的状态数据表作为每个用户应用的状态统计信息,并且为每个用户应用所分配的状态数据表用于实时记录每个用户应用的运行状态信息。

在所述运行统计文件中,为每个用户应用保存预定数量的状态数据项,或为每个用户应用保存预定数量的自然日内或预定时间长度内的状态数据项。

其中预定数量的自然日为10个自然日、20个自然日或30个自然日,其中预定时间长度为240小时、480小时或720小时。

其中预定时间段是以当前时间为终点并且以30秒钟、60秒钟或90秒钟之前的时间为起点的一段时间;或者预定时间段是从当前时间开始的并且长度为30秒钟、60秒钟或90秒钟的一段时间。当前状态为:静止状态、场所内移动状态、地铁状态、步行状态或汽车状态。

利用目标移动终端的定位组件获取所述目标移动终端在预定时间段内的当前状态包括:

当利用所述目标移动终端的定位组件确定所述目标移动终端在预定时间段内的所有位置坐标点是相同的位置坐标点或所有位置坐标点的位置相同时,则获取所述目标移动终端的当前状态为静止状态;

当利用所述目标移动终端的定位组件确定所述目标移动终端在预定时间段内的所有位置坐标点不完全是相同的位置坐标点但全部位于特定场所(利用所述目标移动终端的定位组件确定所述目标移动终端在预定时间段内的所有位置坐标点全部位于特定场所)内时,则获取所述目标移动终端的当前状态为场所内移动状态;

当利用所述目标移动终端的定位组件确定所述目标移动终端在预定时间段内的所有位置坐标点均位于地铁线路上时,则获取所述目标移动终端的当前状态为地铁状态;

利用所述目标移动终端的定位组件确定所述目标移动终端在预定时间段内的平均速度,当平均速度大于3公里/小时并且小于6公里/小时时,则获取所述目标移动终端的当前状态为步行状态;以及

利用所述目标移动终端的定位组件确定所述目标移动终端在预定时间段内的平均速度,当平均速度大于25公里/小时时,则获取所述目标移动终端的当前状态为汽车状态。

根据每个用户应用的状态统计信息和当前状态确定每个用户应用在当前状态下的运行概率包括:选择用于确定运行概率的统计日期区间,所述统计日期区间包括至少10个自然日;

对每个用户应用的状态统计信息内多个数据项中的每个数据项进行解析,以确定在统计日期区间内,每个用户应用在当前状态下运行的有效次数ci,其中1≤i≤na,na为目标移动终端内用户应用的数量,na为自然数并且na大于4;

基于每个用户应用在统计日期区间内,在当前状态下运行的有效次数ci计算所有用户应用在当前状态下运行的总有效次数s:

计算每个用户应用在当前状态下的运行概率pi=ci/s。

其中当用户应用在当前状态下的运行时间超过60秒时,计为一次有效次数。

根据每个用户应用的状态统计信息和当前状态确定每个用户应用在当前状态下的运行概率包括:选择用于确定运行概率的统计日期区间,所述统计日期区间包括至少10个自然日;

对每个用户应用的状态统计信息内多个数据项中的每个数据项进行解析,以确定在统计日期区间内,每个用户应用在当前状态下运行的时间长度ti,其中1≤i≤na,na为目标移动终端内用户应用的数量,na为自然数并且na大于4;

基于每个用户应用在统计日期区间内,在当前状态下运行的时间长度ti计算所有用户应用在当前状态下运行的总时间长度t:

计算每个用户应用在当前状态下的运行概率pi=ti/t。

所述时间参数为目标移动终端的当前系统时间(操作系统所指示的当前运行时间),或者所述时间参数是目标移动终端所在位置的标准时间。

根据所述目标移动终端的时间参数为每个用户应用设置第一调整系数t包括:

在目标移动终端的时间参数晚于或等于00:00并且早于07:00的情况下,将每个用户应用的第一调整系数t设置为小于1,例如0.6;在目标移动终端的时间参数晚于或等于07:00并且早于11:00的情况下,将每个用户应用的第一调整系数t设置为小于1,例如0.8;在目标移动终端的时间参数晚于或等于11:00并且早于13:00的情况下,将每个用户应用的第一调整系数t设置为大于1,例如1.1;在目标移动终端的时间参数晚于或等于13:00并且早于17:00的情况下,将每个用户应用的第一调整系数t设置为小于1,例如0.8;在目标移动终端的时间参数晚于或等于17:00并且早于19:00的情况下,将每个用户应用的第一调整系数t设置为大于1,例如1.1;在目标移动终端的时间参数晚于或等于19:00并且早于23:00的情况下,将每个用户应用的第一调整系数t设置为大于1,例如1.2;以及

在目标移动终端的时间参数晚于或等于23:00并且早于24:00的情况下,将每个用户应用的第一调整系数t设置为小于1,例如0.9。

所述位置参数为目标移动终端的当前位置。

根据所述目标移动终端的位置参数为每个用户应用设置第二调整系数l包括:在目标移动终端的位置参数为办公室的情况下,将每个用户应用的第二调整系数l设置为小于1,例如0.8;在目标移动终端的位置参数为家的情况下,将每个用户应用的第二调整系数l设置为大于1,例如1.2;在目标移动终端的位置参数为餐馆的情况下,将每个用户应用的第二调整系数l设置为小于1,例如0.9;在目标移动终端的位置参数为道路的情况下,将每个用户应用的第二调整系数l设置为小于1,例如0.8;以及在目标移动终端的位置参数为地铁的情况下,将每个用户应用的第二调整系数l设置为大于1,例如1.1。

其中获取所述时间参数和位置参数各自的权重比例包括:读取目标移动终端内的权重配置文件,对所述权重配置文件进行解析以获取所述时间参数和位置参数各自的权重比例;

其中所述时间参数和位置参数各自的权重比例的和为1,所述时间参数和位置参数的权重比例分别为0.5和0.5;所述时间参数和位置参数的权重比例分别为0.3和0.7;所述时间参数和位置参数的权重比例分别为0.2和0.8;所述时间参数和位置参数的权重比例分别为0.7和0.3;所述时间参数和位置参数的权重比例分别为0.8和0.2;所述时间参数和位置参数的权重比例分别为0.4和0.6;所述时间参数和位置参数的权重比例分别为0.6和0.4。

其中根据每个用户应用的第一调整系数t和第二调整系数l以及各自的权重比例确定每个用户应用的第三调整系数f为:

第三调整系数f=第一调整系数t×w1+第二调整系数l×w2,其中w1为时间参数的权重比例,w2为位置参数的权重比例。

其中基于每个用户应用的第三调整系数f和在当前状态下的运行概率计算每个用户应用在当前状态下的经过调整的运行概率包括:将每个用户应用的第三调整系数f和在当前状态下的运行概率的乘积作为每个用户应用在当前状态下的经过调整的运行概率。

在获取与移动互联网内目标移动终端相关联的运行统计文件之前还包括:

响应于用户发起的针对移动互联网内目标移动终端的与用户应用相关联的数据文件进行文件预取的文件预取请求,获取与所述文件预取相关联的动态配置文件;

在所述目标移动终端的第一存储器中创建动态索引区域,并且根据所述动态配置文件在第一存储器中创建用于存储数据文件的多个动态存储单元,其中根据所述动态配置文件确定所述多个动态存储单元中的每个动态存储单元的存储容量;以及

在所述动态索引区域中生成动态索引表,所述动态索引表包括多个索引项,每个索引项用于记录多个动态存储单元中的相应动态存储单元的应用标识、起始地址、结束地址、存储容量和存储级别。

其中第一存储器为随机存取存储器,第二存储器为只读存储器。

动态配置文件包括第一存储器中用于提供多个动态存储单元的存储区域的起始地址和结束地址,并且所述动态配置文件还包括多个动态存储单元中的每个动态存储单元的存储容量。

其中应用标识为动态存储单元所归属的用户应用的标识符,起始地址为动态存储单元的存储空间的起始地址,结束地址为动态存储单元的存储空间的结束地址,存储容量为动态存储单元的存储空间的存储容量和存储级别为动态存储单元的存储空间的存储级别。

还包括根据为动态存储单元所设置的存储级别对动态索引表中相应的索引项进行更新。

根据为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元的存储容量,从与定量存储级的每个预取用户应用相关联的多个数据文件选择至少一个数据文件包括:

根据为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元的存储容量将与定量存储级的每个预取用户应用相关联的多个数据文件进行分组以生成多个文件组,其中每个文件组包括至少一个数据文件,并为定量存储级的每个预取用户应用的多个文件组设置不同的优先级以构成优先级队列,将每个优先级队列中位于队首的文件组作为当前文件组并将当前文件组中的至少一个数据文件从第二存储器复制到为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元并且为定量存储级的每个动态存储单元设置第三时间周期,每当第三时间周期期满时,按照优先级降低的顺序使用优先级队列中的下一文件组作为当前文件组,直到不存在下一文件组为止;

将当前文件组中的至少一个数据文件作为从与定量存储级的每个预取用户应用相关联的多个数据文件选择的至少一个数据文件;其中每个文件组的尺寸小于相应的定量存储级的动态存储单元的存储空间。其中根据为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元的存储容量,从与定量存储级的每个预取用户应用相关联的多个数据文件选择至少一个数据文件包括:

根据为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元的存储容量将与定量存储级的每个预取用户应用相关联的多个数据文件进行分组以生成多个文件组,其中每个文件组包括至少一个数据文件,从所述多个文件组中随机选择一个文件组作为当前文件组并将当前文件组中的至少一个数据文件从第二存储器复制到为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元并且为定量存储级的每个动态存储单元设置第三时间周期,,每当第三时间周期期满时,从多个文件组中随机选择下一文件组作为当前文件组,直到不存在下一文件组为止;

将当前文件组中的至少一个数据文件作为从与定量存储级的每个预取用户应用相关联的多个数据文件选择的至少一个数据文件;其中每个文件组的尺寸小于相应的定量存储级的动态存储单元的存储空间。

在将所选择的至少一个数据文件从第二存储器复制到为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元之后,设置第三时间周期并且每当第三时间周期期满时,根据为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元的存储容量,重新从与定量存储级的每个预取用户应用相关联的多个数据文件选择至少一个数据文件,将重新选择的至少一个数据文件从第二存储器复制到为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元。

根据为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元的存储容量,从与定量存储级的每个预取用户应用相关联的多个数据文件选择至少一个数据文件包括:

步骤1、根据为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元的存储容量将与定量存储级的每个预取用户应用相关联的多个数据文件进行分组以生成n个文件组,其中n为大于1的自然数并且每个文件组包括至少一个数据文件;

步骤2、为n个文件组中的每个文件组设置不同的序号,其中所述序号从1至n;

步骤3、将序号i=1的文件组作为当前文件组,其中n≥i>0;

步骤4、为定量存储级的每个动态存储单元设置第三时间周期;

步骤5、将当前文件组所包括的至少一个数据文件从第二存储器复制到为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元;

步骤6、当第三时间周期期满时,判断i=n是否成立,如果成立,则结束;如果不成立,则将序号i=i+1的文件组作为当前文件组,进行步骤5;

其中每个文件组的尺寸小于定量存储级的动态存储单元的存储容量。

其中根据所述排序列表确定所述多个用户应用中能够被从第二存储器预先加载到第一存储器中的多个预取用户应用包括:

当排序列表中运行概率大于预取阈值的用户应用的数量大于0时,将排序列表中运行概率大于预取阈值的用户应用确定为能够被从第二存储器预先加载到第一存储器中的预取用户应用,以确定至少一个预取用户应用;

当排序列表中运行概率大于预取阈值的用户应用的数量等于0时,将排序列表中所有用户应用确定为能够被从第二存储器预先加载到第一存储器中的预取用户应用,以确定至少一个预取用户应用。

其中根据所述排序列表为至少一个预取用户应用中每个预取用户应用设置存储级别包括:将所述排序列表中运行概率大于高概率阈值的预取用户应用的存储级别设置为减量存储级;将所述排序列表中运行概率小于或等于高概率阈值并且大于中概率阈值的预取用户应用的存储级别设置为增量存储级;将所述排序列表中运行概率小于或等于中概率阈值并且大于低概率阈值的预取用户应用的存储级别设置为定量存储级;将所述排序列表中运行概率小于或等于低概率阈值的预取用户应用的存储级别设置为压缩存储级。

其中为每个减量存储级的预取用户应用所分配的至少一个动态存储单元能够容纳相应的减量存储级的预取用户应用的所有数据文件,并且为每个压缩存储级的预取用户应用所分配的至少一个动态存储单元能够容纳相应的压缩存储级的预取用户应用的所有经过压缩的数据文件。

其中第一时间周期为30秒,第二时间周期为60秒,其中第三时间周期为90秒。其中每个预取用户应用的至少一个基础数据文件是与增量存储级的每个预取用户应用相关联的多个数据文件中启动顺序高于优先阈值的至少一个数据文件。其中第一预定数量为5,所述第二预定数量为8。

根据本发明的另一方面,提供一种在移动互联网内根据状态信息进行文件预取的系统,所述系统包括:

解析装置,获取与移动互联网内目标移动终端相关联的运行统计文件,对所述运行统计文件进行解析以获取所述目标移动终端内多个用户应用中每个用户应用的状态统计信息;

概率确定装置,利用所述目标移动终端的定位组件获取所述目标移动终端在预定时间段内的当前状态,根据每个用户应用的状态统计信息和所述当前状态确定每个用户应用在当前状态下的运行概率;

排序装置,根据所述目标移动终端的时间参数为每个用户应用设置第一调整系数t并且根据所述目标移动终端的位置参数为每个用户应用设置第二调整系数l,获取所述时间参数和位置参数的权重比例,根据每个用户应用的第一调整系数t和第二调整系数l以及权重比例确定每个用户应用的第三调整系数f,基于每个用户应用的第三调整系数f和在当前状态下的运行概率计算每个用户应用在当前状态下的经过调整的运行概率,基于每个用户应用在当前状态下的经过调整的运行概率对多个用户应用进行运行概率的降序排序以生成排序列表;

设置装置,根据所述排序列表确定所述多个用户应用中能够被从第二存储器预先加载到第一存储器中的至少一个预取用户应用,并且根据所述排序列表为至少一个预取用户应用中每个预取用户应用设置存储级别,其中所述存储级别包括:减量存储级、增量存储级、定量存储级和压缩存储级;根据每个预取用户应用的存储级别给为每个预取用户应用所分配的动态存储单元设置存储级别;

分配装置,为减量存储级的每个预取用户应用分配至少一个动态存储单元,为压缩存储级的每个预取用户应用分配至少一个动态存储单元,为增量存储级的每个预取用户应用分配一个动态存储单元并且为定量存储级的每个预取用户应用分配一个动态存储单元;

预取装置,根据预取用户应用的存储级别将与每个预取用户应用相关联的数据文件从第二存储器进行文件预取,包括:

将与减量存储级的每个预取用户应用相关联的多个数据文件从第二存储器复制到为减量存储级的每个预取用户应用所分配的至少一个减量存储级的动态存储单元,在复制完成时为每个减量存储级的动态存储单元设置第一时间周期并开始计时,每当第一时间周期期满时在每个减量存储级的动态存储单元中删除第一预定数量的数据文件;

在与增量存储级的每个预取用户应用相关联的多个数据文件中选择至少一个基础数据文件,将增量存储级的每个预取用户应用的至少一个基础数据文件从第二存储器复制到为增量存储级的每个预取用户应用所分配的增量存储级的动态存储单元,在复制完成时为增量存储级的动态存储单元设置第二时间周期并开始计时,其中每当第二时间周期期满时将与增量存储级的每个预取用户应用相关联的多个数据文件中第二预定数量的数据文件从第二存储器复制到为增量存储级的每个预取用户应用所分配的增量存储级的动态存储单元;

根据为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元的存储容量,从与定量存储级的每个预取用户应用相关联的多个数据文件选择至少一个数据文件,并且将所选择的至少一个数据文件从第二存储器复制到为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元;以及

将与压缩存储级的每个预取用户应用相关联的多个数据文件进行压缩以生成多个经过压缩的数据文件,将压缩存储级的每个预取用户应用的多个经过压缩的数据文件从第二存储器复制到为压缩存储级的每个预取用户应用所分配的至少一个压缩存储级的动态存储单元。

所述移动互联网内包括多个移动终端,并且将发起文件预取请求的移动终端确定为目标移动终端,其中用户应用的数量大于4。

所述运行统计文件包括多个状态数据表,并且为目标移动终端内多个用户应用中每个用户应用分配一个状态数据表,每个状态数据表中包括多个状态数据项并且每个状态数据项的内容为五元组<应用名称、运行状态、起始时间、结束时间、累计时间长度>。

其中将为每个用户应用所分配的状态数据表作为每个用户应用的状态统计信息,并且为每个用户应用所分配的状态数据表用于实时记录每个用户应用的运行状态信息。

在所述运行统计文件中,为每个用户应用保存预定数量的状态数据项,或为每个用户应用保存预定数量的自然日内或预定时间长度内的状态数据项。其中预定数量的自然日为10个自然日、20个自然日或30个自然日,其中预定时间长度为240小时、480小时或720小时。

其中预定时间段是以当前时间为终点并且以30秒钟、60秒钟或90秒钟之前的时间为起点的一段时间;或者预定时间段是从当前时间开始的并且长度为30秒钟、60秒钟或90秒钟的一段时间。当前状态为:静止状态、场所内移动状态、地铁状态、步行状态或汽车状态。

其中概率确定装置利用所述目标移动终端的定位组件获取所述目标移动终端在预定时间段内的当前状态包括:

当利用所述目标移动终端的定位组件确定所述目标移动终端在预定时间段内的所有位置坐标点是相同的位置坐标点或所有位置坐标点的位置相同时,则获取所述目标移动终端的当前状态为静止状态;

当利用所述目标移动终端的定位组件确定所述目标移动终端在预定时间段内的所有位置坐标点不完全是相同的位置坐标点但全部位于特定场所(利用所述目标移动终端的定位组件确定所述目标移动终端在预定时间段内的所有位置坐标点全部位于特定场所)内时,则获取所述目标移动终端的当前状态为场所内移动状态;

当利用所述目标移动终端的定位组件确定所述目标移动终端在预定时间段内的所有位置坐标点均位于地铁线路上时,则获取所述目标移动终端的当前状态为地铁状态;

利用所述目标移动终端的定位组件确定所述目标移动终端在预定时间段内的平均速度,当平均速度大于3公里/小时并且小于6公里/小时时,则获取所述目标移动终端的当前状态为步行状态;以及

利用所述目标移动终端的定位组件确定所述目标移动终端在预定时间段内的平均速度,当平均速度大于25公里/小时时,则获取所述目标移动终端的当前状态为汽车状态。

概率确定装置根据每个用户应用的状态统计信息和所述当前状态确定每个用户应用在当前状态下的运行概率包括:

选择用于确定运行概率的统计日期区间,所述统计日期区间包括至少10个自然日;

对每个用户应用的状态统计信息内多个数据项中的每个数据项进行解析,以确定在统计日期区间内,每个用户应用在当前状态下运行的有效次数ci,其中1≤i≤na,na为目标移动终端内用户应用的数量,na为自然数并且na大于4;

基于每个用户应用在统计日期区间内,在当前状态下运行的有效次数ci计算所有用户应用在当前状态下运行的总有效次数s:

计算每个用户应用在当前状态下的运行概率pi=ci/s。

其中当用户应用在当前状态下的运行时间超过60秒时,计为一次有效次数。

其中概率确定装置根据每个用户应用的状态统计信息和所述当前状态确定每个用户应用在当前状态下的运行概率包括:选择用于确定运行概率的统计日期区间,所述统计日期区间包括至少10个自然日;

对每个用户应用的状态统计信息内多个数据项中的每个数据项进行解析,以确定在统计日期区间内,每个用户应用在当前状态下运行的时间长度ti,其中1≤i≤na,na为目标移动终端内用户应用的数量,na为自然数并且na大于4;

基于每个用户应用在统计日期区间内,在当前状态下运行的时间长度ti计算所有用户应用在当前状态下运行的总时间长度t:

计算每个用户应用在当前状态下的运行概率pi=ti/t。

所述时间参数为目标移动终端的当前系统时间(操作系统所指示的当前运行时间),或者所述时间参数是目标移动终端所在位置的标准时间。

其中排序装置根据所述目标移动终端的时间参数为每个用户应用设置第一调整系数t包括:在目标移动终端的时间参数晚于或等于00:00并且早于07:00的情况下,将每个用户应用的第一调整系数t设置为小于1,例如0.6;在目标移动终端的时间参数晚于或等于07:00并且早于11:00的情况下,将每个用户应用的第一调整系数t设置为小于1,例如0.8;在目标移动终端的时间参数晚于或等于11:00并且早于13:00的情况下,将每个用户应用的第一调整系数t设置为大于1,例如1.1;在目标移动终端的时间参数晚于或等于13:00并且早于17:00的情况下,将每个用户应用的第一调整系数t设置为小于1,例如0.8;在目标移动终端的时间参数晚于或等于17:00并且早于19:00的情况下,将每个用户应用的第一调整系数t设置为大于1,例如1.1;在目标移动终端的时间参数晚于或等于19:00并且早于23:00的情况下,将每个用户应用的第一调整系数t设置为大于1,例如1.2;以及在目标移动终端的时间参数晚于或等于23:00并且早于24:00的情况下,将每个用户应用的第一调整系数t设置为小于1,例如0.9。

所述位置参数为目标移动终端的当前位置。

其中排序装置根据所述目标移动终端的位置参数为每个用户应用设置第二调整系数l包括:在目标移动终端的位置参数为办公室的情况下,将每个用户应用的第二调整系数l设置为小于1,例如0.8;在目标移动终端的位置参数为家的情况下,将每个用户应用的第二调整系数l设置为大于1,例如1.2;在目标移动终端的位置参数为餐馆的情况下,将每个用户应用的第二调整系数l设置为小于1,例如0.9;在目标移动终端的位置参数为道路的情况下,将每个用户应用的第二调整系数l设置为小于1,例如0.8;以及在目标移动终端的位置参数为地铁的情况下,将每个用户应用的第二调整系数l设置为大于1,例如1.1。

排序装置获取所述时间参数和位置参数各自的权重比例包括:读取目标移动终端内的权重配置文件,对所述权重配置文件进行解析以获取所述时间参数和位置参数各自的权重比例;

其中所述时间参数和位置参数各自的权重比例的和为1,所述时间参数和位置参数的权重比例分别为0.5和0.5;所述时间参数和位置参数的权重比例分别为0.3和0.7;所述时间参数和位置参数的权重比例分别为0.2和0.8;所述时间参数和位置参数的权重比例分别为0.7和0.3;所述时间参数和位置参数的权重比例分别为0.8和0.2;所述时间参数和位置参数的权重比例分别为0.4和0.6;所述时间参数和位置参数的权重比例分别为0.6和0.4。

其中排序装置根据每个用户应用的第一调整系数t和第二调整系数l以及各自的权重比例确定每个用户应用的第三调整系数f为:

第三调整系数f=第一调整系数t×w1+第二调整系数l×w2,其中w1为时间参数的权重比例,w2为位置参数的权重比例。

其中排序装置基于每个用户应用的第三调整系数f和在当前状态下的运行概率计算每个用户应用在当前状态下的经过调整的运行概率包括:将每个用户应用的第三调整系数f和在当前状态下的运行概率的乘积作为每个用户应用在当前状态下的经过调整的运行概率。

还包括初始化装置,用于响应于用户发起的针对移动互联网内目标移动终端的与用户应用相关联的数据文件进行文件预取的文件预取请求,获取与文件预取相关联的动态配置文件;

在所述目标移动终端的第一存储器中创建动态索引区域,并且根据所述动态配置文件在第一存储器中创建用于存储数据文件的多个动态存储单元,其中根据所述动态配置文件确定所述多个动态存储单元中的每个动态存储单元的存储容量;以及

在所述动态索引区域中生成动态索引表,所述动态索引表包括多个索引项,每个索引项用于记录多个动态存储单元中的相应动态存储单元的应用标识、起始地址、结束地址、存储容量和存储级别。

其中第一存储器为随机存取存储器,第二存储器为只读存储器。

所述动态配置文件包括第一存储器中用于提供多个动态存储单元的存储区域的起始地址和结束地址,并且动态配置文件还包括多个动态存储单元中的每个动态存储单元的存储容量。

其中应用标识为动态存储单元所归属的用户应用的标识符,起始地址为动态存储单元的存储空间的起始地址,结束地址为动态存储单元的存储空间的结束地址,存储容量为动态存储单元的存储空间的存储容量和存储级别为动态存储单元的存储空间的存储级别。

还包括根据为动态存储单元所设置的存储级别对动态索引表中相应的索引项进行更新。

其中预取装置根据为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元的存储容量,从与定量存储级的每个预取用户应用相关联的多个数据文件选择至少一个数据文件包括:

根据为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元的存储容量将与定量存储级的每个预取用户应用相关联的多个数据文件进行分组以生成多个文件组,其中每个文件组包括至少一个数据文件,并为定量存储级的每个预取用户应用的多个文件组设置不同的优先级以构成优先级队列,将每个优先级队列中位于队首的文件组作为当前文件组并将当前文件组中的至少一个数据文件从第二存储器复制到为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元并且为定量存储级的每个动态存储单元设置第三时间周期,每当第三时间周期期满时,按照优先级降低的顺序使用优先级队列中的下一文件组作为当前文件组,直到不存在下一文件组为止;

将当前文件组中的至少一个数据文件作为从与定量存储级的每个预取用户应用相关联的多个数据文件选择的至少一个数据文件;其中每个文件组的尺寸小于相应的定量存储级的动态存储单元的存储空间。其中预取装置根据为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元的存储容量,从与定量存储级的每个预取用户应用相关联的多个数据文件选择至少一个数据文件包括:

根据为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元的存储容量将与定量存储级的每个预取用户应用相关联的多个数据文件进行分组以生成多个文件组,其中每个文件组包括至少一个数据文件,从所述多个文件组中随机选择一个文件组作为当前文件组并将当前文件组中的至少一个数据文件从第二存储器复制到为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元并且为定量存储级的每个动态存储单元设置第三时间周期,每当第三时间周期期满时,从多个文件组中随机选择下一文件组作为当前文件组,直到不存在下一文件组为止;

将当前文件组中的至少一个数据文件作为从与定量存储级的每个预取用户应用相关联的多个数据文件选择的至少一个数据文件;其中每个文件组的尺寸小于相应的定量存储级的动态存储单元的存储空间。

在预取装置将所选择的至少一个数据文件从第二存储器复制到为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元之后,预取装置设置第三时间周期并且每当第三时间周期期满时,根据为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元的存储容量,重新从与定量存储级的每个预取用户应用相关联的多个数据文件选择至少一个数据文件,将重新选择的至少一个数据文件从第二存储器复制到为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元。

其中预取装置根据为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元的存储容量,从与定量存储级的每个预取用户应用相关联的多个数据文件选择至少一个数据文件包括:

步骤1、根据为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元的存储容量将与定量存储级的每个预取用户应用相关联的多个数据文件进行分组以生成n个文件组,其中n为大于1的自然数并且每个文件组包括至少一个数据文件;

步骤2、为n个文件组中的每个文件组设置不同的序号,其中所述序号从1至n;

步骤3、将序号i=1的文件组作为当前文件组,其中n≥i>0;

步骤4、为定量存储级的每个动态存储单元设置第三时间周期;

步骤5、将当前文件组所包括的至少一个数据文件从第二存储器复制到为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元;

步骤6、当第三时间周期期满时,判断i=n是否成立,如果成立,则结束;如果不成立,则将序号i=i+1的文件组作为当前文件组,进行步骤5;

其中每个文件组的尺寸小于定量存储级的动态存储单元的存储容量。

其中设置装置根据所述排序列表确定所述多个用户应用中能够被从第二存储器预先加载到第一存储器中的多个预取用户应用包括:

当排序列表中运行概率大于预取阈值的用户应用的数量大于0时,将排序列表中运行概率大于预取阈值的用户应用确定为能够被从第二存储器预先加载到第一存储器中的预取用户应用,以确定至少一个预取用户应用;

当排序列表中运行概率大于预取阈值的用户应用的数量等于0时,将排序列表中所有用户应用确定为能够被从第二存储器预先加载到第一存储器中的预取用户应用,以确定至少一个预取用户应用。

其中设置装置根据所述排序列表为至少一个预取用户应用中每个预取用户应用设置存储级别包括:将所述排序列表中运行概率大于高概率阈值的预取用户应用的存储级别设置为减量存储级;将所述排序列表中运行概率小于或等于高概率阈值并且大于中概率阈值的预取用户应用的存储级别设置为增量存储级;将所述排序列表中运行概率小于或等于中概率阈值并且大于低概率阈值的预取用户应用的存储级别设置为定量存储级;将所述排序列表中运行概率小于或等于低概率阈值的预取用户应用的存储级别设置为压缩存储级。

其中分配装置为每个减量存储级的预取用户应用所分配的至少一个动态存储单元能够容纳相应的减量存储级的预取用户应用的所有数据文件,并且分配装置为每个压缩存储级的预取用户应用所分配的至少一个动态存储单元能够容纳相应的压缩存储级的预取用户应用的所有经过压缩的数据文件。

其中第一时间周期为30秒,第二时间周期为60秒,其中第三时间周期为90秒。其中每个预取用户应用的至少一个基础数据文件是与增量存储级的每个预取用户应用相关联的多个数据文件中启动顺序高于优先阈值的至少一个数据文件。其中第一预定数量为5,所述第二预定数量为8。

附图说明

通过参考下面的附图,可以更为完整地理解本发明的示例性实施方式:

图1为根据本发明实施方式的根据状态信息进行文件预取的方法的流程图;

图2为根据本发明实施方式的排序列表的逻辑示意图;

图3为根据本发明实施方式的减量存储的逻辑示意图;

图4为根据本发明实施方式的增量存储的逻辑示意图;

图5为根据本发明实施方式的定量存储的逻辑示意图;

图6为根据本发明实施方式的压缩存储的逻辑示意图;以及

图7为根据本发明实施方式的根据状态信息进行文件预取的系统的结构示意图。

具体实施方式

图1为根据本发明实施方式的根据状态信息进行文件预取的方法100的流程图。如图1所示,方法100从步骤101处开始。

在步骤101,获取与移动互联网内目标移动终端相关联的运行统计文件,对运行统计文件进行解析以获取所述目标移动终端内多个用户应用中每个用户应用的状态统计信息。移动互联网内包括多个移动终端、基站、内容服务器等。本申请将将发起文件预取请求的移动终端或请求进行文件预取的移动终端确定为目标移动终端。此外,每个移动终端(包括目标移动终端)内包括或安装的用户应用的数量大于4,例如5、10、20个用户应用。与用户应用相关的概念包括系统应用,并且系统应用通常是由移动终端的操作系统所确定的系统级应用。

运行统计文件包括多个状态数据表,并且本申请为目标移动终端内多个用户应用中每个用户应用分配一个状态数据表。每个状态数据表中包括多个状态数据项并且每个状态数据项的内容为五元组<应用名称、运行状态、起始时间、结束时间、累计时间长度>。例如,数据项为<王者荣耀、静止状态、2018年6月8日20:00、2018年6月8日21:50、110分钟>;<王者荣耀、静止状态、2018年6月8日22:00、2018年6月8日22:50、50分钟>。

本申请将为每个用户应用所分配的状态数据表作为每个用户应用的状态统计信息,即,每个用户应用的状态统计信息是通过状态数据表的形式来提供的。为每个用户应用所分配的状态数据表用于实时记录每个用户应用的运行状态信息。即,在移动终端运行的情况下,操作系统或控制设备会将每个用户应用的运行信息,例如,应用名称、运行状态、起始时间、结束时间、累计时间长度等,进行实时统计和记录。因此,状态数据表会记录每个用户应用从过去的特定时间点开始到当前时间点的统计时间区间内的运行信息。其中,在所述运行统计文件中,本申请为每个用户应用保存预定数量(例如,100个,200个,300个)的状态数据项,或为每个用户应用保存预定数量的自然日内或预定时间长度(例如,10天,20天,30天)内的状态数据项。其中预定数量的自然日为10个自然日、20个自然日或30个自然日,其中预定时间长度为240小时、480小时或720小时。

在步骤102,利用所述目标移动终端的定位组件获取所述目标移动终端在预定时间段内的当前状态,根据每个用户应用的状态统计信息和所述当前状态确定每个用户应用在当前状态下的运行概率。其中预定时间段是以当前时间为终点并且以30秒钟、60秒钟或90秒钟(或任何合理数值)之前的时间为起点的一段时间;或者预定时间段是从当前时间开始的并且长度为30秒钟、60秒钟或90秒钟(或任何合理数值)的一段时间。其中所述当前状态为:静止状态、场所内移动状态、地铁状态、步行状态或汽车状态等。即,目标移动终端的状态可以包括静止状态、场所内移动状态、地铁状态、步行状态或汽车状态等。

其中利用所述目标移动终端的定位组件获取所述目标移动终端在预定时间段内的当前状态包括:当利用所述目标移动终端的定位组件确定所述目标移动终端在预定时间段内的所有位置坐标点是相同的位置坐标点或所有位置坐标点的位置相同时,则获取所述目标移动终端的当前状态为静止状态。例如,利用所述目标移动终端的gps或北斗组件确定所述目标移动终端在60秒钟内的所有位置坐标点是同一位置坐标点或所有位置坐标点的位置相同(即办公位置)时,则获取所述目标移动终端的当前状态为静止状态。

当利用所述目标移动终端的定位组件确定所述目标移动终端在预定时间段内的所有位置坐标点不完全是相同的位置坐标点但全部位于特定场所(利用所述目标移动终端的定位组件确定所述目标移动终端在预定时间段内的所有位置坐标点全部位于特定场所)内时,则获取所述目标移动终端的当前状态为场所内移动状态。例如,当利用所述目标移动终端的gps或北斗组件确定所述目标移动终端在60秒内的所有位置坐标点不完全是相同的位置坐标点但全部位于特定场所,或者利用所述目标移动终端的gps或北斗组件确定所述目标移动终端在60秒内的所有位置坐标点全部位于特定场所(例如,办公楼)内时,则获取所述目标移动终端的当前状态为场所内移动状态,即办公楼内移动状态。

当利用所述目标移动终端的定位组件确定所述目标移动终端在预定时间段内的所有位置坐标点均位于地铁线路上时,则获取所述目标移动终端的当前状态为地铁状态。例如,当利用所述目标移动终端的gps或北斗组件确定所述目标移动终端在60秒内的所有位置坐标点均位于地铁线路时,则获取所述目标移动终端的当前状态为地铁状态。

利用所述目标移动终端的定位组件确定所述目标移动终端在预定时间段内的平均速度,当平均速度大于3公里/小时并且小于6公里/小时时,则获取所述目标移动终端的当前状态为步行状态。利用所述目标移动终端的gps或北斗组件确定所述目标移动终端在60秒内的平均速度,当平均速度大于3公里/小时并且小于6公里/小时时,则获取所述目标移动终端的当前状态为步行状态。

利用所述目标移动终端的定位组件确定所述目标移动终端在预定时间段内的平均速度,当平均速度大于25公里/小时时,则获取所述目标移动终端的当前状态为汽车状态。利用所述目标移动终端的gps或北斗组件确定所述目标移动终端在60秒内的平均速度,当平均速度大于25公里/小时时,则获取所述目标移动终端的当前状态为汽车状态。

图2为根据本发明实施方式的排序列表200的逻辑示意图。如图2所示,利用所述目标移动终端的定位组件(gps或北斗组件)获取目标移动终端在预定时间段(2018年6月8日20:00:00-2018年6月8日20:01:00)内的移动轨迹。移动轨迹包括由目标移动终端的gps组件在2018年6月8日20:00:00-2018年6月8日20:01:00的60秒内获取的60个位置点。当60个位置点全部位于建筑物(银谷大厦)内,则确定当前状态为场所内移动状态,根据每个用户应用的状态统计信息和所述当前状态确定每个用户应用在当前状态下的运行概率。

本申请每隔1秒钟或2秒钟记录一个位置点。当用户进入办公室后,位置点变得比较密集,说明用户进入办公室进行加班。

根据每个用户应用的状态统计信息和所述当前状态确定每个用户应用在当前状态下的运行概率包括:选择用于确定运行概率的统计日期区间,所述统计日期区间包括至少10个自然日(例如,10个自然日,20个自然日,30个自然日)。

对每个用户应用的状态统计信息内多个数据项中的每个数据项进行解析,以确定在统计日期区间内,每个用户应用在当前状态(场所内移动状态)下运行的有效次数ci。其中当用户应用在当前状态下的运行时间超过20秒、30秒、60秒或90秒时,计为一次有效次数。例如,支付宝应用在10个自然日的每个自然日内在当前状态(例如场所内移动状态)下的连续运行时间为50秒(运行未超过60秒)、120秒、0秒(未运行)、180秒、360秒、520秒、780秒、0秒(未运行)、55秒(运行未超过60秒)和600秒,那么支付宝应用的有效次数为0+1+0+1+1+1+1+0+0+1=6次。其中1≤i≤na,na为目标移动终端内用户应用的数量,na为自然数并且na大于4;

基于每个用户应用在统计日期区间内,在当前状态(例如场所内移动状态)下运行的有效次数ci计算所有用户应用在当前状态下运行的总有效次数s:

计算每个用户应用在当前状态下的运行概率pi=ci/s。

例如,支付宝应用在10个自然日的当前状态(例如场所内移动状态)下运行6次、微信应用在10个自然日的当前状态(例如场所内移动状态)下运行10次、淘宝应用10个自然日的当前状态(例如场所内移动状态)下运行3次、王者荣耀在10个自然日的当前状态(例如场所内移动状态)下运行1次以及美团应用在10个自然日的当前状态(例如场所内移动状态)下运行0次,那么s=20次。支付宝、微信应用、淘宝应用、王者荣耀和美团应用在当前状态(例如场所内移动状态)下的运行概率分别是30%、50%、15%、5%和0%。

其中根据每个用户应用的状态统计信息和所述当前状态确定每个用户应用在当前状态下的运行概率包括:选择用于确定运行概率的统计日期区间,所述统计日期区间包括至少10个自然日(例如,10个自然日,20个自然日,30个自然日);

对每个用户应用的状态统计信息内多个数据项中的每个数据项进行解析,以确定在统计日期区间内,每个用户应用在当前状态(例如场所内移动状态)下运行的时间长度ti。支付宝应用在10个自然日的每个自然日内在当前状态(例如场所内移动状态)下的运行时间为10秒、60秒、0秒、50秒、30秒、90秒、120秒、0秒、15秒和60秒,那么支付宝应用的时间长度为435秒。其中1≤i≤na,na为目标移动终端内用户应用的数量,na为自然数并且na大于4;

基于每个用户应用在统计日期区间内,在当前状态下运行的时间长度ti计算所有用户应用在当前状态下运行的总时间长度t:

计算每个用户应用在当前状态下的运行概率pi=ti/t。例如,支付宝应用在10个自然日的当前状态(例如场所内移动状态)下运行435秒、微信应用在10个自然日的当前状态(例如场所内移动状态)下运行875秒、淘宝应用10个自然日的当前状态(例如场所内移动状态)下运行500秒、王者荣耀在10个自然日的当前状态(例如场所内移动状态)下运行190秒以及美团应用在10个自然日的当前状态(例如场所内移动状态)下运行0秒,那么t=2000秒。支付宝、微信应用、淘宝应用、王者荣耀和美团应用在当前状态(例如场所内移动状态)下的运行概率分别是21.75%、43.75%、25%、9.5%和0%。

在步骤103,根据目标移动终端的时间参数为每个用户应用设置第一调整系数t并且根据所述目标移动终端的位置参数为每个用户应用设置第二调整系数l,获取所述时间参数和位置参数的权重比例,根据每个用户应用的第一调整系数t和第二调整系数l以及权重比例确定每个用户应用的第三调整系数f,基于每个用户应用的第三调整系数f和在当前状态下的运行概率计算每个用户应用在当前状态下的经过调整的运行概率,基于每个用户应用在当前状态下的经过调整的运行概率对多个用户应用进行运行概率的降序排序以生成排序列表。

其中时间参数为目标移动终端的当前系统时间(操作系统所指示的当前运行时间,例如目标移动终端所显示的当前时间),或者所述时间参数是目标移动终端的当前位置(例如,目标移动终端在北京,那么时间参数为北京时间,应当了解的是,即使目标移动终端在乌鲁木齐,时间参数依然为北京时间)的标准时间。

其中根据所述目标移动终端的时间参数为每个用户应用设置第一调整系数t包括:

在目标移动终端的时间参数晚于或等于00:00并且早于07:00的情况下,将每个用户应用的第一调整系数t设置为小于1,例如0.6。即在目标移动终端的时间参数位于凌晨到早上(休息)的区间内时,将每个用户应用的第一调整系数t设置为小于1。在目标移动终端的时间参数晚于或等于07:00并且早于11:00的情况下,将每个用户应用的第一调整系数t设置为小于1,例如0.8。即在目标移动终端的时间参数位于上午(上班)的区间内时,将每个用户应用的第一调整系数t设置为小于1。在目标移动终端的时间参数晚于或等于11:00并且早于13:00的情况下,将每个用户应用的第一调整系数t设置为大于1,例如1.1。即在目标移动终端的时间参数位于中午(午休)的区间内时,将每个用户应用的第一调整系数t设置为大于1。在目标移动终端的时间参数晚于或等于13:00并且早于17:00的情况下,将每个用户应用的第一调整系数t设置为小于1,例如0.8。即在目标移动终端的时间参数位于下午(上班)的区间内时,将每个用户应用的第一调整系数t设置为小于1。在目标移动终端的时间参数晚于或等于17:00并且早于19:00的情况下,将每个用户应用的第一调整系数t设置为大于1,例如1.1。即在目标移动终端的时间参数位于傍晚(下班回家)的区间内时,将每个用户应用的第一调整系数t设置为大于1。在目标移动终端的时间参数晚于或等于19:00并且早于23:00的情况下,将每个用户应用的第一调整系数t设置为大于1,例如1.2。即在目标移动终端的时间参数位于晚上(休息时间)的区间内时,将每个用户应用的第一调整系数t设置为大于1。在目标移动终端的时间参数晚于或等于23:00并且早于24:00的情况下,将每个用户应用的第一调整系数t设置为小于1,例如0.9。即在目标移动终端的时间参数位于深夜(准备休息)上的区间内时,将每个用户应用的第一调整系数t设置为小于1。

应当了解的是,用户可以根据需要来设置各个时间区间的起始和结束时间、第一调整系数t的大小等。其中位置参数为目标移动终端的当前位置(通过定位组件获得的当前位置)。

根据所述目标移动终端的位置参数为每个用户应用设置第二调整系数l包括:

在目标移动终端的位置参数为办公室的情况下,将每个用户应用的第二调整系数l设置为小于1,例如0.8。在目标移动终端的位置参数为家的情况下,将每个用户应用的第二调整系数l设置为大于1,例如1.2。在目标移动终端的位置参数为餐馆的情况下,将每个用户应用的第二调整系数l设置为小于1,例如0.9。在目标移动终端的位置参数为道路(例如,公路)的情况下,将每个用户应用的第二调整系数l设置为小于1,例如0.8。在目标移动终端的位置参数为地铁的情况下,将每个用户应用的第二调整系数l设置为大于1,例如1.1。

应当了解的是,用户可以根据需要来设置各个位置处的第二调整系数l的大小。

其中获取所述时间参数和位置参数各自的权重比例包括:读取目标移动终端内的权重配置文件,对所述权重配置文件进行解析以获取所述时间参数和位置参数各自的权重比例;其中所述时间参数和位置参数各自的权重比例的和为1,举例来说,所述时间参数和位置参数的权重比例分别为0.5和0.5;所述时间参数和位置参数的权重比例分别为0.3和0.7;所述时间参数和位置参数的权重比例分别为0.2和0.8;所述时间参数和位置参数的权重比例分别为0.7和0.3;所述时间参数和位置参数的权重比例分别为0.8和0.2;所述时间参数和位置参数的权重比例分别为0.4和0.6;所述时间参数和位置参数的权重比例分别为0.6和0.4。

其中根据每个用户应用的第一调整系数t和第二调整系数l以及各自的权重比例确定每个用户应用的第三调整系数f为:第三调整系数f=第一调整系数t×w1+第二调整系数l×w2,其中w1为时间参数的权重比例,w2为位置参数的权重比例,如图2所示。

其中基于每个用户应用的第三调整系数f和在当前状态下的运行概率计算每个用户应用在当前状态下的经过调整的运行概率包括:将每个用户应用的第三调整系数f和在当前状态下的运行概率的乘积作为每个用户应用在当前状态下的经过调整的运行概率。

在图2所示的实例中,如表201所示,在从2018年6月1日至2018年6月10日的10个自然日内的当前状态下,王者荣耀的运行概率为15%、抖音短视频的运行概率为13.3%、优酷视频的运行概率为12.5%、手机淘宝的运行概率为10.8%、美团外卖的运行概率为8.3%、百度外卖的运行概率为7.5%、极品飞车的经过调整的运行概率为5.8%、三国极无双的运行概率为5%以及懒人英语的经过调整的运行概率为0%。

在目标移动终端的时间参数晚于或等于23:00并且早于24:00的情况下,将每个用户应用的第一调整系数t设置为0.9,并且同时,在目标移动终端的位置参数为家的情况下,将每个用户应用的第二调整系数l设置为1.2。时间参数的权重比例为0.4并且位置参数的权重比例为0.6。那么,第三调整系数f为:第三调整系数f=第一调整系数t×w1+第二调整系数l×w2,即第三调整系数f=0.9×0.4+1.2×0.6=0.36+0.72=1.08。

其中基于每个用户应用的第三调整系数f和在当前状态下的运行概率计算每个用户应用在当前状态下的经过调整的运行概率包括:将每个用户应用的第三调整系数f和在当前状态下的运行概率的乘积作为每个用户应用在当前状态下的经过调整的运行概率,即运行概率×1.08=经过调整的运行概率。

为了便于计算,将经过调整的运行概率的实例选作1.2。在图2所示的实例中,如表210所示,在从2018年6月1日至2018年6月10日的10个自然日内的当前状态下,王者荣耀的经过调整的运行概率为18%、抖音短视频的经过调整的运行概率为16%、优酷视频的经过调整的运行概率为15%、手机淘宝的经过调整的运行概率为13%、美团外卖的经过调整的运行概率为10%、百度外卖的经过调整的运行概率为9%、极品飞车的经过调整的运行概率为7%、三国极无双的经过调整的运行概率为6%以及懒人英语的经过调整的运行概率为0%。

在步骤104,根据所述排序列表确定所述多个用户应用中能够被从第二存储器预先加载到第一存储器中的至少一个预取用户应用,并且根据所述排序列表为至少一个预取用户应用中每个预取用户应用设置存储级别,其中所述存储级别包括:减量存储级、增量存储级、定量存储级和压缩存储级。

其中根据所述排序列表确定所述多个用户应用中能够被从第二存储器预先加载到第一存储器中的多个预取用户应用包括:当排序列表中运行概率大于预取阈值(例如,5%、10%)的用户应用的数量大于0(例如,10个)时,将排序列表中运行概率大于预取阈值的用户应用确定为能够被从第二存储器预先加载到第一存储器中的预取用户应用,以确定至少一个预取用户应用;当排序列表中运行概率大于预取阈值(例如,5%、10%)的用户应用的数量等于0时,将排序列表中所有用户应用(例如,15个)确定为能够被从第二存储器预先加载到第一存储器中的预取用户应用,以确定至少一个预取用户应用。

根据所述排序列表为至少一个预取用户应用中每个预取用户应用设置存储级别包括:

将所述排序列表中运行概率大于高概率阈值(例如,15%)的预取用户应用的存储级别设置为减量存储级;将所述排序列表中运行概率小于或等于高概率阈值(例如,15%)并且大于中概率阈值(例如,12%)的预取用户应用的存储级别设置为增量存储级;将所述排序列表中运行概率小于或等于中概率阈值(例如,12%)并且大于低概率阈值(例如,8%)的预取用户应用的存储级别设置为定量存储级;将所述排序列表中运行概率小于或等于低概率阈值(例如,8%)的预取用户应用的存储级别设置为压缩存储级。其中预取用户应用的运行概率均大于5%。

如图2所示,根据上述方式可以确定,王者荣耀的运行概率为18%和抖音短视频的运行概率为16%,因此王者荣耀和抖音短视频的存储级别为减量存储级。优酷视频的运行概率为15%和手机淘宝的运行概率为13%,因此优酷视频和手机淘宝的存储级别为增量存储级。美团外卖的运行概率为10%和百度外卖的运行概率为9%,因此美团外卖和百度外卖的存储级别为定量存储级,极品飞车的运行概率为7%和三国极无双的运行概率为6%,因此极品飞车和三国极无双的存储级别为压缩存储级。

由于排序列表中运行概率大于预取阈值5%的用户应用的数量8大于0,因此排序列表中运行概率大于预取阈值的用户应用(王者荣耀的运行概率为18%、抖音短视频的运行概率为16%、优酷视频的运行概率为15%、手机淘宝的运行概率为13%、美团外卖的运行概率为10%、百度外卖的运行概率为9%、极品飞车的运行概率为7%、三国极无双的运行概率为6%)确定为能够被从第二存储器预先加载到第一存储器中的预取用户应用,以确定至少一个预取用户应用。懒人英语的运行概率为0%,因此不属于预取用户应用。

在步骤105,为减量存储级的每个预取用户应用分配至少一个动态存储单元,为压缩存储级的每个预取用户应用分配至少一个动态存储单元,为增量存储级的每个预取用户应用分配一个动态存储单元并且为定量存储级的每个预取用户应用分配一个动态存储单元。其中为减量存储级的每个预取用户应用分配的至少一个动态存储单元中的每个动态存储单元的存储容量可以相同或不同,并且为压缩存储级的每个预取用户应用分配至少一个动态存储单元中的每个动态存储单元的存储容量可以相同或不同。

为每个减量存储级的预取用户应用所分配的至少一个动态存储单元的总存储容量能够容纳相应的减量存储级的预取用户应用的所有数据文件。为每个压缩存储级的预取用户应用所分配的至少一个动态存储单元的总存储容量能够容纳相应的压缩存储级的预取用户应用的所有经过压缩的数据文件。为增量存储级的每个预取用户应用所分配一个动态存储单元能够容纳相应的增量存储级的预取用户应用的所有数据文件。为定量存储级的每个预取用户应用所分配一个动态存储单元能够容纳相应的定量存储级的预取用户应用的所有数据文件。

在步骤106,根据每个预取用户应用的存储级别给为每个预取用户应用所分配的动态存储单元设置存储级别。将为减量存储级的每个预取用户应用所分配的至少一个动态存储单元的每个动态存储单元设置为减量存储级,将为压缩存储级的每个预取用户应用所分配的至少一个动态存储单元的每个动态存储单元设置为压缩存储级,将为增量存储级的每个预取用户应用分配一个动态存储单元设置为增量存储级并且将为定量存储级的每个预取用户应用所分配的一个动态存储单元设置为定量存储级。

在步骤107,根据预取用户应用的存储级别将与每个预取用户应用相关联的数据文件从第二存储器进行文件预取,包括:优选地,将与减量存储级的每个预取用户应用相关联的(所有)多个数据文件从第二存储器复制到为减量存储级的每个预取用户应用所分配的至少一个减量存储级的动态存储单元,并在复制完成时为每个减量存储级的动态存储单元设置第一时间周期并开始计时,每当第一时间周期期满时在每个减量存储级的动态存储单元中删除第一预定数量的数据文件,直到每个减量存储级的动态存储单元均不具有数据文件为止。

图3为根据本发明实施方式的减量存储300的逻辑示意图。王者荣耀的运行概率为18%和抖音短视频的运行概率为16%,因此王者荣耀和抖音短视频的存储级别为减量存储级。

将王者荣耀的所有数据文件为从第二存储器复制到为王者荣耀所分配的至少一个减量存储级的动态存储单元301、302和303。动态存储单元301、302和303中每个的存储容量均为500m,并且在每个动态存储单元中标注应用名称和存储级别。在复制完成后为每个减量存储级的动态存储单元301、302和303设置第一时间周期(例如,30秒、50秒、60秒),每当第一时间周期期满(即,每当经过了30秒、50秒、60秒)时在每个减量存储级的动态存储单元301、302和303中删除第一预定数量(例如,3个、5个)的数据文件。

将抖音短视频的所有数据文件为从第二存储器复制到为抖音短视频所分配的至少一个减量存储级的动态存储单元311和312。动态存储单元311和312中每个的存储容量均为60m,并且在每个动态存储单元中标注应用名称和存储级别。并在复制完成后为每个减量存储级的动态存储单元311和312设置第一时间周期(例如,30秒、50秒、60秒),每当第一时间周期期满(即,每当经过了30秒、50秒、60秒)时在每个减量存储级的动态存储单元中删除第一预定数量(例如,3个、5个)的数据文件。例如,在王者荣耀和抖音短视频的数据文件全部复制到相应的动态存储单元301、302和303,以及311和312后,开始计时,每当经过30秒时,从动态存储单元301、302、303、311和312中的每个删除3个数据文件。当动态存储单元301、302和303,以及311和312中均不具有数据文件时,停止删除文件。

优选地,在与增量存储级的每个预取用户应用相关联的(所有)多个数据文件中选择至少一个基础数据文件,将增量存储级的每个预取用户应用的至少一个基础数据文件从第二存储器复制到为增量存储级的每个预取用户应用所分配的增量存储级的动态存储单元,并在复制完成时为增量存储级的动态存储单元设置第二时间周期并开始计时,其中每当第二时间周期期满时将与增量存储级的每个预取用户应用相关联的多个数据文件中除了已经复制的文件之外的第二预定数量的数据文件从第二存储器复制到为增量存储级的每个预取用户应用所分配的增量存储级的动态存储单元,直到每个预取用户应用相关联的所有数据文件全部被复制到所分配的相应的增量存储级的动态存储单元为止。其中每个预取用户应用的至少一个基础数据文件是与增量存储级的每个预取用户应用相关联的多个数据文件中启动顺序高于优先阈值(例如,优先阈值为3,即将多个数据文件中每个的启动顺序设置为1、2、3、4或5级,其中1、2、3、4或5级的启动顺序的级别依次升高)的至少一个数据文件。

其中为每个预取用户应用所分配的增量存储级的一个动态存储单元能够容纳/存储相应的/所归属的预取用户应用的所有(多个)数据文件。

图4为根据本发明实施方式的增量存储400的逻辑示意图。其中优酷视频的运行概率为15%和手机淘宝的运行概率为13%,因此优酷视频和手机淘宝的存储级别为增量存储级。

从优酷视频相关联的(所有)多个数据文件中选择10个基础数据文件,将这10个基础文件从第二存储器复制到为优酷视频所分配的增量存储级的动态存储单元401。动态存储单元401的存储容量均为200m,并且在每个动态存储单元中标注应用名称和存储级别。在复制完成后为增量存储级的动态存储单元401设置第二时间周期(例如,30秒、50秒、60秒),每当第二时间周期期满(即,每当经过了30秒、50秒、60秒)时将与优酷视频用相关联的多个数据文件中(除了已经复制的文件之外的)第二预定数量的(例如,3个、5个、8个)数据文件从第二存储器复制到动态存储单元401。

从手机淘宝相关联的(所有)多个数据文件中选择10个基础数据文件,将这10个基础文件从第二存储器复制到为手机淘宝所分配的增量存储级的动态存储单元402。动态存储单元402的存储容量均为300m,并且在每个动态存储单元中标注应用名称和存储级别。在复制完成后为增量存储级的动态存储单元402设置第二时间周期(例如,30秒、50秒、60秒),每当第二时间周期期满(即,每当经过了30秒、50秒、60秒)时将与手机淘宝用相关联的多个数据文件中(除了已经复制的文件之外的)第二预定数量的(例如,3个、5个、8个)数据文件从第二存储器复制到动态存储单元402。

例如,在优酷视频和手机淘宝的10个基础数据文件全部复制到相应的动态存储单元401以及402后,开始计时,每当经过60秒时,将与优酷视频用相关联的90个数据文件中(初始为100个数据文件)的8个数据文件从第二存储器复制到动态存储单元401;以及每当经过60秒时,将与手机淘宝用相关联的150个数据文件中(初始为160个数据文件)的8个数据文件从第二存储器复制到动态存储单元401。当优酷视频的所有100个数据文件全部被复制奥动态存储单元401中时,不再进行复制动作,当手机淘宝的全部160个数据文件全部被复制奥动态存储单元402中时,不再进行复制动作

优选地,根据为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元的存储容量,从与定量存储级的每个预取用户应用相关联的(所有)多个数据文件选择至少一个数据文件(所选择的至少一个数据文件所需的总的存储容量小于定量存储级的动态存储单元的存储容量),并且将所选择的至少一个数据文件从第二存储器复制到为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元。

图5为根据本发明实施方式的定量存储500的逻辑示意图。其中美团外卖的运行概率为10%和百度外卖的运行概率为9%,因此美团外卖和百度外卖的存储级别为定量存储级。根据为美团外卖所分配的定量存储级的动态存储单元的存储容量20m,从与美团外卖相关联的(所有)多个数据文件选择至少一个数据文件(所选择的至少一个数据文件所需的存储容量小于20m),并且将所选择的至少一个数据文件从第二存储器复制到为动态存储单元501。根据为百度外卖所分配的定量存储级的动态存储单元的存储容量10m,从与美团外卖相关联的(所有)多个数据文件选择至少一个数据文件(所选择的至少一个数据文件所需的存储容量小于10m),并且将所选择的至少一个数据文件从第二存储器复制到为动态存储单元511。

可替换地,其中根据为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元的存储容量,从与定量存储级的每个预取用户应用相关联的多个数据文件选择至少一个数据文件包括:

根据为定量存储级的每个预取用户应用(美团外卖或百度外卖)所分配的定量存储级的动态存储单元(501或511)的存储容量将与定量存储级的每个预取用户应用相关联的多个数据文件进行分组以生成多个文件组,其中每个文件组包括至少一个数据文件。其中每个文件组的至少一个数据文件所需的总的存储容量小于相应的定量存储级的动态存储单元的存储容量。即,美团外卖的每个文件组中所有数据文件的总的存储容量小于20m,并且百度外卖的每个分组中所有数据文件的总的存储容量小于10m。为定量存储级的每个预取用户应用的多个文件组设置不同的优先级以构成优先级队列。例如,美团外卖包括5个文件组,并且5个文件组的优先级为1、2、3、4和5(其中数字越小优先级越高)。将每个优先级队列中位于队首的文件组(优先级为1的文件组)作为当前文件组并将当前文件组中的至少一个数据文件从第二存储器复制到为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元(例如,动态存储单元501)。在复制完成后为定量存储级的每个动态存储单元(501或511)设置第三时间周期(例如,30秒、60秒或90秒)。每当第三时间周期期满时(即,每当经过了30秒、60秒、60秒),按照优先级降低的顺序使用优先级队列中的下一文件组(例如优先级为2的文件组)作为当前文件组,直到不存在下一文件组为止。即,将优先级1、2、3、4和5的文件组均复制到动态存储单元501或511后为止。由此可知,当时间足够长(足够大于多个第三时间周期期)时,例如,第三时间周期为90秒,并且到达了第450秒(即5个第三时间周期时),5个文件组中的所有文件组均用作过当前文件组。在这种情况下,不在对动态存储单元(501或511)中的内容进行更新,即保留优先级为5的文件组的至少一个数据文件在动态存储单元501中。

将当前文件组(可能是优先级为1、2、3、4或5的文件组)中的至少一个数据文件作为从与定量存储级的每个预取用户应用相关联的多个数据文件选择的至少一个数据文件。其中每个文件组的尺寸(即,文件组中所有数据文件的尺寸)小于相应的定量存储级的动态存储单元的存储空间。

可替换地,其中根据为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元的存储容量,从与定量存储级的每个预取用户应用相关联的多个数据文件选择至少一个数据文件包括:

根据为定量存储级的每个预取用户应用(美团外卖或百度外卖)所分配的定量存储级的动态存储单元(501或511)的存储容量将与定量存储级的每个预取用户应用相关联的多个数据文件进行分组以生成多个文件组,其中每个文件组包括至少一个数据文件其中每个文件组的至少一个数据文件所需的总的存储容量小于相应的定量存储级的动态存储单元的存储容量。即,美团外卖的每个文件组中所有数据文件的总的存储容量小于20m,并且百度外卖的每个分组中所有数据文件的总的存储容量小于10m。例如,美团外卖包括5个文件组,并且5个文件组的序号为1、2、3、4和5。从所述多个文件组中随机选择一个文件组(序号为5的文件组)作为当前文件组并将当前文件组中的至少一个数据文件从第二存储器复制到为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元(例如,动态存储单元501)并在复制完成后为定量存储级的每个动态存储单元(501或511)设置第三时间周期(例如,30秒、60秒或90秒)。每当第三时间周期期满时(即,每当经过了30秒、60秒、60秒),从多个文件组中随机选择下一文件组(例如,序号为2的文件组)作为当前文件组,直到不存在下一文件组为止。将序号为1、2、3、4和5的文件组均复制到动态存储单元501或511后为止。由此可知,当时间足够长(足够大于多个第三时间周期期)时,例如,第三时间周期为90秒,并且到达了第450秒(即5个第三时间周期时),5个文件组中的所有文件组均用作过当前文件组。在这种情况下,不在对动态存储单元(501或511)中的内容进行更新,即保留随机选择的最后一个文件组(例如文件组1)的至少一个数据文件在动态存储单元501中。

将当前文件组(可能是序号为1、2、3、4或5的文件组)中的至少一个数据文件作为从与定量存储级的每个预取用户应用相关联的多个数据文件选择的至少一个数据文件。其中每个文件组的尺寸(即,文件组中所有数据文件的尺寸)小于相应的定量存储级的动态存储单元的存储空间。

可替换地,在将所选择的至少一个数据文件从第二存储器复制到为定量存储级的每个预取用户应用(美团外卖或百度外卖)所分配的定量存储级的动态存储单元(501或511)之后,设置第三时间周期(例如,30秒、60秒或90秒)并且开始计时,每当第三时间周期(例如,30秒、60秒或90秒)期满时,根据为定量存储级的每个预取用户应用(美团外卖或百度外卖)所分配的定量存储级的动态存储单元(501或511)的存储容量(20m或10m),重新从与定量存储级的每个预取用户应用相关联的多个数据文件随机/按顺序选择至少一个数据文件,将重新选择的至少一个数据文件从第二存储器复制到为定量存储级的每个预取用户应用(美团外卖或百度外卖)所分配的定量存储级的动态存储单元(20m或10m)。其中,通过随机选择的方式重新选择的至少一个数据文件中的数据文件可能会与之前随机选择的数据文件相同。通过按顺序选择的方式重新选择的至少一个数据文件中的数据文件不会与之前按顺序选择的任意的数据文件相同。

可替换地,其中根据为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元的存储容量,从与定量存储级的每个预取用户应用相关联的多个数据文件选择至少一个数据文件包括:

步骤1、根据为定量存储级的每个预取用户应用(美团外卖或百度外卖)所分配的定量存储级的动态存储单元(501或511)的存储容量(20m或10m)将与定量存储级的每个预取用户应用相关联的多个数据文件进行分组以生成n(例如,n=5)个文件组,其中n为大于1的自然数并且每个文件组包括至少一个数据文件;

步骤2、为n个文件组中的每个文件组设置不同的序号,其中所述序号从1至n(例如,1、2、3、4和5);

步骤3、将序号i=1的文件组作为当前文件组,其中n≥i>0;

步骤4、为定量存储级的每个动态存储单元(501或511)设置第三时间周期(例如,30秒、60秒或90秒);

步骤5、将当前文件组所包括的至少一个数据文件从第二存储器复制到为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元,并开始计时;

步骤6、当第三时间周期期满时,判断i=n(即,i=5是否成立)是否成立,如果成立,则结束;如果不成立,则将序号i=i+1的文件组作为当前文件组,进行步骤5;

其中每个文件组的尺寸小于定量存储级的动态存储单元(501或511)的存储容量(20m或10m)。即,美团外卖的每个文件组中所有数据文件的总的存储容量小于20m,并且百度外卖的每个分组中所有数据文件的总的存储容量小于10m。例如,美团外卖包括5个文件组,并且5个文件组的序号为1、2、3、4和5。

在步骤6中,如果成立,则结束,意味着:将序号为1、2、3、4和5的文件组均复制到动态存储单元501或511后停止复制。由此可知,当时间足够长(足够大于多个第三时间周期期)时,例如,第三时间周期为90秒,并且到达了第450秒(即5个第三时间周期时),5个文件组中的所有文件组均用作过当前文件组。在这种情况下,不在对动态存储单元(501或511)中的内容进行更新,即保留随机选择的最后一个文件组(例如文件组5)的至少一个数据文件在动态存储单元501中。

优选地,将与压缩存储级的每个预取用户应用相关联的(所有)多个数据文件进行压缩以生成多个经过压缩的数据文件,将压缩存储级的每个预取用户应用的多个经过压缩的数据文件从第二存储器复制到为压缩存储级的每个预取用户应用所分配的至少一个压缩存储级的动态存储单元。

图6为根据本发明实施方式的压缩存储600的逻辑示意图。其中极品飞车的运行概率为7%和三国极无双的运行概率为6%,因此王者荣耀和抖音短视频的存储级别为压缩存储级。将与压缩存储级的每个预取用户应用(极品飞车或三国极无双)相关联的(所有)多个数据文件进行压缩以生成多个经过压缩的数据文件,将压缩存储级的每个预取用户应用(极品飞车或三国极无双)的多个经过压缩的数据文件从第二存储器复制到为压缩存储级的每个预取用户应用所分配的至少一个压缩存储级的动态存储单元601、602和603,以及611和612。

例如,将与极品飞车相关联的(所有)多个数据文件进行压缩以生成多个经过压缩的数据文件,将极品飞车的多个经过压缩的数据文件从第二存储器复制到动态存储单元601、602和603。例如,将与三国极无双相关联的(所有)多个数据文件进行压缩以生成多个经过压缩的数据文件,将三国极无双多个经过压缩的数据文件从第二存储器复制到动态存储单元611和612。

优选地,在获取与移动互联网内目标移动终端相关联的运行统计文件之前还包括:

响应于用户发起的针对移动互联网内目标移动终端的与用户应用相关联的数据文件进行文件预取的文件预取请求,获取与所述文件预取相关联的动态配置文件。移动互联网内包括多个移动终端、基站、内容服务器等。本申请将将发起文件预取请求的移动终端或请求进行文件预取的移动终端确定为目标移动终端。此外,每个移动终端(包括目标移动终端)内包括或安装的用户应用的数量大于4,例如5、10、20个用户应用。与用户应用相关的概念包括系统应用,并且系统应用通常是由移动终端的操作系统所确定的系统级应用。

所述动态配置文件包括第一存储器中用于提供多个动态存储单元的存储区域的起始地址和结束地址。提供多个动态存储单元的存储区域可以是第一存储器中的地址上连续的存储区或是地址上不连续的存储区。所述动态配置文件还包括多个动态存储单元中的每个动态存储单元的存储容量。通常,可以根据移动终端(目标移动终端)内每个用户应用的多个数据文件的尺寸和数量来设置每个动态存储单元的存储容量,以使得每个动态存储单元的存储容量能够容纳相应的至少一个数据文件。

在所述目标移动终端的第一存储器中创建动态索引区域,并且根据所述动态配置文件在第一存储器中创建用于存储数据文件的多个动态存储单元,其中根据所述动态配置文件确定所述多个动态存储单元中的每个动态存储单元的存储容量。因此,本申请根据每个动态存储单元的存储容量第一存储器中创建用于存储数据文件的多个动态存储单元。

在所述动态索引区域中生成动态索引表,所述动态索引表包括多个索引项,每个索引项用于记录多个动态存储单元中的相应动态存储单元的应用标识、起始地址、结束地址、存储容量和存储级别。其中应用标识为动态存储单元所归属的用户应用的标识符,起始地址为动态存储单元的存储空间的起始地址,结束地址为动态存储单元的存储空间的结束地址,存储容量为动态存储单元的存储空间的存储容量和存储级别为动态存储单元的存储空间的存储级别。例如,动态存储单元的索引项包括:支付宝应用、7000h00、8fffh、8kb、减量存储级。当动态索引表中的任何索引项涉及更新的数据时,利用更新的数据对动态索引表中的相应索引项进行更新。

其中第一存储器为随机存取存储器并且第二存储器为只读存储器。还包括根据为动态存储单元所设置的存储级别对动态索引表中相应的索引项进行更新。其中第一时间周期为30秒,第二时间周期为60秒,其中第三时间周期为90秒。其中第一预定数量为5,所述第二预定数量为8。

应当了解的是,本申请中将一个或多个数据文件从第二存储器或其他位置复制到任意存储级的动态存储单元时,是将任意存储级的动态存储单元中的原数据文件进行删除并将新的一个或多个数据文件复制到所述任意存储级的动态存储单元中。此外,当文件预取结束时,或根据用户的操作将动态索引区域或所有动态存储单元删除/重置/清除。

图7为根据本发明实施方式的根据状态信息进行文件预取的系统700的结构示意图。如图7所示,系统700包括:解析装置701、概率确定装置702、排序装置703、设置装置704、分配装置705、预取装置706以及初始化装置707。

解析装置701,获取与移动互联网内目标移动终端相关联的运行统计文件,对所述运行统计文件进行解析以获取所述目标移动终端内多个用户应用中每个用户应用的状态统计信息。移动互联网内包括多个移动终端、基站、内容服务器等。本申请将将发起文件预取请求的移动终端或请求进行文件预取的移动终端确定为目标移动终端。此外,每个移动终端(包括目标移动终端)内包括或安装的用户应用的数量大于4,例如5、10、20个用户应用。与用户应用相关的概念包括系统应用,并且系统应用通常是由移动终端的操作系统所确定的系统级应用。

运行统计文件包括多个状态数据表,并且本申请为目标移动终端内多个用户应用中每个用户应用分配一个状态数据表。每个状态数据表中包括多个状态数据项并且每个状态数据项的内容为五元组<应用名称、运行状态、起始时间、结束时间、累计时间长度>。例如,数据项为<王者荣耀、静止状态、2018年6月8日20:00、2018年6月8日21:50、110分钟>;<王者荣耀、静止状态、2018年6月8日22:00、2018年6月8日22:50、50分钟>。

本申请将为每个用户应用所分配的状态数据表作为每个用户应用的状态统计信息,即,每个用户应用的状态统计信息是通过状态数据表的形式来提供的。为每个用户应用所分配的状态数据表用于实时记录每个用户应用的运行状态信息。即,在移动终端运行的情况下,操作系统或控制设备会将每个用户应用的运行信息,例如,应用名称、运行状态、起始时间、结束时间、累计时间长度等,进行实时统计和记录。因此,状态数据表会记录每个用户应用从过去的特定时间点开始到当前时间点的统计时间区间内的运行信息。其中,在所述运行统计文件中,本申请为每个用户应用保存预定数量(例如,100个,200个,300个)的状态数据项,或为每个用户应用保存预定数量的自然日内或预定时间长度(例如,10天,20天,30天)内的状态数据项。其中预定数量的自然日为10个自然日、20个自然日或30个自然日,其中预定时间长度为240小时、480小时或720小时。

概率确定装置702,利用所述目标移动终端的定位组件获取所述目标移动终端在预定时间段内的当前状态,根据每个用户应用的状态统计信息和所述当前状态确定每个用户应用在当前状态下的运行概率。

其中预定时间段是以当前时间为终点并且以30秒钟、60秒钟或90秒钟(或任何合理数值)之前的时间为起点的一段时间;或者预定时间段是从当前时间开始的并且长度为30秒钟、60秒钟或90秒钟(或任何合理数值)的一段时间。

当前状态为:静止状态、场所内移动状态、地铁状态、步行状态或汽车状态等。即,目标移动终端的状态可以包括静止状态、场所内移动状态、地铁状态、步行状态或汽车状态等。

利用目标移动终端的定位组件获取所述目标移动终端在预定时间段内的当前状态包括:

当利用所述目标移动终端的定位组件确定所述目标移动终端在预定时间段内的所有位置坐标点是相同的位置坐标点或所有位置坐标点的位置相同时,则获取所述目标移动终端的当前状态为静止状态。例如,利用所述目标移动终端的gps或北斗组件确定所述目标移动终端在60秒钟内的所有位置坐标点是同一位置坐标点或所有位置坐标点的位置相同(即办公位置)时,则获取所述目标移动终端的当前状态为静止状态。

当利用所述目标移动终端的定位组件确定所述目标移动终端在预定时间段内的所有位置坐标点不完全是相同的位置坐标点但全部位于特定场所(利用所述目标移动终端的定位组件确定所述目标移动终端在预定时间段内的所有位置坐标点全部位于特定场所)内时,则获取所述目标移动终端的当前状态为场所内移动状态。例如,当利用所述目标移动终端的gps或北斗组件确定所述目标移动终端在60秒内的所有位置坐标点不完全是相同的位置坐标点但全部位于特定场所,或者利用所述目标移动终端的gps或北斗组件确定所述目标移动终端在60秒内的所有位置坐标点全部位于特定场所(例如,办公楼)内时,则获取所述目标移动终端的当前状态为场所内移动状态,即办公楼内移动状态。

当利用所述目标移动终端的定位组件确定所述目标移动终端在预定时间段内的所有位置坐标点均位于地铁线路上时,则获取所述目标移动终端的当前状态为地铁状态。例如,当利用所述目标移动终端的gps或北斗组件确定所述目标移动终端在60秒内的所有位置坐标点均位于地铁线路时,则获取所述目标移动终端的当前状态为地铁状态。

利用所述目标移动终端的定位组件确定所述目标移动终端在预定时间段内的平均速度,当平均速度大于3公里/小时并且小于6公里/小时时,则获取所述目标移动终端的当前状态为步行状态。利用所述目标移动终端的gps或北斗组件确定所述目标移动终端在60秒内的平均速度,当平均速度大于3公里/小时并且小于6公里/小时时,则获取所述目标移动终端的当前状态为步行状态。

利用所述目标移动终端的定位组件确定所述目标移动终端在预定时间段内的平均速度,当平均速度大于25公里/小时时,则获取所述目标移动终端的当前状态为汽车状态。利用所述目标移动终端的gps或北斗组件确定所述目标移动终端在60秒内的平均速度,当平均速度大于25公里/小时时,则获取所述目标移动终端的当前状态为汽车状态。

图2为根据本发明实施方式的排序列表200的逻辑示意图。如图2所示,利用所述目标移动终端的定位组件(gps或北斗组件)获取所述目标移动终端在预定时间段(2018年6月8日20:00:00-2018年6月8日20:01:00)内的移动轨迹。移动轨迹包括由目标移动终端的gps组件在2018年6月8日20:00:00-2018年6月8日20:01:00的60秒内获取的60个位置点。当60个位置点全部位于建筑物(银谷大厦)内,则确定当前状态为场所内移动状态,根据每个用户应用的状态统计信息和所述当前状态确定每个用户应用在当前状态下的运行概率。本申请每隔1秒钟或2秒钟记录一个位置点。当用户进入办公室后,位置点变得比较密集,说明用户进入办公室进行加班。

根据每个用户应用的状态统计信息和所述当前状态确定每个用户应用在当前状态下的运行概率包括:选择用于确定运行概率的统计日期区间,所述统计日期区间包括至少10个自然日(例如,10个自然日,20个自然日,30个自然日)。

对每个用户应用的状态统计信息内多个数据项中的每个数据项进行解析,以确定在统计日期区间内,每个用户应用在当前状态(场所内移动状态)下运行的有效次数ci。其中当用户应用在当前状态下的运行时间超过20秒、30秒、60秒或90秒时,计为一次有效次数。例如,支付宝应用在10个自然日的每个自然日内在当前状态(例如场所内移动状态)下的连续运行时间为50秒(运行未超过60秒)、120秒、0秒(未运行)、180秒、360秒、520秒、780秒、0秒(未运行)、55秒(运行未超过60秒)和600秒,那么支付宝应用的有效次数为0+1+0+1+1+1+1+0+0+1=6次。其中1≤i≤na,na为目标移动终端内用户应用的数量,na为自然数并且na大于4;

基于每个用户应用在统计日期区间内,在当前状态(例如场所内移动状态)下运行的有效次数ci计算所有用户应用在当前状态下运行的总有效次数s:

计算每个用户应用在当前状态下的运行概率pi=ci/s。例如,支付宝应用在10个自然日的当前状态(例如场所内移动状态)下运行6次、微信应用在10个自然日的当前状态(例如场所内移动状态)下运行10次、淘宝应用10个自然日的当前状态(例如场所内移动状态)下运行3次、王者荣耀在10个自然日的当前状态(例如场所内移动状态)下运行1次以及美团应用在10个自然日的当前状态(例如场所内移动状态)下运行0次,那么s=20次。支付宝、微信应用、淘宝应用、王者荣耀和美团应用在当前状态(例如场所内移动状态)下的运行概率分别是30%、50%、15%、5%和0%。

其中根据每个用户应用的状态统计信息和所述当前状态确定每个用户应用在当前状态下的运行概率包括:选择用于确定运行概率的统计日期区间,所述统计日期区间包括至少10个自然日(例如,10个自然日,20个自然日,30个自然日);

对每个用户应用的状态统计信息内多个数据项中的每个数据项进行解析,以确定在统计日期区间内,每个用户应用在当前状态(例如场所内移动状态)下运行的时间长度ti。支付宝应用在10个自然日的每个自然日内在当前状态(例如场所内移动状态)下的运行时间为10秒、60秒、0秒、50秒、30秒、90秒、120秒、0秒、15秒和60秒,那么支付宝应用的时间长度为435秒。其中1≤i≤na,na为目标移动终端内用户应用的数量,na为自然数并且na大于4;基于每个用户应用在统计日期区间内,在当前状态下运行的时间长度ti计算所有用户应用在当前状态下运行的总时间长度t:

计算每个用户应用在当前状态下的运行概率pi=ti/t。例如,支付宝应用在10个自然日的当前状态(例如场所内移动状态)下运行435秒、微信应用在10个自然日的当前状态(例如场所内移动状态)下运行875秒、淘宝应用10个自然日的当前状态(例如场所内移动状态)下运行500秒、王者荣耀在10个自然日的当前状态(例如场所内移动状态)下运行190秒以及美团应用在10个自然日的当前状态(例如场所内移动状态)下运行0秒,那么t=2000秒。支付宝、微信应用、淘宝应用、王者荣耀和美团应用在当前状态(例如场所内移动状态)下的运行概率分别是21.75%、43.75%、25%、9.5%和0%。

排序装置703,根据所述目标移动终端的时间参数为每个用户应用设置第一调整系数t并且根据所述目标移动终端的位置参数为每个用户应用设置第二调整系数l,获取所述时间参数和位置参数的权重比例,根据每个用户应用的第一调整系数t和第二调整系数l以及权重比例确定每个用户应用的第三调整系数f,基于每个用户应用的第三调整系数f和在当前状态下的运行概率计算每个用户应用在当前状态下的经过调整的运行概率,基于每个用户应用在当前状态下的经过调整的运行概率对多个用户应用进行运行概率的降序排序以生成排序列表。

其中时间参数为目标移动终端的当前系统时间(操作系统所指示的当前运行时间,例如目标移动终端所显示的当前时间),或者所述时间参数是目标移动终端的当前位置(例如,目标移动终端在北京,那么时间参数为北京时间,应当了解的是,即使目标移动终端在乌鲁木齐,时间参数依然为北京时间)的标准时间。

其中根据所述目标移动终端的时间参数为每个用户应用设置第一调整系数t包括:

在目标移动终端的时间参数晚于或等于00:00并且早于07:00的情况下,将每个用户应用的第一调整系数t设置为小于1,例如0.6。即在目标移动终端的时间参数位于凌晨到早上(休息)的区间内时,将每个用户应用的第一调整系数t设置为小于1。在目标移动终端的时间参数晚于或等于07:00并且早于11:00的情况下,将每个用户应用的第一调整系数t设置为小于1,例如0.8。即在目标移动终端的时间参数位于上午(上班)的区间内时,将每个用户应用的第一调整系数t设置为小于1。在目标移动终端的时间参数晚于或等于11:00并且早于13:00的情况下,将每个用户应用的第一调整系数t设置为大于1,例如1.1。即在目标移动终端的时间参数位于中午(午休)的区间内时,将每个用户应用的第一调整系数t设置为大于1。在目标移动终端的时间参数晚于或等于13:00并且早于17:00的情况下,将每个用户应用的第一调整系数t设置为小于1,例如0.8。即在目标移动终端的时间参数位于下午(上班)的区间内时,将每个用户应用的第一调整系数t设置为小于1。在目标移动终端的时间参数晚于或等于17:00并且早于19:00的情况下,将每个用户应用的第一调整系数t设置为大于1,例如1.1。即在目标移动终端的时间参数位于傍晚(下班回家)的区间内时,将每个用户应用的第一调整系数t设置为大于1。在目标移动终端的时间参数晚于或等于19:00并且早于23:00的情况下,将每个用户应用的第一调整系数t设置为大于1,例如1.2。即在目标移动终端的时间参数位于晚上(休息时间)的区间内时,将每个用户应用的第一调整系数t设置为大于1。在目标移动终端的时间参数晚于或等于23:00并且早于24:00的情况下,将每个用户应用的第一调整系数t设置为小于1,例如0.9。即在目标移动终端的时间参数位于深夜(准备休息)上的区间内时,将每个用户应用的第一调整系数t设置为小于1。

应当了解的是,用户可以根据需要来设置各个时间区间的起始和结束时间、第一调整系数t的大小等。其中位置参数为目标移动终端的当前位置(通过定位组件获得的当前位置)。

根据所述目标移动终端的位置参数为每个用户应用设置第二调整系数l包括:

在目标移动终端的位置参数为办公室的情况下,将每个用户应用的第二调整系数l设置为小于1,例如0.8。在目标移动终端的位置参数为家的情况下,将每个用户应用的第二调整系数l设置为大于1,例如1.2。在目标移动终端的位置参数为餐馆的情况下,将每个用户应用的第二调整系数l设置为小于1,例如0.9。在目标移动终端的位置参数为道路(例如,公路)的情况下,将每个用户应用的第二调整系数l设置为小于1,例如0.8。在目标移动终端的位置参数为地铁的情况下,将每个用户应用的第二调整系数l设置为大于1,例如1.1。

应当了解的是,用户可以根据需要来设置各个位置处的第二调整系数l的大小。

其中获取所述时间参数和位置参数各自的权重比例包括:读取目标移动终端内的权重配置文件,对所述权重配置文件进行解析以获取所述时间参数和位置参数各自的权重比例;其中所述时间参数和位置参数各自的权重比例的和为1,举例来说,所述时间参数和位置参数的权重比例分别为0.5和0.5;所述时间参数和位置参数的权重比例分别为0.3和0.7;所述时间参数和位置参数的权重比例分别为0.2和0.8;所述时间参数和位置参数的权重比例分别为0.7和0.3;所述时间参数和位置参数的权重比例分别为0.8和0.2;所述时间参数和位置参数的权重比例分别为0.4和0.6;所述时间参数和位置参数的权重比例分别为0.6和0.4。

其中根据每个用户应用的第一调整系数t和第二调整系数l以及各自的权重比例确定每个用户应用的第三调整系数f为:第三调整系数f=第一调整系数t×w1+第二调整系数l×w2,其中w1为时间参数的权重比例,w2为位置参数的权重比例,如图2所示。

其中基于每个用户应用的第三调整系数f和在当前状态下的运行概率计算每个用户应用在当前状态下的经过调整的运行概率包括:将每个用户应用的第三调整系数f和在当前状态下的运行概率的乘积作为每个用户应用在当前状态下的经过调整的运行概率。

在图2所示的实例中,如表201所示,在从2018年6月1日至2018年6月10日的10个自然日内的当前状态下,王者荣耀的运行概率为15%、抖音短视频的运行概率为13.3%、优酷视频的运行概率为12.5%、手机淘宝的运行概率为10.8%、美团外卖的运行概率为8.3%、百度外卖的运行概率为7.5%、极品飞车的经过调整的运行概率为5.8%、三国极无双的运行概率为5%以及懒人英语的经过调整的运行概率为0%。

在目标移动终端的时间参数晚于或等于23:00并且早于24:00的情况下,将每个用户应用的第一调整系数t设置为0.9,并且同时,在目标移动终端的位置参数为家的情况下,将每个用户应用的第二调整系数l设置为1.2。时间参数的权重比例为0.4并且位置参数的权重比例为0.6。那么,第三调整系数f为:第三调整系数f=第一调整系数t×w1+第二调整系数l×w2,即第三调整系数f=0.9×0.4+1.2×0.6=0.36+0.72=1.08。

其中基于每个用户应用的第三调整系数f和在当前状态下的运行概率计算每个用户应用在当前状态下的经过调整的运行概率包括:将每个用户应用的第三调整系数f和在当前状态下的运行概率的乘积作为每个用户应用在当前状态下的经过调整的运行概率,即运行概率×1.08=经过调整的运行概率。

为了便于计算,将经过调整的运行概率的实例选作1.2。在图2所示的实例中,如表210所示,在从2018年6月1日至2018年6月10日的10个自然日内的当前状态下,王者荣耀的经过调整的运行概率为18%、抖音短视频的经过调整的运行概率为16%、优酷视频的经过调整的运行概率为15%、手机淘宝的经过调整的运行概率为13%、美团外卖的经过调整的运行概率为10%、百度外卖的经过调整的运行概率为9%、极品飞车的经过调整的运行概率为7%、三国极无双的经过调整的运行概率为6%以及懒人英语的经过调整的运行概率为0%。

设置装置704用于根据所述排序列表确定所述多个用户应用中能够被从第二存储器预先加载到第一存储器中的至少一个预取用户应用,并且根据所述排序列表为至少一个预取用户应用中每个预取用户应用设置存储级别,其中所述存储级别包括:减量存储级、增量存储级、定量存储级和压缩存储级;根据每个预取用户应用的存储级别给为每个预取用户应用所分配的动态存储单元设置存储级别。

其中根据所述排序列表确定所述多个用户应用中能够被从第二存储器预先加载到第一存储器中的多个预取用户应用包括:当排序列表中运行概率大于预取阈值(例如,5%、10%)的用户应用的数量大于0(例如,10个)时,将排序列表中运行概率大于预取阈值的用户应用确定为能够被从第二存储器预先加载到第一存储器中的预取用户应用,以确定至少一个预取用户应用;当排序列表中运行概率大于预取阈值(例如,5%、10%)的用户应用的数量等于0时,将排序列表中所有用户应用(例如,15个)确定为能够被从第二存储器预先加载到第一存储器中的预取用户应用,以确定至少一个预取用户应用。

根据所述排序列表为至少一个预取用户应用中每个预取用户应用设置存储级别包括:

将所述排序列表中运行概率大于高概率阈值(例如,15%)的预取用户应用的存储级别设置为减量存储级;将所述排序列表中运行概率小于或等于高概率阈值(例如,15%)并且大于中概率阈值(例如,12%)的预取用户应用的存储级别设置为增量存储级;将所述排序列表中运行概率小于或等于中概率阈值(例如,12%)并且大于低概率阈值(例如,8%)的预取用户应用的存储级别设置为定量存储级;将所述排序列表中运行概率小于或等于低概率阈值(例如,8%)的预取用户应用的存储级别设置为压缩存储级。其中预取用户应用的运行概率均大于5%。

分配装置705用于为减量存储级的每个预取用户应用分配至少一个动态存储单元,为压缩存储级的每个预取用户应用分配至少一个动态存储单元,为增量存储级的每个预取用户应用分配一个动态存储单元并且为定量存储级的每个预取用户应用分配一个动态存储单元。其中为减量存储级的每个预取用户应用分配的至少一个动态存储单元中的每个动态存储单元的存储容量可以相同或不同,并且为压缩存储级的每个预取用户应用分配至少一个动态存储单元中的每个动态存储单元的存储容量可以相同或不同。

为每个减量存储级的预取用户应用所分配的至少一个动态存储单元的总存储容量能够容纳相应的减量存储级的预取用户应用的所有数据文件。为每个压缩存储级的预取用户应用所分配的至少一个动态存储单元的总存储容量能够容纳相应的压缩存储级的预取用户应用的所有经过压缩的数据文件。为增量存储级的每个预取用户应用所分配一个动态存储单元能够容纳相应的增量存储级的预取用户应用的所有数据文件。为定量存储级的每个预取用户应用所分配一个动态存储单元能够容纳相应的定量存储级的预取用户应用的所有数据文件。

预取装置706用于根据预取用户应用的存储级别将与每个预取用户应用相关联的数据文件从第二存储器进行文件预取,包括:

将与减量存储级的每个预取用户应用相关联的多个数据文件从第二存储器复制到为减量存储级的每个预取用户应用所分配的至少一个减量存储级的动态存储单元,在复制完成时为每个减量存储级的动态存储单元设置第一时间周期并开始计时,每当第一时间周期期满时在每个减量存储级的动态存储单元中删除第一预定数量的数据文件;

在与增量存储级的每个预取用户应用相关联的多个数据文件中选择至少一个基础数据文件,将增量存储级的每个预取用户应用的至少一个基础数据文件从第二存储器复制到为增量存储级的每个预取用户应用所分配的增量存储级的动态存储单元,在复制完成时为增量存储级的动态存储单元设置第二时间周期并开始计时,其中每当第二时间周期期满时将与增量存储级的每个预取用户应用相关联的多个数据文件中第二预定数量的数据文件从第二存储器复制到为增量存储级的每个预取用户应用所分配的增量存储级的动态存储单元;

根据为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元的存储容量,从与定量存储级的每个预取用户应用相关联的多个数据文件选择至少一个数据文件,并且将所选择的至少一个数据文件从第二存储器复制到为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元;以及

将与压缩存储级的每个预取用户应用相关联的多个数据文件进行压缩以生成多个经过压缩的数据文件,将压缩存储级的每个预取用户应用的多个经过压缩的数据文件从第二存储器复制到为压缩存储级的每个预取用户应用所分配的至少一个压缩存储级的动态存储单元。

初始化装置707用于响应于用户发起的针对移动互联网内目标移动终端的与用户应用相关联的数据文件进行文件预取的文件预取请求,获取与所述文件预取相关联的动态配置文件;

在所述目标移动终端的第一存储器中创建动态索引区域,并且根据所述动态配置文件在第一存储器中创建用于存储数据文件的多个动态存储单元,其中根据所述动态配置文件确定所述多个动态存储单元中的每个动态存储单元的存储容量;以及

在所述动态索引区域中生成动态索引表,所述动态索引表包括多个索引项,每个索引项用于记录多个动态存储单元中的相应动态存储单元的应用标识、起始地址、结束地址、存储容量和存储级别。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1