CN109033445B - Method and system for prefetching files in mobile internet according to running application - Google Patents

Method and system for prefetching files in mobile internet according to running application Download PDF

Info

Publication number
CN109033445B
CN109033445B CN201810943813.2A CN201810943813A CN109033445B CN 109033445 B CN109033445 B CN 109033445B CN 201810943813 A CN201810943813 A CN 201810943813A CN 109033445 B CN109033445 B CN 109033445B
Authority
CN
China
Prior art keywords
user application
selected user
storage
storage tier
dynamic
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201810943813.2A
Other languages
Chinese (zh)
Other versions
CN109033445A (en
Inventor
不公告发明人
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Yinghua Technology Co.,Ltd.
Original Assignee
Shenzhen Yinghua Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Yinghua Technology Co ltd filed Critical Shenzhen Yinghua Technology Co ltd
Priority to CN201810943813.2A priority Critical patent/CN109033445B/en
Publication of CN109033445A publication Critical patent/CN109033445A/en
Application granted granted Critical
Publication of CN109033445B publication Critical patent/CN109033445B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The invention discloses a method for prefetching files in a mobile internet according to running applications, which comprises the following steps: determining a running association degree between any two user applications based on the number of foreground running times in the same basic time unit; determining an operation probability of each non-selected user application based on the operation association degree of the selected user application and each non-selected user application except the selected user application in the plurality of user applications; sorting the plurality of non-selected user applications in descending order of operating probability according to the adjusted operating probability of each non-selected user application to generate a sorted list; setting a storage level for each pre-fetching user application in at least one pre-fetching user application according to the ordered list; and file prefetching a data file associated with each prefetched user application from the second memory according to the storage level of the prefetched user application.

Description

Method and system for prefetching files in mobile internet according to running application
Technical Field
The invention relates to the field of internet of things and the field of internet, in particular to a method and a system for prefetching files in a mobile internet according to running applications in the field of mobile internet.
Background
Currently, as the internet of things, especially the mobile internet, develops faster and faster, and the use of mobile terminals is more and more popular, people usually use mobile terminals to install a large number of applications and store a large amount of personal data. Since the amount of data increases more rapidly than the storage space increases, it is increasingly important to efficiently manage data files in a mobile terminal. In some cases, for a user with a high regularity of usage, when a specific application in the mobile terminal is selected for foreground operation, the user will typically use a common application among a plurality of user applications. In the prior art, no technology for prefetching files according to the regularity exists.
Disclosure of Invention
According to an aspect of the present invention, there is provided a method for prefetching a file according to a running application in a mobile internet, the method comprising:
acquiring an operation statistical file associated with a target mobile terminal in a mobile internet, analyzing the operation statistical file to determine operation history information of each user application in a plurality of user applications in the target mobile terminal, wherein the operation history information is used for indicating the operation information of each user application in each basic time unit in a plurality of basic time units in a preset time interval, determining the frequency of foreground operation of any two user applications in the same basic time unit based on the operation history information of each user application, and determining the operation association degree between any two user applications based on the frequency of foreground operation in the same basic time unit;
responding to the selected user application selected by a user in the plurality of user applications to perform foreground running, and determining the running probability of each non-selected user application based on the running association degree of the selected user application and each non-selected user application except the selected user application in the plurality of user applications;
determining content matching degree of the summary information of each non-selected user application and the summary information of the selected user application, determining an adjustment coefficient of each non-selected user application based on the content matching degree, determining an adjusted operation probability of each non-selected user application based on the adjustment coefficient and the operation probability of each non-selected user application, and performing descending ordering of the operation probabilities on the plurality of non-selected user applications according to the adjusted operation probability of each non-selected user application to generate an ordered list;
determining at least one of the plurality of non-selected user applications that can be preloaded from the second memory into the first memory according to the ordered list, and setting a storage level for each of the at least one pre-fetched user application according to the ordered list, wherein the storage level comprises: a decrement storage stage, an increment storage stage, a quantitative storage stage and a compression storage stage;
allocating at least one dynamic memory unit for each pre-fetch user application of the decrement storage stage, allocating at least one dynamic memory unit for each pre-fetch user application of the compression storage stage, allocating one dynamic memory unit for each pre-fetch user application of the increment storage stage and allocating one dynamic memory unit for each pre-fetch user application of the quantitive storage stage;
setting a storage level for a dynamic storage unit allocated to each pre-fetching user application according to the storage level of each pre-fetching user application;
file prefetching a data file associated with each prefetched user application from the second memory according to the storage level of the prefetched user application, comprising:
copying a plurality of data files associated with each pre-fetch user application of the reduced storage tier from the second memory to the dynamic storage unit of at least one reduced storage tier allocated for each pre-fetch user application of the reduced storage tier, setting a first time period for the dynamic storage unit of each reduced storage tier upon completion of the copying and starting timing, deleting a first predetermined number of data files in the dynamic storage unit of each reduced storage tier each time the first time period expires;
selecting at least one base data file among the plurality of data files associated with each pre-fetching user application of the incremental storage tier, copying the at least one base data file of each pre-fetching user application of the incremental storage tier from the second memory to the dynamic storage unit of the incremental storage tier allocated for each pre-fetching user application of the incremental storage tier, setting a second time period and starting timing for the dynamic storage unit of the incremental storage tier upon completion of the copying, wherein a second predetermined number of data files among the plurality of data files associated with each pre-fetching user application of the incremental storage tier are copied from the second memory to the dynamic storage unit of the incremental storage tier allocated for each pre-fetching user application of the incremental storage tier each time the second time period expires;
selecting at least one data file from the plurality of data files associated with each pre-fetch user application of the quantitative storage tier based on the storage capacity of the dynamic storage unit of the quantitative storage tier assigned for each pre-fetch user application of the quantitative storage tier and copying the selected at least one data file from the second memory to the dynamic storage unit of the quantitative storage tier assigned for each pre-fetch user application of the quantitative storage tier; and
the method further includes compressing the plurality of data files associated with each pre-fetch user application of the compressed storage tier to generate a plurality of compressed data files, copying the plurality of compressed data files of each pre-fetch user application of the compressed storage tier from the second memory to a dynamic storage unit of at least one compressed storage tier allocated for each pre-fetch user application of the compressed storage tier.
The mobile internet comprises a plurality of mobile terminals, the mobile terminal which initiates a file pre-fetching request is determined as a target mobile terminal, and the number of user applications is larger than 4.
The operation statistical file comprises a plurality of operation data tables, and one operation data table is allocated to each user application in the plurality of user applications in the target mobile terminal, each operation data table comprises a plurality of operation data items, and the content of each operation data item is quintuple < application name, identifier of basic time unit, operation starting time, operation ending time and accumulated operation time length >.
The operation data table allocated to each user application is used as the operation history information of each user application, the operation data table allocated to each user application is used for indicating the operation information of each user application in each basic time unit in a plurality of basic time units in a preset time interval, and the operation data table allocated to each user application is used for recording the operation information of each user application in real time.
In the operation statistical file, a preset number of operation data items are saved for each user application, or a preset number of operation data items within a natural day or a preset time length (at least 10 days) are saved for each user application, wherein the preset time interval is the preset number of natural days or the preset time length.
Wherein the predetermined number of natural days is 10 natural days, 20 natural days, or 30 natural days, and wherein the predetermined time length is 240 hours, 480 hours, or 720 hours.
Wherein each basic time unit is 60 minutes and the start time and the end time of each basic time unit are the whole time.
Determining a running association between any two user applications based on the number of foreground runs within the same basic time unit includes:
taking the product of (total) times of foreground operation of any two user applications in the same basic time unit and the correlation coefficient as the operation correlation degree of any two user applications between any two user applications;
wherein the correlation coefficient is 0.5, 1, 2 or 3. Determining an operation probability of each non-selected user application based on the operation association degree of the selected user application and each non-selected user application except the selected user application in the plurality of user applications comprises: and determining the ratio of the running relevance of the selected user application and each non-selected user application except the selected user application in the plurality of user applications to the number of basic time units in the preset time interval as the running probability of each non-selected user application. And the user selects the selected user application by performing touch operation on the touch screen of the target mobile terminal so as to prompt the selected user application to perform foreground running.
The method further comprises searching the content server according to the identifier of each user application to determine the description information associated with each user application, and determining the summary information of each user application according to the summary data item in the description information associated with each user application. Also included is generating summary information for each user application based on the content, type, purpose, and source of each user application. Wherein the summary information is used to describe the attribute characteristics of the user application. Determining the content matching degree of the summary information of each non-selected user application and the summary information of the selected user application comprises the following steps: performing text comparison on the abstract information of each non-selected user application and the abstract information of the selected user application, and determining the content matching degree Cn of the abstract information of each non-selected user application and the abstract information of the selected user application according to a text comparison result; semantic comparison is carried out on the abstract information of each non-selected user application and the abstract information of the selected user application, and the content matching degree Cn of the abstract information of each non-selected user application and the abstract information of the selected user application is determined according to a text comparison result; and comparing the abstract information of each non-selected user application with the abstract information of the selected user application by keywords, determining the content matching degree Cn of the abstract information of each non-selected user application and the abstract information of the selected user application according to the text comparison result,
wherein Na-1 is more than or equal to n and more than or equal to 1, Na is the number of user applications in the target mobile terminal, Na and n are both natural numbers, and Na is more than or equal to 5.
Wherein 1 ≧ content matching degree Cn ≧ 0, and determining the adjustment coefficient Fn for each non-selected user application based on the content matching degree includes: the adjustment coefficient Fn is (content matching degree Cn-0.5)/4;
wherein Na-1 is more than or equal to n and more than or equal to 1, Na is the number of user applications in the target mobile terminal, Na and n are both natural numbers, and Na is more than or equal to 5.
Determining the adjusted operation probability for each non-selected user application based on the adjustment coefficient Fn and the operation probability for each non-selected user application comprises:
and taking the sum of the adjusting coefficient Fn and the running probability of each non-selected user application as the adjusted running probability of each non-selected user application.
Before obtaining the operation statistical file associated with the target mobile terminal in the mobile internet, the method further comprises the following steps:
responding to a file prefetching request initiated by a user and used for prefetching a file aiming at a data file of a target mobile terminal in a mobile Internet and associated with a user application, and acquiring a dynamic configuration file associated with the file prefetching;
creating a dynamic index area in a first memory of the target mobile terminal, and creating a plurality of dynamic storage units for storing data files in the first memory according to the dynamic configuration file, wherein the storage capacity of each of the plurality of dynamic storage units is determined according to the dynamic configuration file; and
and generating a dynamic index table in the dynamic index area, wherein the dynamic index table comprises a plurality of index entries, and each index entry is used for recording the application identification, the starting address, the ending address, the storage capacity and the storage level of a corresponding dynamic storage unit in a plurality of dynamic storage units.
The first memory is a random access memory, and the second memory is a read-only memory.
The dynamic profile includes a start address and an end address of a storage area in the first memory for providing a plurality of dynamic storage units, and the dynamic profile further includes a storage capacity of each of the plurality of dynamic storage units.
The application identifier is an identifier of a user application to which the dynamic storage unit belongs, the starting address is a starting address of a storage space of the dynamic storage unit, the ending address is an ending address of the storage space of the dynamic storage unit, and the storage capacity is the storage capacity and the storage level of the storage space of the dynamic storage unit.
And updating the corresponding index entry in the dynamic index table according to the storage level set for the dynamic storage unit.
Wherein selecting at least one data file from the plurality of data files associated with each pre-fetch user application of the quantitative storage tier based on the storage capacity of the dynamic storage unit of the quantitative storage tier allocated for each pre-fetch user application of the quantitative storage tier comprises: grouping a plurality of data files associated with each pre-fetch user application of the quantitative storage tier according to a storage capacity of a dynamic storage unit of the quantitative storage tier allocated to each pre-fetch user application of the quantitative storage tier to generate a plurality of file groups, wherein each file group includes at least one data file, and setting different priorities for the plurality of file groups of each pre-fetch user application of the quantitative storage tier to constitute priority queues, regarding a file group positioned at a head of a queue in each priority queue as a current file group and copying at least one data file in the current file group from a second memory to a dynamic storage unit of the quantitative storage tier allocated to each pre-fetch user application of the quantitative storage tier and setting a third time period for each dynamic storage unit of the quantitative storage tier, whenever the third time period expires, using a next file group in the priority queues as the current file group in order of decreasing priority, until there is no next set of files;
determining a number of pre-fetch user applications associated with the quantitative storage tier based on the at least one data file selected from the plurality of data files;
wherein the size of each file group is smaller than the storage space of the dynamic storage unit of the corresponding quantitative storage tier.
Wherein selecting at least one data file from the plurality of data files associated with each pre-fetch user application of the quantitative storage tier based on the storage capacity of the dynamic storage unit of the quantitative storage tier allocated for each pre-fetch user application of the quantitative storage tier comprises:
grouping a plurality of data files associated with each pre-fetch user application of the quantitative storage tier according to a storage capacity of a dynamic storage unit of the quantitative storage tier allocated for each pre-fetch user application of the quantitative storage tier to generate a plurality of file groups, wherein each file group includes at least one data file, randomly selecting one file group from the plurality of file groups as a current file group and copying at least one data file in the current file group from the second memory to the dynamic storage unit of the quantitative storage tier allocated for each pre-fetch user application of the quantitative storage tier and setting a third time period for each dynamic storage unit of the quantitative storage tier, and randomly selecting a next file group from the plurality of file groups as the current file group until there is no next file group whenever the third time period expires;
determining a number of pre-fetch user applications associated with the quantitative storage tier based on the at least one data file selected from the plurality of data files;
wherein the size of each file group is smaller than the storage space of the dynamic storage unit of the corresponding quantitative storage tier.
After copying the selected at least one data file from the second memory to the dynamic storage unit of the quantitative storage tier assigned to each pre-fetching user application of the quantitative storage tier, setting a third time period and whenever the third time period expires, re-selecting at least one data file from the plurality of data files associated with each pre-fetching user application of the quantitative storage tier based on the storage capacity of the dynamic storage unit of the quantitative storage tier assigned to each pre-fetching user application of the quantitative storage tier, copying the re-selected at least one data file from the second memory to the dynamic storage unit of the quantitative storage tier assigned to each pre-fetching user application of the quantitative storage tier.
Wherein selecting at least one data file from the plurality of data files associated with each pre-fetch user application of the quantitative storage tier based on the storage capacity of the dynamic storage unit of the quantitative storage tier allocated for each pre-fetch user application of the quantitative storage tier comprises:
step 1, grouping a plurality of data files associated with each pre-fetching user application of the quantitative storage tier to generate N file groups according to the storage capacity of a dynamic storage unit of the quantitative storage tier allocated to each pre-fetching user application of the quantitative storage tier, wherein N is a natural number greater than 1 and each file group comprises at least one data file;
step 2, setting different sequence numbers for each file group in the N file groups, wherein the sequence numbers are from 1 to N;
step 3, taking the file group with the serial number i equal to 1 as the current file group, wherein N is more than or equal to i and is more than 0;
step 4, setting a third time period for each dynamic storage unit of the quantitative storage level;
step 5, copying at least one data file included in the current file group from the second memory to a dynamic storage unit of the quantitative storage level allocated to each pre-fetching user application of the quantitative storage level;
step 6, when the third time period expires, judging whether i is true or not, and if yes, ending; if not, taking the file group with the serial number i being i +1 as the current file group, and performing step 5;
wherein the size of each file group is smaller than the storage capacity of the dynamic storage unit of the fixed-amount storage tier.
Wherein determining from the ordered list a plurality (or at least one) of the plurality of non-selected user applications that can be pre-loaded from the second memory into the first memory comprises:
when the number of the non-selected user applications with the operation probability larger than the pre-fetching threshold value in the ordered list is larger than 0, determining the non-selected user applications with the operation probability larger than the pre-fetching threshold value in the ordered list as the pre-fetching user applications which can be pre-loaded into the first memory from the second memory so as to determine at least one pre-fetching user application;
when the number of non-selected user applications in the ordered list having an operating probability greater than the pre-fetch threshold is equal to 0, determining all non-selected user applications in the ordered list as pre-fetched user applications that can be pre-loaded from the second memory into the first memory to determine at least one pre-fetched user application.
Wherein setting a storage level for each of at least one pre-fetch user application according to the ordered list comprises: setting the storage level of the pre-fetching user application with the operation probability larger than the high probability threshold value in the ordered list as a decrement storage level; setting the storage level of the pre-fetching user application with the running probability less than or equal to the high probability threshold and greater than the medium probability threshold in the sorted list as an incremental storage level; setting the storage level of the pre-fetching user application with the running probability less than or equal to the middle probability threshold and greater than the low probability threshold in the sorted list as a quantitative storage level; and setting the storage level of the pre-fetching user application with the operation probability less than or equal to the low probability threshold value in the sorted list as a compression storage level.
Wherein the at least one dynamic storage unit allocated for the pre-fetch user application of each reduced storage tier is capable of holding all data files of the pre-fetch user application of the corresponding reduced storage tier, and the at least one dynamic storage unit allocated for the pre-fetch user application of each compressed storage tier is capable of holding all compressed data files of the pre-fetch user application of the corresponding compressed storage tier. Wherein the first time period is 30 seconds, the second time period is 60 seconds, and wherein the third time period is 90 seconds.
Wherein the at least one base data file of each pre-fetching user application is at least one data file of the plurality of data files associated with each pre-fetching user application of the incremental storage tier that has a launch order above a priority threshold.
Wherein the first predetermined number is 5 and the second predetermined number is 8.
According to another aspect of the present invention, there is provided a system for prefetching a file according to a running application in a mobile internet, the system comprising:
the analysis device is used for acquiring an operation statistical file associated with a target mobile terminal in the mobile Internet, analyzing the operation statistical file to determine operation history information of each user application in a plurality of user applications in the target mobile terminal, wherein the operation history information is used for indicating the operation information of each user application in each basic time unit in a plurality of basic time units in a preset time interval, determining the frequency of foreground operation of any two user applications in the same basic time unit based on the operation history information of each user application, and determining the operation association degree between any two user applications based on the frequency of foreground operation in the same basic time unit;
the probability determining device is used for responding to the selected user application selected by the user from the plurality of user applications to carry out foreground operation and determining the operation probability of each non-selected user application based on the operation association degree of the selected user application and each non-selected user application except the selected user application from the plurality of user applications;
a sorting device for determining content matching degree of the summary information of each non-selected user application and the summary information of the selected user application, determining an adjustment coefficient of each non-selected user application based on the content matching degree, determining an adjusted operation probability of each non-selected user application based on the adjustment coefficient and the operation probability of each non-selected user application, and sorting the plurality of non-selected user applications in descending order of the operation probability according to the adjusted operation probability of each non-selected user application to generate a sorted list;
setting means for determining at least one pre-fetch user application of said plurality of non-selected user applications that can be pre-loaded from the second memory into the first memory according to said ordered list, and setting a storage level for each pre-fetch user application of said at least one pre-fetch user application according to said ordered list, wherein said storage level comprises: a decrement storage stage, an increment storage stage, a quantitative storage stage and a compression storage stage; setting a storage level for a dynamic storage unit allocated to each pre-fetching user application according to the storage level of each pre-fetching user application;
the allocation device allocates at least one dynamic storage unit for each pre-fetching user application of the decrement storage level, allocates at least one dynamic storage unit for each pre-fetching user application of the compression storage level, allocates one dynamic storage unit for each pre-fetching user application of the increment storage level and allocates one dynamic storage unit for each pre-fetching user application of the quantitative storage level;
prefetching means for file prefetching the data files associated with each prefetched user application from the second memory according to the storage level of the prefetched user application, comprising:
copying a plurality of data files associated with each pre-fetch user application of the reduced storage tier from the second memory to the dynamic storage unit of at least one reduced storage tier allocated for each pre-fetch user application of the reduced storage tier, setting a first time period for the dynamic storage unit of each reduced storage tier upon completion of the copying and starting timing, deleting a first predetermined number of data files in the dynamic storage unit of each reduced storage tier each time the first time period expires;
selecting at least one base data file among the plurality of data files associated with each pre-fetching user application of the incremental storage tier, copying the at least one base data file of each pre-fetching user application of the incremental storage tier from the second memory to the dynamic storage unit of the incremental storage tier allocated for each pre-fetching user application of the incremental storage tier, setting a second time period and starting timing for the dynamic storage unit of the incremental storage tier upon completion of the copying, wherein a second predetermined number of data files among the plurality of data files associated with each pre-fetching user application of the incremental storage tier are copied from the second memory to the dynamic storage unit of the incremental storage tier allocated for each pre-fetching user application of the incremental storage tier each time the second time period expires;
selecting at least one data file from the plurality of data files associated with each pre-fetch user application of the quantitative storage tier based on the storage capacity of the dynamic storage unit of the quantitative storage tier assigned for each pre-fetch user application of the quantitative storage tier and copying the selected at least one data file from the second memory to the dynamic storage unit of the quantitative storage tier assigned for each pre-fetch user application of the quantitative storage tier; and
the method further includes compressing the plurality of data files associated with each pre-fetch user application of the compressed storage tier to generate a plurality of compressed data files, copying the plurality of compressed data files of each pre-fetch user application of the compressed storage tier from the second memory to a dynamic storage unit of at least one compressed storage tier allocated for each pre-fetch user application of the compressed storage tier.
The mobile internet comprises a plurality of mobile terminals, the mobile terminal which initiates a file pre-fetching request is determined as a target mobile terminal, and the number of user applications is larger than 4.
The operation statistical file comprises a plurality of operation data tables, and one operation data table is allocated to each user application in the plurality of user applications in the target mobile terminal, each operation data table comprises a plurality of operation data items, and the content of each operation data item is quintuple < application name, identifier of basic time unit, operation starting time, operation ending time and accumulated operation time length >.
The operation data table allocated to each user application is used as the operation history information of each user application, the operation data table allocated to each user application is used for indicating the operation information of each user application in each basic time unit in a plurality of basic time units in a preset time interval, and the operation data table allocated to each user application is used for recording the operation information of each user application in real time.
In the operation statistical file, a preset number of operation data items are saved for each user application, or a preset number of operation data items within a natural day or a preset time length (at least 10 days) are saved for each user application, wherein the preset time interval is the preset number of natural days or the preset time length.
Wherein the predetermined number of natural days is 10 natural days, 20 natural days, or 30 natural days, and wherein the predetermined time length is 240 hours, 480 hours, or 720 hours.
Wherein each basic time unit is 60 minutes and the start time and the end time of each basic time unit are the whole time.
The analyzing device determines the operation association degree between any two user applications based on the number of foreground operation times in the same basic time unit, and comprises the following steps:
taking the product of (total) times of foreground operation of any two user applications in the same basic time unit and the correlation coefficient as the operation correlation degree of any two user applications between any two user applications;
wherein the correlation coefficient is 0.5, 1, 2 or 3.
The probability determination device determines the operation probability of each non-selected user application based on the operation association degree of the selected user application and each non-selected user application except the selected user application in the plurality of user applications comprises the following steps:
and determining the ratio of the running relevance of the selected user application and each non-selected user application except the selected user application in the plurality of user applications to the number of basic time units in the preset time interval as the running probability of each non-selected user application.
And the user selects the selected user application by performing touch operation on the touch screen of the target mobile terminal so as to prompt the selected user application to perform foreground running.
The method further comprises searching the content server according to the identifier of each user application to determine the description information associated with each user application, and determining the summary information of each user application according to the summary data item in the description information associated with each user application.
Also included is generating summary information for each user application based on the content, type, purpose, and source of each user application.
Wherein the summary information is used to describe the attribute characteristics of the user application.
The sequencing device determines the content matching degree of the summary information of each non-selected user application and the summary information of the selected user application comprises the following steps: performing text comparison on the abstract information of each non-selected user application and the abstract information of the selected user application, and determining the content matching degree Cn of the abstract information of each non-selected user application and the abstract information of the selected user application according to a text comparison result; semantic comparison is carried out on the abstract information of each non-selected user application and the abstract information of the selected user application, and the content matching degree Cn of the abstract information of each non-selected user application and the abstract information of the selected user application is determined according to a text comparison result; and comparing the abstract information of each non-selected user application with the abstract information of the selected user application by keywords, and determining the content matching degree Cn of the abstract information of each non-selected user application and the abstract information of the selected user application according to a text comparison result, wherein Na-1 is more than or equal to n and more than or equal to 1, Na is the number of user applications in the target mobile terminal, Na and n are natural numbers, and Na is more than or equal to 5.
Wherein 1 ≧ content matching degree Cn ≧ 0, and determining the adjustment coefficient Fn for each non-selected user application based on the content matching degree includes:
the adjustment coefficient Fn is (content matching degree Cn-0.5)/4;
wherein Na-1 is more than or equal to n and more than or equal to 1, Na is the number of user applications in the target mobile terminal, Na and n are both natural numbers, and Na is more than or equal to 5.
The determining, by the ranking means, an adjusted running probability for each non-selected user application based on the adjustment coefficient Fn and the running probability for each non-selected user application comprises:
and taking the sum of the adjusting coefficient Fn and the running probability of each non-selected user application as the adjusted running probability of each non-selected user application.
The system comprises a mobile internet and an initialization device, wherein the initialization device is used for responding to a file prefetching request initiated by a user and used for prefetching a file aiming at a data file of a target mobile terminal in the mobile internet and relevant to a user application, and acquiring a dynamic configuration file relevant to the file prefetching;
creating a dynamic index area in a first memory of the target mobile terminal, and creating a plurality of dynamic storage units for storing data files in the first memory according to the dynamic configuration file, wherein the storage capacity of each of the plurality of dynamic storage units is determined according to the dynamic configuration file; and
and generating a dynamic index table in the dynamic index area, wherein the dynamic index table comprises a plurality of index entries, and each index entry is used for recording the application identification, the starting address, the ending address, the storage capacity and the storage level of a corresponding dynamic storage unit in a plurality of dynamic storage units.
The first memory is a random access memory, and the second memory is a read-only memory.
The dynamic profile includes a start address and an end address of a storage area in the first memory for providing a plurality of dynamic storage units, and the dynamic profile further includes a storage capacity of each of the plurality of dynamic storage units. The application identifier is an identifier of a user application to which the dynamic storage unit belongs, the starting address is a starting address of a storage space of the dynamic storage unit, the ending address is an ending address of the storage space of the dynamic storage unit, and the storage capacity is the storage capacity and the storage level of the storage space of the dynamic storage unit.
And updating the corresponding index entry in the dynamic index table according to the storage level set for the dynamic storage unit.
Wherein the pre-fetching means selects at least one data file from the plurality of data files associated with each pre-fetching user application of the quantitative storage tier based on the storage capacity of the dynamic storage unit of the quantitative storage tier allocated for each pre-fetching user application of the quantitative storage tier comprises:
grouping a plurality of data files associated with each pre-fetch user application of the quantitative storage tier according to a storage capacity of a dynamic storage unit of the quantitative storage tier allocated to each pre-fetch user application of the quantitative storage tier to generate a plurality of file groups, wherein each file group includes at least one data file, and setting different priorities for the plurality of file groups of each pre-fetch user application of the quantitative storage tier to constitute priority queues, regarding a file group positioned at a head of a queue in each priority queue as a current file group and copying at least one data file in the current file group from a second memory to a dynamic storage unit of the quantitative storage tier allocated to each pre-fetch user application of the quantitative storage tier and setting a third time period for each dynamic storage unit of the quantitative storage tier, whenever the third time period expires, using a next file group in the priority queues as the current file group in order of decreasing priority, until there is no next set of files;
determining a number of pre-fetch user applications associated with the quantitative storage tier based on the at least one data file selected from the plurality of data files;
wherein the size of each file group is smaller than the storage space of the dynamic storage unit of the corresponding quantitative storage tier.
Wherein the pre-fetching means selects at least one data file from the plurality of data files associated with each pre-fetching user application of the quantitative storage tier based on the storage capacity of the dynamic storage unit of the quantitative storage tier allocated for each pre-fetching user application of the quantitative storage tier comprises:
grouping a plurality of data files associated with each pre-fetch user application of the quantitative storage tier according to a storage capacity of a dynamic storage unit of the quantitative storage tier allocated for each pre-fetch user application of the quantitative storage tier to generate a plurality of file groups, wherein each file group includes at least one data file, randomly selecting one file group from the plurality of file groups as a current file group and copying at least one data file in the current file group from the second memory to the dynamic storage unit of the quantitative storage tier allocated for each pre-fetch user application of the quantitative storage tier and setting a third time period for each dynamic storage unit of the quantitative storage tier, randomly selecting a next file group from the plurality of file groups as the current file group whenever the third time period expires until there is no next file group;
determining a number of pre-fetch user applications associated with the quantitative storage tier based on the at least one data file selected from the plurality of data files;
wherein the size of each file group is smaller than the storage space of the dynamic storage unit of the corresponding quantitative storage tier.
After the pre-fetching means copies the selected at least one data file from the second memory to the dynamic storage unit of the quantitative storage tier assigned to each pre-fetching user application of the quantitative storage tier, the pre-fetching means sets a third time period and re-selects the at least one data file from the plurality of data files associated with each pre-fetching user application of the quantitative storage tier according to the storage capacity of the dynamic storage unit of the quantitative storage tier assigned to each pre-fetching user application of the quantitative storage tier each time the third time period expires, copying the re-selected at least one data file from the second memory to the dynamic storage unit of the quantitative storage tier assigned to each pre-fetching user application of the quantitative storage tier.
Wherein the pre-fetching means selects at least one data file from the plurality of data files associated with each pre-fetching user application of the quantitative storage tier based on the storage capacity of the dynamic storage unit of the quantitative storage tier allocated for each pre-fetching user application of the quantitative storage tier comprises:
step 1, grouping a plurality of data files associated with each pre-fetching user application of the quantitative storage tier to generate N file groups according to the storage capacity of a dynamic storage unit of the quantitative storage tier allocated to each pre-fetching user application of the quantitative storage tier, wherein N is a natural number greater than 1 and each file group comprises at least one data file;
step 2, setting different sequence numbers for each file group in the N file groups, wherein the sequence numbers are from 1 to N;
step 3, taking the file group with the serial number i equal to 1 as the current file group, wherein N is more than or equal to i and is more than 0;
step 4, setting a third time period for each dynamic storage unit of the quantitative storage level;
step 5, copying at least one data file included in the current file group from the second memory to a dynamic storage unit of the quantitative storage level allocated to each pre-fetching user application of the quantitative storage level;
step 6, when the third time period expires, judging whether i is true or not, and if yes, ending; if not, taking the file group with the serial number i being i +1 as the current file group, and performing step 5;
wherein the size of each file group is smaller than the storage capacity of the dynamic storage unit of the fixed-amount storage tier.
Wherein the means for setting determines from the ordered list a plurality of pre-fetched user applications of the plurality of non-selected user applications that can be pre-loaded from the second memory into the first memory comprises:
when the number of the non-selected user applications with the operation probability larger than the pre-fetching threshold value in the ordered list is larger than 0, determining the non-selected user applications with the operation probability larger than the pre-fetching threshold value in the ordered list as the pre-fetching user applications which can be pre-loaded into the first memory from the second memory so as to determine at least one pre-fetching user application;
when the number of non-selected user applications in the ordered list having an operating probability greater than the pre-fetch threshold is equal to 0, determining all non-selected user applications in the ordered list as pre-fetched user applications that can be pre-loaded from the second memory into the first memory to determine at least one pre-fetched user application.
Wherein the setting means setting a storage level for each of the at least one pre-fetch user application according to the ordered list comprises: setting the storage level of the pre-fetching user application with the operation probability larger than the high probability threshold value in the ordered list as a decrement storage level; setting the storage level of the pre-fetching user application with the running probability less than or equal to the high probability threshold and greater than the medium probability threshold in the sorted list as an incremental storage level; setting the storage level of the pre-fetching user application with the running probability less than or equal to the middle probability threshold and greater than the low probability threshold in the sorted list as a quantitative storage level; and setting the storage level of the pre-fetching user application with the operation probability less than or equal to the low probability threshold value in the sorted list as a compression storage level.
Wherein the at least one dynamic storage unit allocated by the allocating means for the pre-fetching user application of each reduced storage tier is able to hold all data files of the pre-fetching user application of the corresponding reduced storage tier, and the at least one dynamic storage unit allocated by the allocating means for the pre-fetching user application of each compressed storage tier is able to hold all compressed data files of the pre-fetching user application of the corresponding compressed storage tier.
Wherein the first time period is 30 seconds, the second time period is 60 seconds, and wherein the third time period is 90 seconds.
Wherein the at least one base data file of each pre-fetching user application is at least one data file of the plurality of data files associated with each pre-fetching user application of the incremental storage tier that has a launch order above a priority threshold.
Wherein the first predetermined number is 5 and the second predetermined number is 8.
Drawings
A more complete understanding of exemplary embodiments of the present invention may be had by reference to the following drawings in which:
FIG. 1 is a flow diagram of a method for file prefetching according to a running application according to an embodiment of the present invention;
FIG. 2 is a logical representation of an ordered list according to an embodiment of the present invention;
FIG. 3 is a logic diagram illustrating a reduced amount store according to an embodiment of the present invention;
FIG. 4 is a logic diagram of incremental storage according to an embodiment of the present invention;
FIG. 5 is a logic diagram of a quantitative store according to an embodiment of the present invention;
FIG. 6 is a logic diagram of compressed storage according to an embodiment of the present invention; and
fig. 7 is a schematic structural diagram of a system for performing file prefetching according to a running application according to an embodiment of the present invention.
Detailed Description
FIG. 1 is a flow diagram of a method 100 for file prefetching according to a running application according to an embodiment of the present invention. As shown in fig. 1, method 100 begins at step 101.
In step 101, an operation statistics file associated with a target mobile terminal in the mobile internet is obtained, the operation statistics file is parsed to determine operation history information of each user application in a plurality of user applications in the target mobile terminal, wherein the operation history information is used for indicating the operation information of each user application in each basic time unit in a plurality of basic time units in a predetermined time interval, the number of times of foreground operation of any two user applications in the same basic time unit is determined based on the operation history information of each user application, and the operation association degree between any two user applications is determined based on the number of times of foreground operation in the same basic time unit.
The mobile internet includes a plurality of mobile terminals, base stations, content servers, and the like. The method and the device determine the mobile terminal which initiates the file prefetching request or the mobile terminal which requests to perform file prefetching as the target mobile terminal. Furthermore, the number of user applications included or installed in each mobile terminal (including the target mobile terminal) is greater than 4, e.g. 5, 10, 20 user applications. Concepts related to user applications include system applications, and system applications are typically system level applications determined by the operating system of the mobile terminal.
The operation statistic file comprises a plurality of operation data tables, and one operation data table is allocated to each user application in the plurality of user applications in the target mobile terminal, each operation data table comprises a plurality of operation data items, and the content of each operation data item is quintuple < application name, identifier of basic time unit, operation starting time, operation ending time and accumulated operation time length >. For example, the data items are < royal glory, basic time unit 16#, 6-8-month-8-day 20:10 in 2018, < royal glory, basic time unit 36#, 6-month-9-day 20:10 in 2018, < royal glory, 6-month-9-day 20:40, 30 min > in2018, < paxiao, basic time unit 37#, 6-month-9-day 20:50 in 2018, < 6-month-9-day 20:55 in 2018, 5 min >.
The operation data table allocated to each user application is used as the operation history information of each user application, the operation data table allocated to each user application is used for indicating the operation information of each user application in each basic time unit in a plurality of basic time units in a preset time interval, and the operation data table allocated to each user application is used for recording the operation information of each user application in real time. That is, in the case where the mobile terminal is running, the operating system or the control device may count and record running information of each user application, for example, an application name, an identifier of a basic time unit, a running start time, a running end time, an accumulated running time length, and the like, in real time.
In the running statistics file, a predetermined number (e.g., 100, 200, 300) of running data items are saved for each user application, or a predetermined number of running data items within a natural day or a predetermined length of time (e.g., 10 days, 20 days, 30 days) are saved for each user application, wherein the predetermined time interval is a predetermined number of natural days or a predetermined length of time. Wherein the predetermined number of natural days is 10 natural days, 20 natural days, or 30 natural days, and wherein the predetermined time length is 240 hours, 480 hours, or 720 hours.
Wherein each basic time unit is 60 minutes and the start time and the end time of each basic time unit are the whole time. For example, the basic time units are 10:00 to 11:00, 11:00 to 12:00, 15:00 to 16:00, and so on. In this application, each natural day includes 20 basic time units, i.e., 5:00 to 6:00, 6:00 to 7:00, 7:00 to 8:00, 8:00 to 9:00, 9:00 to 10:00, 10:00 to 11:00, 11:00 to 12:00, 12:00 to 13:00, 13:00 to 14:00, 14:00 to 15:00, 15:00 to 16:00, 16:00 to 17:00, 17:00 to 18:00, 18:00 to 19:00, 19:00 to 20:00, 20:00 to 21:00, 21:00 to 22:00, 22:00 to 23:00, 23:00 to 24:00, and 24:00 to 1: 00. The present application assigns serial numbers to 20 basic time units in a single natural day in chronological order, e.g., 1# from 5:00 to 6:00, 2# from 6:00 to 7:00, 16# from 20:00 to 21:00, and 20# from 24:00 to 1: 00. When the predetermined time interval is 10 natural days, numbering is performed in the order of the natural days. For example, 5:00 to 6:00 in nature 1 is # 1, 5:00 to 6:00 in nature 2 is # 21, 5:00 to 6:00 in nature 3 is # 41, 20:00 to 21:00 in nature 3 is # 56, and so on.
Determining a running association between any two user applications based on the number of foreground runs within the same basic time unit includes: the product of the (total) times of foreground operation of any two user applications in the same basic time unit and the correlation coefficient is used as the operation correlation degree between any two user applications. Wherein the correlation coefficient is 0.5, 1, 2 or 3.
The method comprises the steps of obtaining operation history information of each user application, wherein the operation history information is an operation data table, the operation data table comprises a plurality of operation data items, and the content of each operation data item is quintuple < application name, identifier of basic time unit, operation starting time, operation ending time and accumulated operation time length >. Then, the statistical data of the user applications running in each basic time unit, i.e. which user applications are running in each basic time unit, is determined according to the running history information. In general, the length of the basic time unit may be determined based on user input or system settings. The application divides each natural day into continuous basic time units, and takes the basic time units as basic statistical units. Then, the number of times that any two user applications are operated in the same basic time unit is determined, and the operation association degree between any two user applications is determined based on the number of times that any two user applications are operated in the same basic time unit. For example, if the royal glory is running in the 1#, 3#, 25#, 46#, 67#, 68# and 69# basic time units and the WeChat is running in the 2#, 3#, 24#, 46#, 67#, 68# and 69# basic time units, the number of times the royal glory and the WeChat are running in the same basic time units is 5. When any user application runs for multiple times in the same basic time unit, the running relevance calculation is only recorded as 1 time. For example, the royal glory and WeChat are operated 6 times in the 58# basic time unit, but only 1 correlation operation is recorded when the correlation degree of the operation is calculated. It should be understood that, when determining the operation association degree, the length of the statistical time is generally predetermined, that is, the calculation of the operation association degree is performed according to a predetermined number of basic time units, for example, when the predetermined number of natural days is 10 natural days and each natural day includes 20 basic time units, there are 200 basic time units in total, and the like.
In step 102, in response to the selected user application selected by the user from the plurality of user applications being executed in the foreground, the execution probability of each non-selected user application is determined based on the execution association degree of the selected user application and each non-selected user application except the selected user application from the plurality of user applications. And the user selects the selected user application by performing touch operation on the touch screen of the target mobile terminal so as to prompt the selected user application to perform foreground running.
Wherein determining an operational probability of each non-selected user application of the plurality of user applications other than the selected user application based on the operational association of the selected user application with each non-selected user application comprises: and determining the ratio of the running relevance of the selected user application and each non-selected user application except the selected user application in the plurality of user applications to the number of basic time units in the preset time interval as the running probability of each non-selected user application. For example, user applications within the target mobile terminal include: the royal glory, Wenxin, Paibao, tremble sound short video and mobile phone Taobao. When the selected user application is glorious by the king, WeChat, Paibao, tremble short video and mobile phone Taobao are all non-selected user applications. Then, the ratio of the relationship between the royal glory and the operation of each of the WeChat, Pay Bao, Shake tone short video, and Mobile Tao to the number of basic time units within a predetermined time interval is determined as the operation probability of each of the WeChat, Pay Bao, Shake tone short video, and Mobile Tao. For example, if the operational association degrees of each of the wechat, pay, tremble, short video, and cell phone pan are 60, 25, 50, and 30, and the number of basic time units is 200, then the operational probabilities of each of the wechat, pay, tremble, short video, and cell phone pan are 60/200, 25/200, 50/200, and 20/200, i.e., 30%, 12.5%, 25%, and 15%.
In step 103, a content matching degree of the summary information of each non-selected user application and the summary information of the selected user application is determined, an adjustment coefficient of each non-selected user application is determined based on the content matching degree, an adjusted operation probability of each non-selected user application is determined based on the adjustment coefficient and the operation probability of each non-selected user application, and the plurality of non-selected user applications are sorted in descending order of the operation probabilities according to the adjusted operation probability of each non-selected user application to generate a sorted list.
For example, a content relevance of each non-selected user application to the selected user application is determined. The content relevancy between any two user applications in the plurality of user applications can be determined by taking each user application in the plurality of user applications as the selected user application. The matching value of content matching of the summary information of any two user applications is used as the content association degree between any two user applications. The method and the device determine summary information for each user application according to the content, action, source and the like of each user application, and the summary information is used for describing various relevant characteristics of the user application. The method and the device determine the matching value of the abstract information of any two user applications through text comparison and semantic comparison peer-to-peer content matching, and therefore determine the content association degree between any two user applications.
The method further comprises searching the content server according to the identifier of each user application to determine the description information associated with each user application, and determining the summary information of each user application according to the summary data item in the description information associated with each user application. For example, the content server may provide summary information for each user application along with the user to any mobile terminal. Summary information is generated for each user application based on the content, type, purpose, and source of each user application. Wherein the summary information is used to describe the attribute characteristics of the user application.
Wherein determining the content matching degree of the summary information of each non-selected user application and the summary information of the selected user application comprises: performing text comparison on the abstract information of each non-selected user application and the abstract information of the selected user application, and determining the content matching degree Cn of the abstract information of each non-selected user application and the abstract information of the selected user application according to a text comparison result; semantic comparison is carried out on the abstract information of each non-selected user application and the abstract information of the selected user application, and the content matching degree Cn of the abstract information of each non-selected user application and the abstract information of the selected user application is determined according to a text comparison result; and comparing the abstract information of each non-selected user application with the abstract information of the selected user application by keywords, and determining the content matching degree Cn of the abstract information of each non-selected user application and the abstract information of the selected user application according to the text comparison result. Wherein Na-1 is more than or equal to n and more than or equal to 1. Na is the number of user applications in the target mobile terminal, Na is a natural number and Na is more than or equal to 5.
Wherein 1 ≧ content matching degree Cn ≧ 0, i.e., the range of content matching degrees is 0% to 100%, and determining the adjustment coefficient Fn for each non-selected user application based on the content matching degree includes: the adjustment coefficient Fn is (content matching degree Cn-0.5)/4; wherein Na-1 is more than or equal to n and more than or equal to 1, Na is the number of user applications in the target mobile terminal, Na is a natural number and Na is more than or equal to 5. For example, when the selected user application is royal glory, the non-selected user applications are 70%, 20%, 50% and 10% for WeChat, Pay Bao, Shake-tone short video and Mobile Tao Bao, respectively. Then, the adjustment coefficients of WeChat, Payment Bao, Shake-Sound short video and Taobao are (0.7-0.5)/4, (0.2-0.5)/4, (0.5-0.5)/4 and (01-0.5)/4, i.e. 5%, -7.5%, 0% and-10%, respectively.
Determining the adjusted operation probability for each non-selected user application based on the adjustment coefficient Fn and the operation probability for each non-selected user application comprises: and taking the sum of the adjusting coefficient Fn and the running probability of each non-selected user application as the adjusted running probability of each non-selected user application. For example, the operating probabilities of each of the WeChat, Payment Bao, Shake tone short video, and cell Tao are 30%, 12.5%, 25%, and 15%, and the adjustment coefficients of the WeChat, Payment Bao, Shake tone short video, and cell Tao are 5%, -7.5%, 0%, and-10%, respectively, so that the operating probabilities of the WeChat, Payment Bao, Shake tone short video, and cell Tao are adjusted to be 35%, 5%, 25%, and 5%.
FIG. 2 is a logic diagram of an ordered list 200 according to an embodiment of the invention. As shown in fig. 2, an operation statistics file associated with a target mobile terminal within the mobile internet is obtained, parsing the operation statistics file to determine operation history information for each of a plurality of user applications (WeChat, Royal of King, trembling short video, Youko video, Taobao, American takeaway, Baidu takeaway, masterpiece runaway, Sanguo and lazy English) within the target mobile terminal, the operation history information is used for indicating the operation information of each user application in each basic time unit in a plurality of basic time units in a preset time interval, determining the frequency of foreground operation of any two user applications in the same basic time unit based on the operation history information of each user application, and determining the operation association degree between any two user applications based on the frequency of foreground operation in the same basic time unit.
In response to a selected user application (WeChat) of the plurality of user applications being selected by a user to execute in the foreground, an execution probability of each non-selected user application is determined based on execution association of the selected user application with each non-selected user application (Royal, tremble, Yokoku, Tanbao, beauty group takeaway, Baidu takeaway, high-quality coaster, Sanguo, and lazy English) of the plurality of user applications other than the selected user application.
In the example shown in fig. 2, as shown in table 202, in response to a selected user application (i.e., WeChat) selected by the user from among a plurality of user applications, each non-selected user application, as shown in table 202, is that the operational probability of royal glory is 15%, the operational probability of trembled short video is 9%, the operational probability of Youkou video is 11%, the operational probability of cell phone Taobao is 10%, the operational probability of American takeaway is 12%, the operational probability of Baidu takeaway is 12%, the adjusted operational probability of mastership is 5%, the operational probability of Sankyo extreme-disfavor is 3%, the operational probability of Lowa, and the operational probability of Ladies is 0%.
The method determines the content matching degree of the summary information of each non-selected user application and the summary information of the selected user application, and determines the adjusting coefficient of each non-selected user application based on the content matching degree. Wherein determining the adjustment factor Fn for each non-selected user application based on the content match metric comprises: the adjustment coefficient Fn is (content matching degree Cn-0.5)/4. The adjustment coefficient F1 for the royal glory is 3%, the adjustment coefficient F2 for the tremble short video is-3%, the adjustment coefficient F3 for the kukoku video is 4%, the adjustment coefficient F4 for the mobile phone Taobao is 3%, the adjustment coefficient F5 for the American group takeaway is-2%, the adjustment coefficient F6 for the Baidu takeaway is-3%, the adjustment coefficient F7 for the polar flying vehicle is 2%, the adjustment coefficient F8 for the three kingdoms is 3%,. 9, and the adjustment coefficient Fn for the lazy english is 0%.
In the example shown in fig. 2, as shown in table 201, in response to a selected user application (i.e., WeChat) selected by a user from among a plurality of user applications, the foreground operation is performed, and non-selected user applications, for example, the adjusted operation probability of the royal glory is 18%, the adjusted operation probability of the judder short video is 16%, the adjusted operation probability of the kui-you video is 15%, the adjusted operation probability of the cell phone Taobao is 13%, the adjusted operation probability of the U-Shao takeaway is 10%, the adjusted operation probability of the Baidu takeaway is 9%, the adjusted operation probability of the polar flying vehicle is 7%, the adjusted operation probability of the Sanguo extremely bilinear is 6%, the adjusted operation probability of the san extremely bilinear is 6%, the adjusted operation probability of the Logan is 0%.
At step 104, determining at least one of the plurality of user applications that can be preloaded from the second memory into the first memory according to the ordered list, and setting a storage level for each of the at least one pre-fetch user application according to the ordered list, wherein the storage levels include: a decrement storage stage, an increment storage stage, a quantitative storage stage, and a compressed storage stage.
Wherein determining a plurality of pre-fetch user applications of the plurality of non-selected user applications that can be pre-loaded from the second memory into the first memory according to the ordered list comprises: when the number of the non-selected user applications in the ordered list having the operation probability greater than the pre-fetching threshold (e.g., 5%, 10%) is greater than 0 (e.g., 10), determining the non-selected user applications in the ordered list having the operation probability greater than the pre-fetching threshold as the pre-fetched user applications that can be pre-loaded from the second memory into the first memory to determine at least one pre-fetched user application; when the number of non-selected user applications in the ordered list having a probability of running greater than the pre-fetch threshold (e.g., 5%, 10%) is equal to 0, all non-selected user applications (e.g., 15) in the ordered list are determined as pre-fetched user applications that can be pre-loaded from the second memory into the first memory to determine at least one pre-fetched user application.
Wherein setting a storage level for each of at least one pre-fetch user application according to the ordered list comprises:
setting a storage level of the pre-fetched user applications in the ordered list having an operational probability greater than a high probability threshold (e.g., 15%) to a reduced storage level;
setting a storage level of the pre-fetch user application in the sorted list having a probability of operation less than or equal to a high probability threshold (e.g., 15%) and greater than a medium probability threshold (e.g., 12%) as an incremental storage level;
setting a storage level of the pre-fetched user applications in the sorted list having a probability of operation less than or equal to a medium probability threshold (e.g., 12%) and greater than a low probability threshold (e.g., 8%) as a quantitative storage level;
setting a storage level of the pre-fetched user applications in the sorted list having an operating probability less than or equal to a low probability threshold (e.g., 8%) as a compressed storage level. Wherein the pre-fetching of user applications has a running probability of more than 5%.
As shown in fig. 2, according to the above-described manner, it can be determined that the operation probability of the royal glowing and the operation probability of the tremble short video are 18% and 16%, and therefore the storage level of the royal glowing and the tremble short video is the reduced storage level. The running probability of the Youkou video is 15% and the running probability of the mobile phone panning is 13%, so the storage level of the Youkou video and the mobile phone panning is an incremental storage level. The operation probability of the American college takeout is 10% and the operation probability of the Baidu takeout is 9%, so that the storage level of the American college takeout and the Baidu takeout is a quantitative storage level, the operation probability of the masterpiece flying vehicle is 7% and the operation probability of the masterpiece flying vehicle is 6%, so that the storage level of the masterpiece flying vehicle and the masterpiece flying vehicle is a compression storage level.
Since the number 8 of the non-selected user applications having the operation probability greater than 5% of the pre-fetching threshold in the sorted list is greater than 0, the non-selected user applications having the operation probability greater than the pre-fetching threshold in the sorted list (the operation probability of royal glory is 18%, the operation probability of buffalo short video is 16%, the operation probability of kukoku video is 15%, the operation probability of mobile phone panning is 13%, the operation probability of beauty party takeaway is 10%, the operation probability of Baidu takeaway is 9%, the operation probability of masterwork flying vehicle is 7%, and the operation probability of tribasic masterwork little-in-the-right is 6%) are determined as the pre-fetched user applications that can be pre-loaded from the second memory into the first memory to determine at least one pre-fetched user application. The operating probability of the lazy english language is 0%, and therefore does not belong to the pre-fetching user application.
At step 105, at least one dynamic memory location is allocated for each pre-fetch user application of the reduced storage tier, at least one dynamic memory location is allocated for each pre-fetch user application of the compressed storage tier, one dynamic memory location is allocated for each pre-fetch user application of the increased storage tier and one dynamic memory location is allocated for each pre-fetch user application of the quantitative storage tier. Wherein the storage capacity of each of the at least one dynamic storage unit allocated for each of the pre-fetched user applications of the reduced storage tier may be the same or different, and the storage capacity of each of the at least one dynamic storage unit allocated for each of the pre-fetched user applications of the compressed storage tier may be the same or different.
The total storage capacity of the at least one dynamic storage unit allocated for the pre-fetching user application of each reduced storage tier is capable of accommodating all data files of the pre-fetching user application of the corresponding reduced storage tier. The total storage capacity of the at least one dynamic storage unit allocated for the pre-fetching user application of each compressed storage tier is capable of accommodating all compressed data files of the pre-fetching user application of the corresponding compressed storage tier. One dynamic memory unit is allocated for each pre-fetching user application of the incremental storage tier that can accommodate all data files of the pre-fetching user application of the corresponding incremental storage tier. One dynamic memory unit is allocated to each pre-fetching user application of a quantitative memory rank to be able to accommodate all data files of the pre-fetching user application of the corresponding quantitative memory rank.
In step 106, a storage level is set for the dynamic storage unit allocated for each pre-fetching user application according to the storage level of each pre-fetching user application. Setting each dynamic memory unit of the at least one dynamic memory unit allocated for each pre-fetching user application of the reduced memory rank as a reduced memory rank, setting each dynamic memory unit of the at least one dynamic memory unit allocated for each pre-fetching user application of the compressed memory rank as a compressed memory rank, setting one dynamic memory unit allocated for each pre-fetching user application of the increased memory rank as an increased memory rank and setting one dynamic memory unit allocated for each pre-fetching user application of the increased memory rank as a quantitative memory rank.
In step 107, file prefetching the data files associated with each prefetched user application from the second memory according to the storage level of the prefetched user application, comprising:
preferably, the (all) plurality of data files associated with each pre-fetching user application of a reduced storage tier are copied from the second memory to the dynamic storage unit of at least one reduced storage tier allocated for each pre-fetching user application of a reduced storage tier, and a first time period is set and timed for the dynamic storage unit of each reduced storage tier upon completion of the copying, a first predetermined number of data files being deleted in the dynamic storage unit of each reduced storage tier each time the first time period expires until none of the dynamic storage units of each reduced storage tier has a data file.
FIG. 3 is a logic diagram of an embodiment of a decrement storage 300. The operation probability of the royal glory is 18% and the operation probability of the tremble short video is 16%, so that the storage level of the royal glory and tremble short video is a decrement storage level.
All data files of the royal glowing are copied from the second memory to the dynamic memory units 301, 302 and 303 of at least one reduced memory level allocated for the royal glowing. Each of the dynamic memory units 301, 302, and 303 has a memory capacity of 500M, and an application name and a memory level are labeled in each dynamic memory unit. A first time period (e.g., 30 seconds, 50 seconds, 60 seconds) is set for the dynamic storage units 301, 302, and 303 of each reduced storage rank after the copying is completed, and a first predetermined number (e.g., 3, 5) of data files are deleted in the dynamic storage units 301, 302, and 303 of each reduced storage rank every time the first time period expires (i.e., every time 30 seconds, 50 seconds, 60 seconds elapses).
All data files of the trembling short video are copied from the second memory to the dynamic memory units 311 and 312 of at least one decrement memory level allocated for the trembling short video. Each of the dynamic memory units 311 and 312 has a memory capacity of 60M, and an application name and a memory level are labeled in each dynamic memory unit. And sets a first time period (e.g., 30 seconds, 50 seconds, 60 seconds) for the dynamic storage units 311 and 312 of each reduced storage rank after the copying is completed, and deletes a first predetermined number (e.g., 3, 5) of data files in the dynamic storage unit of each reduced storage rank every time the first time period expires (i.e., every time 30 seconds, 50 seconds, 60 seconds elapses). For example, after the data files of the royal glory and tremble short videos are all copied to the corresponding dynamic storage units 301, 302, and 303, and 311 and 312, a timer is started, and 3 data files are deleted from each of the dynamic storage units 301, 302, 303, 311, and 312 every time 30 seconds pass. When none of the dynamic storage units 301, 302, and 303, and 311 and 312 have a data file, deletion of the file is stopped.
Preferably, at least one base data file is selected among the (all) plurality of data files associated with each pre-fetching user application of the incremental storage tier, the at least one base data file of each pre-fetching user application of the incremental storage tier is copied from the second memory to the dynamic storage unit of the incremental storage tier allocated for each pre-fetching user application of the incremental storage tier, and a second time period is set and timed for the dynamic storage unit of the incremental storage tier upon completion of the copying, wherein a second predetermined number of data files, other than already copied files, of the plurality of data files associated with each pre-fetching user application of the incremental storage tier are copied from the second memory to the dynamic storage unit of the incremental storage tier allocated for each pre-fetching user application of the incremental storage tier each time period expires until all data files associated with each pre-fetching user application are copied to the corresponding allocated incremental storage tier Dynamic memory cells of the storage level. Wherein the at least one base data file of each pre-fetching user application is at least one data file of the plurality of data files associated with each pre-fetching user application of the incremental storage tier having a firing order above a priority threshold (e.g., a priority threshold of 3, i.e., the firing order for each of the plurality of data files is set to 1, 2, 3, 4, or 5 levels, with the level of the firing order for 1, 2, 3, 4, or 5 levels increasing in order).
Wherein one dynamic storage unit of the incremental storage tier allocated for each pre-fetching user application is capable of accommodating/storing all data file(s) of the corresponding/attributed pre-fetching user application.
FIG. 4 is a logic diagram of an incremental store 400 according to an embodiment of the present invention. The running probability of the Youkou video is 15% and the running probability of the mobile phone panning is 13%, so that the storage level of the Youkou video and the mobile phone panning is an incremental storage level.
The 10 elementary data files are selected from the (all) plurality of data files associated with the kukov video, and these 10 elementary files are copied from the second memory to the dynamic storage unit 401 of the incremental storage tier allocated for the kukov video. The storage capacity of the dynamic storage units 401 is 200M each, and an application name and a storage level are labeled in each dynamic storage unit. A second time period (e.g., 30 seconds, 50 seconds, 60 seconds) is set for the dynamic storage unit 401 of the incremental storage tier after the copying is completed, and a second predetermined number (e.g., 3, 5, 8) of data files (other than the already copied files) of the plurality of data files associated with the use of the kukov video are copied from the second memory to the dynamic storage unit 401 every time the second time period expires (i.e., every time 30 seconds, 50 seconds, 60 seconds elapses).
The 10 base data files are selected from the (all) plurality of data files associated with the mobile phone pan, and the 10 base files are copied from the second memory to the dynamic storage unit 402 of the incremental storage level allocated for the mobile phone pan. The dynamic memory units 402 each have a memory capacity of 300M, and an application name and a memory level are labeled in each dynamic memory unit. A second time period (e.g., 30 seconds, 50 seconds, 60 seconds) is set for the dynamic storage unit 402 of the incremental storage stage after the copying is completed, and a second predetermined number (e.g., 3, 5, 8) of data files (other than the already copied files) of the plurality of data files associated with the mobile phone panning is copied from the second memory to the dynamic storage unit 402 every time the second time period expires (i.e., every time 30 seconds, 50 seconds, 60 seconds elapses).
For example, after all 10 basic data files of the youku video and the mobile phone panning are copied to the corresponding dynamic storage units 401 and 402, timing is started, and every time 60 seconds pass, 8 data files (initially 100 data files) of 90 data files associated with the youku video are copied from the second memory to the dynamic storage unit 401; and copying 8 data files (initially 160 data files) of the 150 data files associated with the mobile phone panning function from the second memory to the dynamic storage unit 401 every time 60 seconds pass. When all 100 data files of the Youkou video are copied into the Olympic dynamic storage unit 401, the copying operation is not performed, and when all 160 data files of the mobile phone Taobao are copied into the Olympic dynamic storage unit 402, the copying operation is not performed
Preferably, at least one data file is selected from the (all) plurality of data files associated with each pre-fetching user application of the quantitative storage tier (the total storage capacity required for the selected at least one data file being smaller than the storage capacity of the dynamic storage units of the quantitative storage tier) in dependence on the storage capacity of the dynamic storage units of the quantitative storage tier allocated for each pre-fetching user application of the quantitative storage tier, and the selected at least one data file is copied from the second memory to the dynamic storage units of the quantitative storage tier allocated for each pre-fetching user application of the quantitative storage tier.
FIG. 5 is a logic diagram of a quantitative storage 500 according to an embodiment of the present invention. Wherein the operation probability of the American group take-out is 10% and the operation probability of the Baidu take-out is 9%, so that the storage level of the American group take-out and the Baidu take-out is a quantitative storage level. At least one data file is selected from (all) the plurality of data files associated with the massa takeaway (the selected at least one data file requiring a storage capacity of less than 20M) according to the storage capacity 20M of the dynamic storage unit of the quantitative storage tier assigned for the massa takeaway, and the selected at least one data file is copied from the second storage to the dynamic storage unit 501. At least one data file is selected from (all) the plurality of data files associated with the massa takeaway (the selected at least one data file requiring less than 10M of storage capacity) based on the storage capacity 10M of the dynamic storage unit of the quantitative storage tier assigned for the hundred degrees takeaway, and the selected at least one data file is copied from the second storage to the dynamic storage unit 511.
Alternatively, wherein selecting at least one data file from the plurality of data files associated with each pre-fetching user application of the quantitative storage tier based on the storage capacity of the dynamic storage unit of the quantitative storage tier allocated for each pre-fetching user application of the quantitative storage tier comprises:
the plurality of data files associated with each pre-fetching user application of the quantitative storage tier are grouped according to a storage capacity of a dynamic storage unit (501 or 511) of the quantitative storage tier allocated for each pre-fetching user application of the quantitative storage tier (American or Baidu takeout) to generate a plurality of file groups, wherein each file group includes at least one data file. Wherein the total storage capacity required for the at least one data file of each file group is smaller than the storage capacity of the dynamic storage unit of the corresponding quantitative storage tier. That is, the total storage capacity of all data files in each file group for the U.S. take-out is less than 20M, and the total storage capacity of all data files in each group for the hundred degree take-out is less than 10M. Different priorities are set for each of the plurality of file groups of the pre-fetching user application of the quantitative storage tier to form a priority queue. For example, the cohesive takeout includes 5 file groups, and the priorities of the 5 file groups are 1, 2, 3, 4, and 5 (where the smaller the number, the higher the priority). The file group at the head of the queue (file group with priority 1) in each priority queue is taken as the current file group and at least one data file in the current file group is copied from the second memory to a dynamic storage unit (e.g., dynamic storage unit 501) of the quantitative storage level allocated for each pre-fetching user application of the quantitative storage level. A third time period (e.g., 30 seconds, 60 seconds, or 90 seconds) is set for each dynamic memory cell (501 or 511) of the quantitative memory rank after replication is complete. Every time the third time period expires (i.e., every time 30 seconds, 60 seconds pass), the next file group in the priority queue (e.g., file group of priority 2) is used as the current file group in order of decreasing priority until there is no next file group. That is, the file groups of priorities 1, 2, 3, 4, and 5 are copied to the dynamic storage unit 501 or 511. It can be seen that when the time is long enough (sufficiently longer than the plurality of third time period periods), for example, the third time period is 90 seconds, and the 450 th second is reached (i.e., when 5 third time periods are reached), all of the 5 file groups are used as the current file group. In this case, the content in the dynamic storage unit (501 or 511) is not being updated, i.e., at least one data file of the file group having the priority of 5 is retained in the dynamic storage unit 501.
At least one data file in the current set of files (possibly a set of files with a priority of 1, 2, 3, 4 or 5) is taken as the at least one data file selected from the plurality of data files associated with each pre-fetching user application of a quantitative storage tier. Wherein the size of each file group (i.e., the size of all data files in the file group) is smaller than the storage space of the dynamic storage unit of the corresponding quantitative storage tier.
Alternatively, wherein selecting at least one data file from the plurality of data files associated with each pre-fetching user application of the quantitative storage tier based on the storage capacity of the dynamic storage unit of the quantitative storage tier allocated for each pre-fetching user application of the quantitative storage tier comprises:
the plurality of data files associated with each pre-fetching user application of the quantitative storage tier are grouped according to the storage capacity of the dynamic storage unit (501 or 511) of the quantitative storage tier allocated for each pre-fetching user application of the quantitative storage tier (American takeaway or Baidu takeaway) to generate a plurality of file groups, wherein each file group includes at least one data file wherein the total storage capacity required for the at least one data file of each file group is less than the storage capacity of the dynamic storage unit of the corresponding quantitative storage tier. That is, the total storage capacity of all data files in each file group for the U.S. take-out is less than 20M, and the total storage capacity of all data files in each group for the hundred degree take-out is less than 10M. For example, the beauty group takeout includes 5 file groups, and the 5 file groups have sequence numbers of 1, 2, 3, 4, and 5. Randomly selecting one file group (file group with the sequence number of 5) from the plurality of file groups as a current file group, copying at least one data file in the current file group from the second memory to a dynamic storage unit (for example, the dynamic storage unit 501) of a quantitative storage class allocated for each pre-fetching user application of the quantitative storage class, and setting a third time period (for example, 30 seconds, 60 seconds or 90 seconds) for each dynamic storage unit (501 or 511) of the quantitative storage class after the copying is completed. Every time the third time period expires (i.e., every time 30 seconds, 60 seconds elapses), a next file group (e.g., file group of sequence number 2) is randomly selected from the plurality of file groups as the current file group until there is no next file group. The file groups with sequence numbers 1, 2, 3, 4 and 5 are copied to the dynamic storage unit 501 or 511. It can be seen that when the time is long enough (sufficiently longer than the plurality of third time period periods), for example, the third time period is 90 seconds, and the 450 th second is reached (i.e., when 5 third time periods are reached), all of the 5 file groups are used as the current file group. In this case, the content in the dynamic storage unit (501 or 511) is not updated, i.e. at least one data file of the last file group (e.g. file group 1) selected randomly is kept in the dynamic storage unit 501.
At least one data file in the current set of files (possibly a set of files with sequence number 1, 2, 3, 4 or 5) is taken as the at least one data file selected from the plurality of data files associated with each pre-fetching user application of the quantitative storage tier. Wherein the size of each file group (i.e., the size of all data files in the file group) is smaller than the storage space of the dynamic storage unit of the corresponding quantitative storage tier.
Alternatively, after copying the selected at least one data file from the second memory to the dynamic storage unit (501 or 511) of the quantitative storage tier assigned for each pre-fetched user application (mezzo takeaway or hectometre takeaway) of the quantitative storage tier, setting a third time period (e.g., 30 seconds, 60 seconds, or 90 seconds) and starting timing, whenever the third time period (e.g., 30 seconds, 60 seconds, or 90 seconds) expires, re-selecting at least one data file randomly/sequentially from the plurality of data files associated with each pre-fetched user application of the quantitative storage tier based on the storage capacity (20M or 10M) of the dynamic storage unit (501 or 511) of the quantitative storage tier assigned for each pre-fetched user application (mezzo takeaway or hectometre takeaway) of the quantitative storage tier, copying the re-selected at least one data file from the second memory to each pre-fetched user application (mezzo takeaway or hectometer) of the quantitative storage tier Dynamic memory cells (20M or 10M) of the assigned fixed-amount storage rank. Wherein the data file of the at least one data file reselected by the random selection may be the same as the previously randomly selected data file. The data file of the at least one data file reselected by the sequential selection may not be identical to any data file previously selected in the sequential selection.
Alternatively, wherein selecting at least one data file from the plurality of data files associated with each pre-fetching user application of the quantitative storage tier based on the storage capacity of the dynamic storage unit of the quantitative storage tier allocated for each pre-fetching user application of the quantitative storage tier comprises:
step 1, grouping a plurality of data files associated with each pre-fetching user application of the quantitative storage tier according to a storage capacity (20M or 10M) of a dynamic storage unit (501 or 511) of the quantitative storage tier allocated for each pre-fetching user application of the quantitative storage tier (american takeout or hundredth takeout) to generate N (e.g., N ═ 5) file groups, where N is a natural number greater than 1 and each file group includes at least one data file;
step 2, setting different sequence numbers for each file group in the N file groups, wherein the sequence numbers are from 1 to N (for example, 1, 2, 3, 4 and 5);
step 3, taking the file group with the serial number i equal to 1 as the current file group, wherein N is more than or equal to i and is more than 0;
step 4, setting a third time period (for example, 30 seconds, 60 seconds or 90 seconds) for each dynamic storage unit (501 or 511) of the quantitative storage level;
step 5, copying at least one data file included in the current file group from the second memory to a dynamic storage unit of the quantitative storage level allocated to each pre-fetching user application of the quantitative storage level, and starting timing;
step 6, when the third time period expires, determining whether i-N (i.e. whether i-5 holds true) holds true, and if yes, ending; if not, taking the file group with the serial number i being i +1 as the current file group, and performing step 5;
wherein the size of each file group is smaller than the storage capacity (20M or 10M) of the dynamic storage unit (501 or 511) of the quantitative storage tier. That is, the total storage capacity of all data files in each file group for the U.S. take-out is less than 20M, and the total storage capacity of all data files in each group for the hundred degree take-out is less than 10M. For example, the beauty group takeout includes 5 file groups, and the 5 file groups have sequence numbers of 1, 2, 3, 4, and 5.
In step 6, if true, the process ends, meaning that: the file groups with sequence numbers 1, 2, 3, 4 and 5 are copied to the dynamic storage unit 501 or 511, and then the copying is stopped. It can be seen that when the time is long enough (sufficiently longer than the plurality of third time period periods), for example, the third time period is 90 seconds, and the 450 th second is reached (i.e., when 5 third time periods are reached), all of the 5 file groups are used as the current file group. In this case, the content in the dynamic storage unit (501 or 511) is not updated, i.e. at least one data file of the last file group (e.g. file group 5) selected randomly is kept in the dynamic storage unit 501.
Preferably, the (all) plurality of data files associated with each pre-fetching user application of the compressed storage tier are compressed to generate a plurality of compressed data files, the plurality of compressed data files of each pre-fetching user application of the compressed storage tier are copied from the second memory to the dynamic storage unit of the at least one compressed storage tier allocated for each pre-fetching user application of the compressed storage tier.
FIG. 6 is a logic diagram of a compressed store 600 according to an embodiment of the present invention. The running probability of the super-quality aerodyne is 7 percent and the running probability of the super-quality aerodyne of three kingdoms is 6 percent, so the storage level of the royal glory and tremble short video is a compressed storage level. The (all) plurality of data files associated with each pre-fetch user application of the compressed storage tier (either mastership or tribune) are compressed to generate a plurality of compressed data files, the plurality of compressed data files of each pre-fetch user application of the compressed storage tier (mastership or tribune) are copied from the second memory to the dynamic storage units 601, 602, and 603, and 611 and 612 of the at least one compressed storage tier allocated for each pre-fetch user application of the compressed storage tier.
For example, the (all) plurality of data files associated with the mastership aircraft are compressed to generate a plurality of compressed data files, which are copied from the second memory to the dynamic storage units 601, 602, and 603. For example, the (all) plurality of data files associated with the tribune pair are compressed to generate a plurality of compressed data files, and the tribune plurality of compressed data files are copied from the second memory to the dynamic storage units 611 and 612.
Preferably, before obtaining the operation statistic file associated with the target mobile terminal in the mobile internet, the method further includes:
the method comprises the steps of responding to a file prefetching request initiated by a user and used for prefetching a file aiming at a data file of a target mobile terminal in the mobile Internet and associated with a user application, and obtaining a dynamic configuration file associated with the file prefetching. The mobile internet includes a plurality of mobile terminals, base stations, content servers, and the like. The method and the device determine the mobile terminal which initiates the file prefetching request or the mobile terminal which requests to perform file prefetching as the target mobile terminal. Furthermore, the number of user applications included or installed in each mobile terminal (including the target mobile terminal) is greater than 4, e.g. 5, 10, 20 user applications. Concepts related to user applications include system applications, and system applications are typically system level applications determined by the operating system of the mobile terminal.
The dynamic profile includes a start address and an end address of a storage area in the first memory for providing a plurality of dynamic storage units. The storage area in which the plurality of dynamic memory cells are provided may be a continuous storage area at an address or a discontinuous storage area at an address in the first memory. The dynamic profile further includes a storage capacity of each of the plurality of dynamic storage units. In general, the storage capacity of each dynamic storage unit may be set according to the size and number of a plurality of data files applied per user within a mobile terminal (target mobile terminal) so that the storage capacity of each dynamic storage unit can accommodate a corresponding at least one data file.
Creating a dynamic index area in a first memory of the target mobile terminal, and creating a plurality of dynamic storage units for storing data files in the first memory according to the dynamic configuration file, wherein the storage capacity of each of the plurality of dynamic storage units is determined according to the dynamic configuration file. Therefore, the method creates a plurality of dynamic storage units for storing the data files in the first storage according to the storage capacity of each dynamic storage unit.
And generating a dynamic index table in the dynamic index area, wherein the dynamic index table comprises a plurality of index entries, and each index entry is used for recording the application identification, the starting address, the ending address, the storage capacity and the storage level of a corresponding dynamic storage unit in a plurality of dynamic storage units. The application identifier is an identifier of a user application to which the dynamic storage unit belongs, the starting address is a starting address of a storage space of the dynamic storage unit, the ending address is an ending address of the storage space of the dynamic storage unit, and the storage capacity is the storage capacity and the storage level of the storage space of the dynamic storage unit. For example, the index entry of the dynamic storage unit includes: payment treasure application, 7000H00, 8FFFH, 8Kb, decrement storage level. When any index entry in the dynamic index table relates to updated data, the corresponding index entry in the dynamic index table is updated with the updated data.
Wherein the first memory is a random access memory and the second memory is a read only memory. And updating the corresponding index entry in the dynamic index table according to the storage level set for the dynamic storage unit. Wherein the first time period is 30 seconds, the second time period is 60 seconds, and wherein the third time period is 90 seconds. Wherein the first predetermined number is 5 and the second predetermined number is 8.
It should be understood that, in the present application, when copying one or more data files from the second memory or other locations to the dynamic storage unit of any storage rank, the original data files in the dynamic storage unit of any storage rank are deleted and the new one or more data files are copied to the dynamic storage unit of any storage rank.
Further, when the file prefetching is finished, or according to the user's operation, the dynamic index area or all the dynamic storage units are deleted/reset/cleared.
Fig. 7 is a schematic structural diagram of a system 700 for performing file prefetching according to a running application according to an embodiment of the present invention. As shown in fig. 7, the system 700 includes: parsing means 701, probability determination means 702, sorting means 703, setting means 704, allocation means 705, pre-fetching means 706 and initialization means 707.
The parsing device 701 acquires an operation statistics file associated with a target mobile terminal in the mobile internet, parses the operation statistics file to determine operation history information of each user application in a plurality of user applications in the target mobile terminal, wherein the operation history information is used for indicating the operation information of each user application in each basic time unit in a plurality of basic time units in a predetermined time interval, determines the number of times of foreground operation of any two user applications in the same basic time unit based on the operation history information of each user application, and determines the operation association degree between any two user applications based on the number of times of foreground operation in the same basic time unit.
The mobile internet includes a plurality of mobile terminals, base stations, content servers, and the like. The method and the device determine the mobile terminal which initiates the file prefetching request or the mobile terminal which requests to perform file prefetching as the target mobile terminal. Furthermore, the number of user applications included or installed in each mobile terminal (including the target mobile terminal) is greater than 4, e.g. 5, 10, 20 user applications. Concepts related to user applications include system applications, and system applications are typically system level applications determined by the operating system of the mobile terminal.
The operation statistic file comprises a plurality of operation data tables, and one operation data table is allocated to each user application in the plurality of user applications in the target mobile terminal, each operation data table comprises a plurality of operation data items, and the content of each operation data item is quintuple < application name, identifier of basic time unit, operation starting time, operation ending time and accumulated operation time length >. For example, the data items are < royal glory, basic time unit 16#, 6-8-month-8-day 20:10 in 2018, < royal glory, basic time unit 36#, 6-month-9-day 20:10 in 2018, < royal glory, 6-month-9-day 20:40, 30 min > in2018, < paxiao, basic time unit 37#, 6-month-9-day 20:50 in 2018, < 6-month-9-day 20:55 in 2018, 5 min >.
The operation data table allocated to each user application is used as the operation history information of each user application, the operation data table allocated to each user application is used for indicating the operation information of each user application in each basic time unit in a plurality of basic time units in a preset time interval, and the operation data table allocated to each user application is used for recording the operation information of each user application in real time. That is, in the case where the mobile terminal is running, the operating system or the control device may count and record running information of each user application, for example, an application name, an identifier of a basic time unit, a running start time, a running end time, an accumulated running time length, and the like, in real time.
In the running statistics file, a predetermined number (e.g., 100, 200, 300) of running data items are saved for each user application, or a predetermined number of running data items within a natural day or a predetermined length of time (e.g., 10 days, 20 days, 30 days) are saved for each user application, wherein the predetermined time interval is a predetermined number of natural days or a predetermined length of time. Wherein the predetermined number of natural days is 10 natural days, 20 natural days, or 30 natural days, and wherein the predetermined time length is 240 hours, 480 hours, or 720 hours.
Wherein each basic time unit is 60 minutes and the start time and the end time of each basic time unit are the whole time. For example, the basic time units are 10:00 to 11:00, 11:00 to 12:00, 15:00 to 16:00, and so on. In this application, each natural day includes 20 basic time units, i.e., 5:00 to 6:00, 6:00 to 7:00, 7:00 to 8:00, 8:00 to 9:00, 9:00 to 10:00, 10:00 to 11:00, 11:00 to 12:00, 12:00 to 13:00, 13:00 to 14:00, 14:00 to 15:00, 15:00 to 16:00, 16:00 to 17:00, 17:00 to 18:00, 18:00 to 19:00, 19:00 to 20:00, 20:00 to 21:00, 21:00 to 22:00, 22:00 to 23:00, 23:00 to 24:00, and 24:00 to 1: 00. The present application assigns serial numbers to 20 basic time units in a single natural day in chronological order, e.g., 1# from 5:00 to 6:00, 2# from 6:00 to 7:00, 16# from 20:00 to 21:00, and 20# from 24:00 to 1: 00. When the predetermined time interval is 10 natural days, numbering is performed in the order of the natural days. For example, 5:00 to 6:00 in nature 1 is # 1, 5:00 to 6:00 in nature 2 is # 21, 5:00 to 6:00 in nature 3 is # 41, 20:00 to 21:00 in nature 3 is # 56, and so on.
Determining a running association between any two user applications based on the number of foreground runs within the same basic time unit includes: the product of the (total) times of foreground operation of any two user applications in the same basic time unit and the correlation coefficient is used as the operation correlation degree between any two user applications. Wherein the correlation coefficient is 0.5, 1, 2 or 3.
The method comprises the steps of obtaining operation history information of each user application, wherein the operation history information is an operation data table, the operation data table comprises a plurality of operation data items, and the content of each operation data item is quintuple < application name, identifier of basic time unit, operation starting time, operation ending time and accumulated operation time length >. Then, the statistical data of the user applications running in each basic time unit, i.e. which user applications are running in each basic time unit, is determined according to the running history information. In general, the length of the basic time unit may be determined based on user input or system settings. The application divides each natural day into continuous basic time units, and takes the basic time units as basic statistical units. Then, the number of times that any two user applications are operated in the same basic time unit is determined, and the operation association degree between any two user applications is determined based on the number of times that any two user applications are operated in the same basic time unit. For example, if the royal glory is running in the 1#, 3#, 25#, 46#, 67#, 68# and 69# basic time units and the WeChat is running in the 2#, 3#, 24#, 46#, 67#, 68# and 69# basic time units, the number of times the royal glory and the WeChat are running in the same basic time units is 5. When any user application runs for multiple times in the same basic time unit, the running relevance calculation is only recorded as 1 time. For example, the royal glory and WeChat are operated 6 times in the 58# basic time unit, but only 1 correlation operation is recorded when the correlation degree of the operation is calculated. It should be understood that, when determining the operation association degree, the length of the statistical time is generally predetermined, that is, the calculation of the operation association degree is performed according to a predetermined number of basic time units, for example, when the predetermined number of natural days is 10 natural days and each natural day includes 20 basic time units, there are 200 basic time units in total, and the like.
The probability determination device 702, in response to the selected user application selected by the user from the plurality of user applications running in the foreground, determines the running probability of each non-selected user application based on the running association degree of the selected user application and each non-selected user application except the selected user application from the plurality of user applications. And the user selects the selected user application by performing touch operation on the touch screen of the target mobile terminal so as to prompt the selected user application to perform foreground running.
Wherein determining an operational probability of each non-selected user application of the plurality of user applications other than the selected user application based on the operational association of the selected user application with each non-selected user application comprises: and determining the ratio of the running relevance of the selected user application and each non-selected user application except the selected user application in the plurality of user applications to the number of basic time units in the preset time interval as the running probability of each non-selected user application. For example, user applications within the target mobile terminal include: the royal glory, Wenxin, Paibao, tremble sound short video and mobile phone Taobao. When the selected user application is glorious by the king, WeChat, Paibao, tremble short video and mobile phone Taobao are all non-selected user applications. Then, the ratio of the relationship between the royal glory and the operation of each of the WeChat, Pay Bao, Shake tone short video, and Mobile Tao to the number of basic time units within a predetermined time interval is determined as the operation probability of each of the WeChat, Pay Bao, Shake tone short video, and Mobile Tao. For example, if the operational association degrees of each of the wechat, pay, tremble, short video, and cell phone pan are 60, 25, 50, and 30, and the number of basic time units is 200, then the operational probabilities of each of the wechat, pay, tremble, short video, and cell phone pan are 60/200, 25/200, 50/200, and 20/200, i.e., 30%, 12.5%, 25%, and 15%.
The sorting device 703 determines a content matching degree of the summary information of each non-selected user application and the summary information of the selected user application, determines an adjustment coefficient of each non-selected user application based on the content matching degree, determines an adjusted operation probability of each non-selected user application based on the adjustment coefficient and the operation probability of each non-selected user application, and performs a descending sorting of the operation probabilities on the plurality of non-selected user applications according to the adjusted operation probability of each non-selected user application to generate a sorted list.
For example, a content relevance of each non-selected user application to the selected user application is determined. The content relevancy between any two user applications in the plurality of user applications can be determined by taking each user application in the plurality of user applications as the selected user application. The matching value of content matching of the summary information of any two user applications is used as the content association degree between any two user applications. The method and the device determine summary information for each user application according to the content, action, source and the like of each user application, and the summary information is used for describing various relevant characteristics of the user application. The method and the device determine the matching value of the abstract information of any two user applications through text comparison and semantic comparison peer-to-peer content matching, and therefore determine the content association degree between any two user applications.
The method further comprises searching the content server according to the identifier of each user application to determine the description information associated with each user application, and determining the summary information of each user application according to the summary data item in the description information associated with each user application. For example, the content server may provide summary information for each user application along with the user to any mobile terminal. Summary information is generated for each user application based on the content, type, purpose, and source of each user application. Wherein the summary information is used to describe the attribute characteristics of the user application.
Wherein determining the content matching degree of the summary information of each non-selected user application and the summary information of the selected user application comprises: performing text comparison on the abstract information of each non-selected user application and the abstract information of the selected user application, and determining the content matching degree Cn of the abstract information of each non-selected user application and the abstract information of the selected user application according to a text comparison result; semantic comparison is carried out on the abstract information of each non-selected user application and the abstract information of the selected user application, and the content matching degree Cn of the abstract information of each non-selected user application and the abstract information of the selected user application is determined according to a text comparison result; and comparing the abstract information of each non-selected user application with the abstract information of the selected user application by keywords, and determining the content matching degree Cn of the abstract information of each non-selected user application and the abstract information of the selected user application according to the text comparison result. Wherein Na-1 is more than or equal to n and more than or equal to 1. Na is the number of user applications in the target mobile terminal, Na is a natural number and Na is more than or equal to 5.
Wherein 1 ≧ content matching degree Cn ≧ 0, i.e., the range of content matching degrees is 0% to 100%, and determining the adjustment coefficient Fn for each non-selected user application based on the content matching degree includes: the adjustment coefficient Fn is (content matching degree Cn-0.5)/4; wherein Na-1 is more than or equal to n and more than or equal to 1, Na is the number of user applications in the target mobile terminal, Na is a natural number and Na is more than or equal to 5. For example, when the selected user application is royal glory, the non-selected user applications are 70%, 20%, 50% and 10% for WeChat, Pay Bao, Shake-tone short video and Mobile Tao Bao, respectively. Then, the adjustment coefficients of WeChat, Payment Bao, Shake-Sound short video and Taobao are (0.7-0.5)/4, (0.2-0.5)/4, (0.5-0.5)/4 and (01-0.5)/4, i.e. 5%, -7.5%, 0% and-10%, respectively.
Determining the adjusted operation probability for each non-selected user application based on the adjustment coefficient Fn and the operation probability for each non-selected user application comprises: and taking the sum of the adjusting coefficient Fn and the running probability of each non-selected user application as the adjusted running probability of each non-selected user application. For example, the operating probabilities of each of the WeChat, Payment Bao, Shake tone short video, and cell Tao are 30%, 12.5%, 25%, and 15%, and the adjustment coefficients of the WeChat, Payment Bao, Shake tone short video, and cell Tao are 5%, -7.5%, 0%, and-10%, respectively, so that the operating probabilities of the WeChat, Payment Bao, Shake tone short video, and cell Tao are adjusted to be 35%, 5%, 25%, and 5%.
FIG. 2 is a logic diagram of an ordered list 200 according to an embodiment of the invention. As shown in fig. 2, an operation statistics file associated with a target mobile terminal within the mobile internet is obtained, parsing the operational statistics file to determine operational history information for each of a plurality of user applications (WeChat, Royal of King, trembling short video, Youkou video, Taobao, American takeaway, Baidu takeaway, masterpiece runaway, Sanguo duan, Tu. The operation history information is used for indicating the operation information of each user application in each basic time unit in a plurality of basic time units in a preset time interval, determining the frequency of foreground operation of any two user applications in the same basic time unit based on the operation history information of each user application, and determining the operation association degree between any two user applications based on the frequency of foreground operation in the same basic time unit.
In response to a selected user application (WeChat) of the plurality of user applications being selected by a user to execute in the foreground, an execution probability of each non-selected user application is determined based on an execution association of the selected user application with each non-selected user application (Royal, tremble, Yokoku, Tanbao, beauty group takeaway, Baidu takeaway, best-class coaster, Sankyo, Idle English) of the plurality of user applications other than the selected user application.
In the example shown in fig. 2, as shown in table 202, in response to a selected user application (i.e., WeChat) selected by the user from among a plurality of user applications, each non-selected user application, as shown in table 202, is that the operational probability of royal glory is 15%, the operational probability of trembled short video is 9%, the operational probability of Youkou video is 11%, the operational probability of cell phone Taobao is 10%, the operational probability of American takeaway is 12%, the operational probability of Baidu takeaway is 12%, the adjusted operational probability of mastership is 5%, the operational probability of Sankyo extreme-disfavor is 3%, the operational probability of Lowa, and the operational probability of Ladies is 0%.
The method determines the content matching degree of the summary information of each non-selected user application and the summary information of the selected user application, and determines the adjusting coefficient of each non-selected user application based on the content matching degree. Wherein determining the adjustment factor Fn for each non-selected user application based on the content match metric comprises: the adjustment coefficient Fn is (content matching degree Cn-0.5)/4. The adjustment coefficient F1 for the royal glory is 3%, the adjustment coefficient F2 for the tremble short video is-3%, the adjustment coefficient F3 for the kukoku video is 4%, the adjustment coefficient F4 for the mobile phone Taobao is 3%, the adjustment coefficient F5 for the American group takeaway is-2%, the adjustment coefficient F6 for the Baidu takeaway is-3%, the adjustment coefficient F7 for the polar flying vehicle is 2%, the adjustment coefficient F8 for the three kingdoms is 3%,. 9, and the adjustment coefficient Fn for the lazy english is 0%.
In the example shown in fig. 2, as shown in table 201, in response to a selected user application (i.e., WeChat) selected by a user from among a plurality of user applications, the foreground operation is performed, and non-selected user applications, for example, the adjusted operation probability of the royal glory is 18%, the adjusted operation probability of the judder short video is 16%, the adjusted operation probability of the kui-you video is 15%, the adjusted operation probability of the cell phone Taobao is 13%, the adjusted operation probability of the U-Shao takeaway is 10%, the adjusted operation probability of the Baidu takeaway is 9%, the adjusted operation probability of the polar flying vehicle is 7%, the adjusted operation probability of the Sanguo extremely bilinear is 6%, the adjusted operation probability of the san extremely bilinear is 6%, the adjusted operation probability of the Logan is 0%.
Setting means 704 is configured to determine at least one pre-fetch user application of the plurality of user applications that can be pre-loaded from the second memory into the first memory according to the ordered list, and set a storage level for each pre-fetch user application of the at least one pre-fetch user application according to the ordered list, wherein the storage level comprises: a decrement storage stage, an increment storage stage, a quantitative storage stage and a compression storage stage; and setting the storage level of the dynamic storage unit allocated to each pre-fetching user application according to the storage level of each pre-fetching user application.
Wherein determining a plurality of pre-fetch user applications of the plurality of non-selected user applications that can be pre-loaded from the second memory into the first memory according to the ordered list comprises: when the number of the non-selected user applications in the ordered list having the operation probability greater than the pre-fetching threshold (e.g., 5%, 10%) is greater than 0 (e.g., 10), determining the non-selected user applications in the ordered list having the operation probability greater than the pre-fetching threshold as the pre-fetched user applications that can be pre-loaded from the second memory into the first memory to determine at least one pre-fetched user application; when the number of non-selected user applications in the ordered list having a probability of running greater than the pre-fetch threshold (e.g., 5%, 10%) is equal to 0, all non-selected user applications (e.g., 15) in the ordered list are determined as pre-fetched user applications that can be pre-loaded from the second memory into the first memory to determine at least one pre-fetched user application.
Wherein setting a storage level for each of at least one pre-fetch user application according to the ordered list comprises:
setting a storage level of the pre-fetched user applications in the ordered list having an operational probability greater than a high probability threshold (e.g., 15%) to a reduced storage level;
setting a storage level of the pre-fetch user application in the sorted list having a probability of operation less than or equal to a high probability threshold (e.g., 15%) and greater than a medium probability threshold (e.g., 12%) as an incremental storage level;
setting a storage level of the pre-fetched user applications in the sorted list having a probability of operation less than or equal to a medium probability threshold (e.g., 12%) and greater than a low probability threshold (e.g., 8%) as a quantitative storage level;
setting a storage level of the pre-fetched user applications in the sorted list having an operating probability less than or equal to a low probability threshold (e.g., 8%) as a compressed storage level. Wherein the pre-fetching of user applications has a running probability of more than 5%.
The allocation means 705 is adapted to allocate at least one dynamic memory location for each pre-fetch user application of the reduced memory rank, at least one dynamic memory location for each pre-fetch user application of the compressed memory rank, one dynamic memory location for each pre-fetch user application of the increased memory rank and one dynamic memory location for each pre-fetch user application of the quantitative memory rank. Wherein the storage capacity of each of the at least one dynamic storage unit allocated for each of the pre-fetched user applications of the reduced storage tier may be the same or different, and the storage capacity of each of the at least one dynamic storage unit allocated for each of the pre-fetched user applications of the compressed storage tier may be the same or different.
The total storage capacity of the at least one dynamic storage unit allocated for the pre-fetching user application of each reduced storage tier is capable of accommodating all data files of the pre-fetching user application of the corresponding reduced storage tier. The total storage capacity of the at least one dynamic storage unit allocated for the pre-fetching user application of each compressed storage tier is capable of accommodating all compressed data files of the pre-fetching user application of the corresponding compressed storage tier. One dynamic memory unit is allocated for each pre-fetching user application of the incremental storage tier that can accommodate all data files of the pre-fetching user application of the corresponding incremental storage tier. One dynamic memory unit is allocated to each pre-fetching user application of a quantitative memory rank to be able to accommodate all data files of the pre-fetching user application of the corresponding quantitative memory rank.
The prefetching means 706 is configured to perform file prefetching for the data file associated with each prefetching user application from the second memory according to the storage level of the prefetching user application, and includes:
copying a plurality of data files associated with each pre-fetch user application of the reduced storage tier from the second memory to the dynamic storage unit of at least one reduced storage tier allocated for each pre-fetch user application of the reduced storage tier, setting a first time period for the dynamic storage unit of each reduced storage tier upon completion of the copying and starting timing, deleting a first predetermined number of data files in the dynamic storage unit of each reduced storage tier each time the first time period expires;
selecting at least one base data file among the plurality of data files associated with each pre-fetching user application of the incremental storage tier, copying the at least one base data file of each pre-fetching user application of the incremental storage tier from the second memory to the dynamic storage unit of the incremental storage tier allocated for each pre-fetching user application of the incremental storage tier, setting a second time period and starting timing for the dynamic storage unit of the incremental storage tier upon completion of the copying, wherein a second predetermined number of data files among the plurality of data files associated with each pre-fetching user application of the incremental storage tier are copied from the second memory to the dynamic storage unit of the incremental storage tier allocated for each pre-fetching user application of the incremental storage tier each time the second time period expires;
selecting at least one data file from the plurality of data files associated with each pre-fetch user application of the quantitative storage tier based on the storage capacity of the dynamic storage unit of the quantitative storage tier assigned for each pre-fetch user application of the quantitative storage tier and copying the selected at least one data file from the second memory to the dynamic storage unit of the quantitative storage tier assigned for each pre-fetch user application of the quantitative storage tier; and
the method further includes compressing the plurality of data files associated with each pre-fetch user application of the compressed storage tier to generate a plurality of compressed data files, copying the plurality of compressed data files of each pre-fetch user application of the compressed storage tier from the second memory to a dynamic storage unit of at least one compressed storage tier allocated for each pre-fetch user application of the compressed storage tier.
The initialization device 707 is configured to, in response to a file prefetching request initiated by a user and used for performing file prefetching on a data file associated with a user application of a target mobile terminal in a mobile internet, obtain a dynamic configuration file associated with the file prefetching;
creating a dynamic index area in a first memory of the target mobile terminal, and creating a plurality of dynamic storage units for storing data files in the first memory according to the dynamic configuration file, wherein the storage capacity of each of the plurality of dynamic storage units is determined according to the dynamic configuration file; and
and generating a dynamic index table in the dynamic index area, wherein the dynamic index table comprises a plurality of index entries, and each index entry is used for recording the application identification, the starting address, the ending address, the storage capacity and the storage level of a corresponding dynamic storage unit in a plurality of dynamic storage units.

Claims (10)

1. A method for prefetching files according to a running application in a mobile internet, the method comprising:
acquiring an operation statistical file associated with a target mobile terminal in a mobile internet, analyzing the operation statistical file to determine operation history information of each user application in a plurality of user applications in the target mobile terminal, wherein the operation history information is used for indicating the operation information of each user application in each basic time unit in a plurality of basic time units in a preset time interval, determining the frequency of foreground operation of any two user applications in the same basic time unit based on the operation history information of each user application, and determining the operation association degree between any two user applications based on the frequency of foreground operation in the same basic time unit;
responding to the selected user application selected by a user in the plurality of user applications to perform foreground running, and determining the running probability of each non-selected user application based on the running association degree of the selected user application and each non-selected user application except the selected user application in the plurality of user applications;
determining content matching degree of the summary information of each non-selected user application and the summary information of the selected user application, determining an adjustment coefficient of each non-selected user application based on the content matching degree, determining an adjusted operation probability of each non-selected user application based on the adjustment coefficient and the operation probability of each non-selected user application, and performing descending ordering of the operation probabilities on the plurality of non-selected user applications according to the adjusted operation probability of each non-selected user application to generate an ordered list;
determining at least one of the plurality of non-selected user applications that can be preloaded from the second memory into the first memory according to the ordered list, and setting a storage level for each of the at least one pre-fetched user application according to the ordered list, wherein the storage level comprises: a decrement storage stage, an increment storage stage, a quantitative storage stage and a compression storage stage;
allocating at least one dynamic memory unit for each pre-fetch user application of the decrement storage stage, allocating at least one dynamic memory unit for each pre-fetch user application of the compression storage stage, allocating one dynamic memory unit for each pre-fetch user application of the increment storage stage and allocating one dynamic memory unit for each pre-fetch user application of the quantitive storage stage;
setting a storage level for a dynamic storage unit allocated to each pre-fetching user application according to the storage level of each pre-fetching user application;
file prefetching a data file associated with each prefetched user application from the second memory according to the storage level of the prefetched user application, comprising:
copying a plurality of data files associated with each pre-fetch user application of the reduced storage tier from the second memory to the dynamic storage unit of at least one reduced storage tier allocated for each pre-fetch user application of the reduced storage tier, setting a first time period for the dynamic storage unit of each reduced storage tier upon completion of the copying and starting timing, deleting a first predetermined number of data files in the dynamic storage unit of each reduced storage tier each time the first time period expires;
selecting at least one base data file among the plurality of data files associated with each pre-fetching user application of the incremental storage tier, copying the at least one base data file of each pre-fetching user application of the incremental storage tier from the second memory to the dynamic storage unit of the incremental storage tier allocated for each pre-fetching user application of the incremental storage tier, setting a second time period and starting timing for the dynamic storage unit of the incremental storage tier upon completion of the copying, wherein a second predetermined number of data files among the plurality of data files associated with each pre-fetching user application of the incremental storage tier are copied from the second memory to the dynamic storage unit of the incremental storage tier allocated for each pre-fetching user application of the incremental storage tier each time the second time period expires;
selecting at least one data file from the plurality of data files associated with each pre-fetch user application of the quantitative storage tier based on the storage capacity of the dynamic storage unit of the quantitative storage tier assigned for each pre-fetch user application of the quantitative storage tier and copying the selected at least one data file from the second memory to the dynamic storage unit of the quantitative storage tier assigned for each pre-fetch user application of the quantitative storage tier; and
the method further includes compressing the plurality of data files associated with each pre-fetch user application of the compressed storage tier to generate a plurality of compressed data files, copying the plurality of compressed data files of each pre-fetch user application of the compressed storage tier from the second memory to a dynamic storage unit of at least one compressed storage tier allocated for each pre-fetch user application of the compressed storage tier.
2. The method of claim 1, comprising a plurality of mobile terminals within the mobile internet and determining a mobile terminal initiating a file pre-fetch request as a target mobile terminal, wherein the number of user applications is greater than 4; the operation statistical file comprises a plurality of operation data tables, one operation data table is allocated to each user application in a plurality of user applications in the target mobile terminal, each operation data table comprises a plurality of operation data items, and the content of each operation data item is quintuple < application name, identifier of basic time unit, operation starting time, operation ending time and accumulated operation time length >; the operation data table allocated to each user application is used as the operation history information of each user application, the operation data table allocated to each user application is used for indicating the operation information of each user application in each basic time unit in a plurality of basic time units in a preset time interval, and the operation data table allocated to each user application is used for recording the operation information of each user application in real time; in the operation statistical file, storing a preset number of operation data items for each user application, or storing a preset number of operation data items within a natural day or a preset time length for each user application, wherein the preset time interval is the preset number of natural days or the preset time length; wherein the predetermined number of natural days is 10 natural days, 20 natural days, or 30 natural days, and wherein the predetermined time length is 240 hours, 480 hours, or 720 hours.
3. The method of any one of claims 1-2, wherein each basic time unit is 60 minutes and the start time and the end time of each basic time unit are whole time; determining a running association between any two user applications based on the number of foreground runs within the same basic time unit includes:
taking the product of the times of foreground operation of any two user applications in the same basic time unit and the correlation coefficient as the operation correlation degree between any two user applications;
wherein the correlation coefficient is 0.5, 1, 2 or 3;
determining an operation probability of each non-selected user application based on the operation association degree of the selected user application and each non-selected user application except the selected user application in the plurality of user applications comprises:
and determining the ratio of the running relevance of the selected user application and each non-selected user application except the selected user application in the plurality of user applications to the number of basic time units in the preset time interval as the running probability of each non-selected user application.
4. The method according to any one of claims 1-3, wherein a user selects the selected user application by touch-manipulating a touch screen of a target mobile terminal to cause the selected user application to foreground run;
the method further comprises searching the content server according to the identifier of each user application to determine the description information associated with each user application, and determining the summary information of each user application according to the summary data item in the description information associated with each user application; generating summary information for each user application according to the content, type, use and source of each user application; wherein the summary information is used to describe the attribute characteristics of the user application.
5. The method of any of claims 1-4, wherein determining a content match of the summary information of each non-selected user application with the summary information of the selected user application comprises:
performing text comparison on the abstract information of each non-selected user application and the abstract information of the selected user application, and determining the content matching degree Cn of the abstract information of each non-selected user application and the abstract information of the selected user application according to a text comparison result;
semantic comparison is carried out on the abstract information of each non-selected user application and the abstract information of the selected user application, and the content matching degree Cn of the abstract information of each non-selected user application and the abstract information of the selected user application is determined according to a text comparison result; and
comparing the abstract information of each non-selected user application with the abstract information of the selected user application by keywords, determining the content matching degree Cn of the abstract information of each non-selected user application and the abstract information of the selected user application according to the text comparison result,
wherein Na-1 is more than or equal to n and more than or equal to 1, Na is the number of user applications in the target mobile terminal, Na and n are both natural numbers, and Na is more than or equal to 5;
wherein 1 ≧ content matching degree Cn ≧ 0, and determining the adjustment coefficient Fn for each non-selected user application based on the content matching degree includes:
the adjustment coefficient Fn is (content matching degree Cn-0.5)/4;
wherein Na-1 is more than or equal to n and more than or equal to 1, Na is the number of user applications in the target mobile terminal, Na and n are both natural numbers, and Na is more than or equal to 5; determining the adjusted operation probability for each non-selected user application based on the adjustment coefficient Fn and the operation probability for each non-selected user application comprises:
and taking the sum of the adjusting coefficient Fn and the running probability of each non-selected user application as the adjusted running probability of each non-selected user application.
6. A system for prefetching files based on running applications in a mobile internet, the system comprising:
the analysis device is used for acquiring an operation statistical file associated with a target mobile terminal in the mobile Internet, analyzing the operation statistical file to determine operation history information of each user application in a plurality of user applications in the target mobile terminal, wherein the operation history information is used for indicating the operation information of each user application in each basic time unit in a plurality of basic time units in a preset time interval, determining the frequency of foreground operation of any two user applications in the same basic time unit based on the operation history information of each user application, and determining the operation association degree between any two user applications based on the frequency of foreground operation in the same basic time unit;
the probability determining device is used for responding to the selected user application selected by the user from the plurality of user applications to carry out foreground operation and determining the operation probability of each non-selected user application based on the operation association degree of the selected user application and each non-selected user application except the selected user application from the plurality of user applications;
a sorting device for determining content matching degree of the summary information of each non-selected user application and the summary information of the selected user application, determining an adjustment coefficient of each non-selected user application based on the content matching degree, determining an adjusted operation probability of each non-selected user application based on the adjustment coefficient and the operation probability of each non-selected user application, and sorting the plurality of non-selected user applications in descending order of the operation probability according to the adjusted operation probability of each non-selected user application to generate a sorted list;
setting means for determining at least one pre-fetch user application of said plurality of non-selected user applications that can be pre-loaded from the second memory into the first memory according to said ordered list, and setting a storage level for each pre-fetch user application of said at least one pre-fetch user application according to said ordered list, wherein said storage level comprises: a decrement storage stage, an increment storage stage, a quantitative storage stage and a compression storage stage; setting a storage level for a dynamic storage unit allocated to each pre-fetching user application according to the storage level of each pre-fetching user application;
the allocation device allocates at least one dynamic storage unit for each pre-fetching user application of the decrement storage level, allocates at least one dynamic storage unit for each pre-fetching user application of the compression storage level, allocates one dynamic storage unit for each pre-fetching user application of the increment storage level and allocates one dynamic storage unit for each pre-fetching user application of the quantitative storage level;
prefetching means for file prefetching the data files associated with each prefetched user application from the second memory according to the storage level of the prefetched user application, comprising:
copying a plurality of data files associated with each pre-fetch user application of the reduced storage tier from the second memory to the dynamic storage unit of at least one reduced storage tier allocated for each pre-fetch user application of the reduced storage tier, setting a first time period for the dynamic storage unit of each reduced storage tier upon completion of the copying and starting timing, deleting a first predetermined number of data files in the dynamic storage unit of each reduced storage tier each time the first time period expires;
selecting at least one base data file among the plurality of data files associated with each pre-fetching user application of the incremental storage tier, copying the at least one base data file of each pre-fetching user application of the incremental storage tier from the second memory to the dynamic storage unit of the incremental storage tier allocated for each pre-fetching user application of the incremental storage tier, setting a second time period and starting timing for the dynamic storage unit of the incremental storage tier upon completion of the copying, wherein a second predetermined number of data files among the plurality of data files associated with each pre-fetching user application of the incremental storage tier are copied from the second memory to the dynamic storage unit of the incremental storage tier allocated for each pre-fetching user application of the incremental storage tier each time the second time period expires;
selecting at least one data file from the plurality of data files associated with each pre-fetch user application of the quantitative storage tier based on the storage capacity of the dynamic storage unit of the quantitative storage tier assigned for each pre-fetch user application of the quantitative storage tier and copying the selected at least one data file from the second memory to the dynamic storage unit of the quantitative storage tier assigned for each pre-fetch user application of the quantitative storage tier; and
the method further includes compressing the plurality of data files associated with each pre-fetch user application of the compressed storage tier to generate a plurality of compressed data files, copying the plurality of compressed data files of each pre-fetch user application of the compressed storage tier from the second memory to a dynamic storage unit of at least one compressed storage tier allocated for each pre-fetch user application of the compressed storage tier.
7. The system of claim 6, comprising a plurality of mobile terminals within the mobile internet and determining a mobile terminal that initiated a file pre-fetch request as a target mobile terminal, wherein the number of user applications is greater than 4; the operation statistical file comprises a plurality of operation data tables, one operation data table is allocated to each user application in a plurality of user applications in the target mobile terminal, each operation data table comprises a plurality of operation data items, and the content of each operation data item is quintuple < application name, identifier of basic time unit, operation starting time, operation ending time and accumulated operation time length >; the operation data table allocated to each user application is used as the operation history information of each user application, the operation data table allocated to each user application is used for indicating the operation information of each user application in each basic time unit in a plurality of basic time units in a preset time interval, and the operation data table allocated to each user application is used for recording the operation information of each user application in real time; in the operation statistical file, storing a preset number of operation data items for each user application, or storing a preset number of operation data items within a natural day or a preset time length for each user application, wherein the preset time interval is the preset number of natural days or the preset time length; wherein the predetermined number of natural days is 10 natural days, 20 natural days, or 30 natural days, and wherein the predetermined time length is 240 hours, 480 hours, or 720 hours.
8. The system of any one of claims 6-7, wherein each basic time unit is 60 minutes and the start time and the end time of each basic time unit are whole time; the analyzing device determines the operation association degree between any two user applications based on the number of foreground operation times in the same basic time unit, and comprises the following steps:
taking the product of the total times of foreground operation of any two user applications in the same basic time unit and the correlation coefficient as the operation correlation degree of any two user applications between any two user applications;
wherein the correlation coefficient is 0.5, 1, 2 or 3; the probability determination device determines the operation probability of each non-selected user application based on the operation association degree of the selected user application and each non-selected user application except the selected user application in the plurality of user applications comprises the following steps:
and determining the ratio of the running relevance of the selected user application and each non-selected user application except the selected user application in the plurality of user applications to the number of basic time units in the preset time interval as the running probability of each non-selected user application.
9. The system of any one of claims 6-8, wherein a user selects the selected user application by touch-manipulating a touchscreen of a target mobile terminal to cause the selected user application to run in the foreground;
the method further comprises searching the content server according to the identifier of each user application to determine the description information associated with each user application, and determining the summary information of each user application according to the summary data item in the description information associated with each user application; generating summary information for each user application according to the content, type, use and source of each user application; wherein the summary information is used to describe the attribute characteristics of the user application.
10. The system of any of claims 6-9, wherein the means for determining a content match of the summary information for each non-selected user application with the summary information for the selected user application comprises:
performing text comparison on the abstract information of each non-selected user application and the abstract information of the selected user application, and determining the content matching degree Cn of the abstract information of each non-selected user application and the abstract information of the selected user application according to a text comparison result;
semantic comparison is carried out on the abstract information of each non-selected user application and the abstract information of the selected user application, and the content matching degree Cn of the abstract information of each non-selected user application and the abstract information of the selected user application is determined according to a text comparison result; and
comparing the abstract information of each non-selected user application with the abstract information of the selected user application by keywords, determining the content matching degree Cn of the abstract information of each non-selected user application and the abstract information of the selected user application according to the text comparison result,
na-1 is more than or equal to n and more than or equal to 1, Na is the number of user applications in the target mobile terminal, Na and n are natural numbers and Na is more than or equal to 5, wherein 1 is more than or equal to content matching degree Cn and more than or equal to 0, and determining the adjustment coefficient Fn of each non-selected user application based on the content matching degree comprises the following steps:
the adjustment coefficient Fn is (content matching degree Cn-0.5)/4;
wherein Na-1 is more than or equal to n and more than or equal to 1, Na is the number of user applications in the target mobile terminal, Na and n are both natural numbers, and Na is more than or equal to 5;
the determining, by the ranking means, an adjusted running probability for each non-selected user application based on the adjustment coefficient Fn and the running probability for each non-selected user application comprises:
and taking the sum of the adjusting coefficient Fn and the running probability of each non-selected user application as the adjusted running probability of each non-selected user application.
CN201810943813.2A 2018-08-18 2018-08-18 Method and system for prefetching files in mobile internet according to running application Active CN109033445B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810943813.2A CN109033445B (en) 2018-08-18 2018-08-18 Method and system for prefetching files in mobile internet according to running application

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810943813.2A CN109033445B (en) 2018-08-18 2018-08-18 Method and system for prefetching files in mobile internet according to running application

Publications (2)

Publication Number Publication Date
CN109033445A CN109033445A (en) 2018-12-18
CN109033445B true CN109033445B (en) 2021-08-17

Family

ID=64631936

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810943813.2A Active CN109033445B (en) 2018-08-18 2018-08-18 Method and system for prefetching files in mobile internet according to running application

Country Status (1)

Country Link
CN (1) CN109033445B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11418616B1 (en) 2021-11-29 2022-08-16 Verizon Patent And Licensing Inc. Intelligent proactive template driven edge caching method and apparatus

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103513957A (en) * 2012-06-27 2014-01-15 上海芯豪微电子有限公司 High-performance cache system and method
CN104765572A (en) * 2015-03-25 2015-07-08 华中科技大学 Energy-saving virtual storage server system and scheduling method
US9244960B2 (en) * 2013-03-15 2016-01-26 International Business Machines Corporation Metadata-driven version management service in pervasive environment
CN105975465A (en) * 2015-10-19 2016-09-28 霍亮 Method for monitoring traditional Chinese medicine resources based on geographic national conditions
CN106503238A (en) * 2016-11-07 2017-03-15 王昱淇 The network map region clustering forecasting method that a kind of intensified learning drives

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8762349B2 (en) * 2011-07-14 2014-06-24 Dell Products L.P. Intelligent deduplication data prefetching
WO2014201696A1 (en) * 2013-06-21 2014-12-24 华为技术有限公司 File reading method, storage device and reading system
US9667736B2 (en) * 2014-04-29 2017-05-30 International Business Machines Corporation Parallel I/O read processing for use in clustered file systems having cache storage
US10067763B2 (en) * 2015-12-11 2018-09-04 International Business Machines Corporation Handling unaligned load operations in a multi-slice computer processor

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103513957A (en) * 2012-06-27 2014-01-15 上海芯豪微电子有限公司 High-performance cache system and method
US9244960B2 (en) * 2013-03-15 2016-01-26 International Business Machines Corporation Metadata-driven version management service in pervasive environment
CN104765572A (en) * 2015-03-25 2015-07-08 华中科技大学 Energy-saving virtual storage server system and scheduling method
CN105975465A (en) * 2015-10-19 2016-09-28 霍亮 Method for monitoring traditional Chinese medicine resources based on geographic national conditions
CN106503238A (en) * 2016-11-07 2017-03-15 王昱淇 The network map region clustering forecasting method that a kind of intensified learning drives

Also Published As

Publication number Publication date
CN109033445A (en) 2018-12-18

Similar Documents

Publication Publication Date Title
US9582587B2 (en) Real-time content searching in social network
US11580168B2 (en) Method and system for providing context based query suggestions
CN110109953B (en) Data query method, device and equipment
US8463779B2 (en) Representative keyword selection
US9662567B2 (en) Optimizing gaming applications accessed by electronic devices
JP2009528624A (en) Providing cache query results based on part of a query
CN110569213A (en) File access method, device and equipment
CN109766318B (en) File reading method and device
CN109240607B (en) File reading method and device
CN109033445B (en) Method and system for prefetching files in mobile internet according to running application
CN110858210A (en) Data query method and device
CN109240574B (en) Method and system for prefetching files in mobile internet based on operation heat
CN109240987B (en) Method and system for prefetching data based on time for mobile internet
US20170337253A1 (en) In-memory db connection support type scheduling method and system for real-time big data analysis in distributed computing environment
CN109144960B (en) Method and system for prefetching data in mobile internet according to area range
CN108170664B (en) Key word expansion method and device based on key words
CN109271352B (en) Method and system for prefetching files in mobile internet according to state information
CN112416626B (en) Data processing method and device
JP2022106948A (en) Information display method, device, electronic apparatus, storage media, and computer program
CN109151196B (en) Method and system for prefetching data in mobile internet based on current position
CN109189737B (en) Method and system for prefetching files in mobile internet according to time segments
US20210097049A1 (en) Method, device and computer program product for managing index tables
CN109271345B (en) Method and system for prefetching data based on navigation information in mobile internet
CN110929002B (en) Similar article duplicate removal method, device, terminal and computer readable storage medium
KR102544635B1 (en) System for providing component and baas-based website builder services

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right

Effective date of registration: 20210729

Address after: 518000 Room 201, building a, No. 1, Qianwan 1st Road, Qianhai Shenzhen Hong Kong cooperation zone, Shenzhen, Guangdong (settled in Shenzhen Qianhai business secretary Co., Ltd.) (actual office address: b03b, south wing, floor 4, building M10, Central District, science and Technology Park, Nanshan District, Shenzhen)

Applicant after: Shenzhen Yinghua Technology Co.,Ltd.

Address before: 110034 gate 2, 14th floor, unit 1, building 6, No.10 Xianglushan Road, Shenyang City, Liaoning Province

Applicant before: Wang Mei

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant