Predictive prefetching of attribute information
US-9461980-B1 · Oct 4, 2016 · US
US10318310B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10318310-B2 |
| Application number | US-201515309095-A |
| Country | US |
| Kind code | B2 |
| Filing date | May 5, 2015 |
| Priority date | May 5, 2014 |
| Publication date | Jun 11, 2019 |
| Grant date | Jun 11, 2019 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Described is a startup accelerating method and apparatus. The method includes: obtaining, when it is monitored that a login process of an application is started up, pre-fetched data corresponding to a main process of the application, and loading the obtained pre-fetched data into a cache, the pre-fetched data being obtained according to a historical startup procedure for the main process of the application; stopping, when it is monitored that the startup of the login process is completed or it is monitored that the main process of the application is started up, obtaining the pre-fetched data corresponding to the main process of the application; and completing a startup procedure of the main process according to the pre-fetched data loaded in the cache. The apparatus includes: an obtaining module, a stopping module and a startup module.
Opening claim text (preview).
The invention claimed is: 1. A startup accelerating method, comprising: obtaining, when it is monitored that a login process of an application is started up, pre-fetched data corresponding to a main process of the application; loading the pre-fetched data into a cache, the pre-fetched data being obtained according to a historical startup procedure for the main process of the application; stopping, when it is monitored that a startup of the login process is completed or it is monitored that the main process of the application is started up, obtaining the pre-fetched data corresponding to the main process of the application; and completing a startup procedure of the main process according to the pre-fetched data loaded in the cache, wherein the obtaining pre-fetched data corresponding to a main process of the application, comprises: obtaining pre-fetched information corresponding to the main process of the application according to an identifier of the login process, wherein the identifier of the login process is a name of the login process; reading corresponding data from a disk file according to the pre-fetched information; and determining that the read data is the pre-fetched data corresponding to the main process of the application, wherein a time period of obtaining the pre-fetched data is equal to a time period of performing the startup procedure of the login process, and wherein, when a size of the pre-fetched data obtained in the startup procedure of the login process is less than a size of total data corresponding to the pre-fetched information at a time of monitoring that a startup of the login process is completed or at a time of monitoring that the main process of the application is started up, a remaining portion of the total data corresponding to the pre-fetched information is not pre-fetched. 2. The method according to claim 1 , wherein the obtaining pre-fetched information corresponding to the main process of the application according to the identifier of the login process comprises: obtaining a main process identifier of the application according to the identifier of the login process; determining a storage path of the pre-fetched information corresponding to the main process according to the main process identifier; and obtaining the pre-fetched information corresponding to the main process according to the storage path of the pre-fetched information corresponding to the main process. 3. The method according to claim 1 , wherein the reading corresponding data from the disk file according to the pre-fetched information comprises: parsing the pre-fetched information to obtain parsed pre-fetched information; forming data information of a specific data structure by the parsed pre-fetched information, the data information comprising a file path, an offset value and a length value of needed data of the main process of the application; and reading the corresponding data from the disk file according to the file path, the offset value and the length value. 4. The method according to claim 1 , wherein the method further comprises: calculating a startup progress of the main process according to the size of the total data corresponding to the pre-fetched information and a size of loaded data of the main process in the startup procedure of the main process of the application; calculating an accelerated time of the main process according to a startup consumed time of the main process, the size of the loaded data of the main process, the size of the pre-fetched data, and the startup progress, the accelerated time indicating a reduction in the startup consumed time that is saved based on the size of the pre-fetched data; and displaying the startup progress and the accelerated time of the main process. 5. The method according to claim 4 , wherein the accelerated time of the main process is calculated based on the following formula: T=t/z 1 ×z 2 ×s, wherein T is the accelerated time of the main process, t is the startup consumed time of the main process, z 1 is the size of the loaded data of the main process, z 2 is the size of the pre-fetched data of the main process, and s is the startup progress. 6. The method according to claim 4 , wherein the startup progress is calculated by dividing the size of the loaded data of the main process by the size of the total data corresponding to the pre-fetched information. 7. The method according to claim 1 , wherein before the obtaining, when it is monitored that the login process of the application is started up, the pre-fetched data corresponding to the main process of the application, the method comprises: monitoring the historical startup procedure of the main process of the application, and obtaining startup data of the application; obtaining, according to the startup data, an offset value and a length value of data read by the main process from a magnetic disk in the startup procedure; and generating pre-fetched information according to a file path of a file at which the startup data is located, the offset value and the length value. 8. The method according to claim 1 , wherein before the obtaining, when it is monitored that the login process of the application is started up, the pre-fetched data corresponding to the main process of the application, the method comprises: receiving input/output (IO) training data, the IO training data comprising file data and a relative file path of a file at which file data corresponding to the main process is located; converting, according to an installation path of the main process in a terminal, the relative file path of the file at which the file data corresponding to the main process is located into a corresponding absolute file path; converting the file data into a corresponding offset value and a corresponding length value; and generating pre-fetched information according to the corresponding absolute file path, the corresponding offset value and the length value. 9. The method according to claim 1 , wherein the method further comprises, when the size of the pre-fetched data obtained in the startup procedure of the login process is less than the size of the total data corresponding to the pre-fetched information: reading, from a magnetic disk, the remaining portion of the total data corresponding to the pre-fetched information that has not been pre-fetched, in the startup procedure of the main process; and completing the startup procedure of the main process according to the pre-fetched data loaded in the cache and the remaining portion read from the magnetic disk in the startup procedure of the main process. 10. A startup accelerating apparatus, comprising: a processor and a non-transitory storage, wherein the non-transitory storage stores machine readable instructions, and the processor executes the machine readable instructions stored in the non-transitory storage to: obtain, when it is monitored that a login process of an application is started up, pre-fetched data corresponding to a main process of the application, and load the pre-fetched data into a cache, the pre-fetched data being obtained according to a historical startup procedure for the main process of the application; stop, when it is monitored that the startup of the login process is completed or it is monitored that the main process of the application is started up, obtaining the pre-fetched data corresponding to the main process of the application; and complete a startup procedure of the main process according to the pre-fetched data loaded in the cache; wherein the processor executes the machine readable instructions stored in the non-transitory storage to: obtain pre-fetched information corresponding to
User profiles; Roaming · CPC title
Processor initialisation · CPC title
Loading of operating system · CPC title
Program loading or initiating (bootstrapping G06F9/4401; security arrangements for program loading or initiating G06F21/57) · CPC title
Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.