Startup accelerating method and appartus
US-2017075697-A1 · Mar 16, 2017 · US
US10970082B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10970082-B2 |
| Application number | US-201916402347-A |
| Country | US |
| Kind code | B2 |
| Filing date | May 3, 2019 |
| Priority date | May 5, 2014 |
| Publication date | Apr 6, 2021 |
| Grant date | Apr 6, 2021 |
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.
A startup accelerating method is provided. In response to determining that a login process of an application is started up, pre-fetched data corresponding to a main process of the application is obtained. The pre-fetched data is loaded into a cache, the pre-fetched data being obtained according to a historical startup procedure for the main process. In response to determining that a startup of the login process is completed or determining that the main process is started up, the pre-fetched data is obtained, and a startup procedure of the main process is completed according to the pre-fetched data loaded in the cache. In response to at least portion of total data remaining upon determining that the startup of the login process is completed or determining that the main process is started up, the remaining at least portion of the total data is not pre-fetched, the total data corresponding to pre-fetched information.
Opening claim text (preview).
What is claimed is: 1. A startup accelerating method, comprising: in response to determining that a login process of an application is started up, obtaining 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; in response to determining that a startup of the login process is completed or determining that the main process of the application is started up, stopping the obtaining of 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 stopping is performed in a manner such that, in response to at least portion of total data remaining upon determining that the startup of the login process is completed or determining that the main process of the application is started up, the remaining at least portion of the total data is not pre-fetched, the total data corresponding to pre-fetched information. 2. The method according to claim 1 , wherein the obtaining comprises: obtaining the pre-fetched information corresponding to the main process of the application according to an identifier 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. 3. The method according to claim 2 , wherein the obtaining the pre-fetched information 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. 4. The method according to claim 2 , wherein the reading 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. 5. The method according to claim 1 , further comprising: calculating a startup progress of the main process according to a size of 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, a size of the pre-fetched data and the startup progress; and displaying the startup progress and the accelerated time of the main process. 6. The method according to claim 1 , further comprising: determining 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 the 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. 7. The method according to claim 1 , further comprising: 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 the pre-fetched information according to the corresponding absolute file path, the corresponding offset value and the length value. 8. A startup accelerating apparatus, comprising: at least one memory operable to store program code; and at least one processor operable to read the program code and operate as instructed by the program code, the program code comprising: first obtaining code configured to cause the at least one processor to obtain, in response to determining 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; stopping code configured to cause the at least one processor to stop, in response to determining that a startup of the login process is completed or determining that the main process of the application is started up, obtaining the pre-fetched data corresponding to the main process of the application; and startup code configured to cause the at least one processor to complete a startup procedure of the main process according to the pre-fetched data loaded in the cache, wherein the stopping code further causes the at least one processor to stop the obtaining the pre-fetched data in a manner such that, in response to at least portion of total data remaining upon determining that the startup of the login process is completed or determining that the main process of the application is started up, the remaining at least portion of the total data is not pre-fetched, the total data corresponding to pre-fetched information. 9. The apparatus according to claim 8 , wherein the first obtaining code comprises: obtaining code configured to cause the at least one processor to obtain the pre-fetched information corresponding to the main process of the application according to an identifier of the login process; reading code configured to cause the at least one processor to read corresponding data from a disk file according to the pre-fetched information; and loading code configured to cause the at least one processor to determine that the read data is the pre-fetched data corresponding to the main process of the application, and load the pre-fetched data into the cache. 10. The apparatus according to claim 9 , wherein the obtaining code comprises: first obtaining sub code configured to cause the at least one processor to obtain a main process identifier of the application according to the identifier of the login process; determining sub code configured to cause the at least one processor to determine a storage path of the pre-fetched information corresponding to the main process according to the main process identifier; and second obtaining sub coded to obtain the pre-fetched information corresponding to the main process according to the storage path of the pre-fetched information corresponding to the main process. 11. The apparatus according to claim 9 , wherein the reading code comprises: parsing sub code configured to cause the at least one processor to parse the pre-fetched information to obtain parsed pre-fetched information; forming sub code configured to cause the at least one processor to form 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
Program loading or initiating (bootstrapping G06F9/4401; security arrangements for program loading or initiating G06F21/57) · CPC title
Processor initialisation · CPC title
User profiles; Roaming · CPC title
Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading · CPC title
Loading of operating system · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.