CN113076193A - Memory optimization method and device and computer readable storage medium - Google Patents
Memory optimization method and device and computer readable storage medium Download PDFInfo
- Publication number
- CN113076193A CN113076193A CN202110326903.9A CN202110326903A CN113076193A CN 113076193 A CN113076193 A CN 113076193A CN 202110326903 A CN202110326903 A CN 202110326903A CN 113076193 A CN113076193 A CN 113076193A
- Authority
- CN
- China
- Prior art keywords
- memory
- module
- application program
- optimization
- determining
- 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.)
- Granted
Links
- 230000015654 memory Effects 0.000 title claims abstract description 743
- 238000005457 optimization Methods 0.000 title claims abstract description 132
- 238000000034 method Methods 0.000 title claims abstract description 75
- 238000012544 monitoring process Methods 0.000 claims abstract description 36
- 230000006870 function Effects 0.000 claims description 28
- 238000004590 computer program Methods 0.000 claims description 20
- 230000008569 process Effects 0.000 abstract description 26
- 238000011161 development Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 230000003203 everyday effect Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000003247 decreasing effect Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000008447 perception Effects 0.000 description 2
- 206010053615 Thermal burn Diseases 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000011900 installation process Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5016—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5022—Mechanisms to release resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5021—Priority
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System (AREA)
- Stored Programmes (AREA)
Abstract
The present disclosure relates to a method, an apparatus and a computer readable storage medium for optimizing a memory, wherein the method comprises: monitoring memory overhead information of each module in an application program; determining the memory optimization priority of each module based on the memory overhead information; and releasing the memory based on the memory optimization priority. In the embodiment of the disclosure, the memory optimization priority of each module can be determined by monitoring the memory overhead information of each module in the running process of the application program, and then the memory is released based on the memory optimization priority, so that the problems of collapse, blockage, scalding and the like of the application program can be reduced, and the user experience is improved.
Description
Technical Field
The present disclosure relates to the field of memory optimization technologies, and in particular, to a method and an apparatus for memory optimization, and a computer-readable storage medium.
Background
In the application program (APP) using process, the problems of APP crash, blockage, hair scald and the like may occur due to large APP memory overhead, and user experience is affected. In the existing technical scheme for solving the problem of high memory overhead of the APP, most of the existing technical schemes can only determine the code memory overhead condition in the development process, then solve the problem of high memory overhead, and can only provide a solution after the problem is found, so that the solution has high maintenance cost and cannot solve the problem of high memory overhead immediately.
Therefore, a memory optimization scheme is urgently needed to be provided, so that memory overhead is recorded in real time in the APP operation process, memory optimization is performed, the problems of breakdown, blockage, scalding and the like of the APP are reduced, and user experience is improved.
Disclosure of Invention
To solve the above technical problem or at least partially solve the above technical problem, the present disclosure provides a memory optimization method, apparatus, and computer-readable storage medium.
A first aspect of the present disclosure provides a method for optimizing a memory, where the method includes:
monitoring memory overhead information of each module in an application program;
determining the memory optimization priority of each module based on the memory overhead information;
and performing memory release based on the memory optimization priority.
Further, before determining the memory optimization priority of each module based on the memory overhead information, the method further includes:
acquiring the maximum used memory of an application program;
judging whether to optimize the memory or not based on the maximum used memory and the memory overhead information;
and if the memory optimization is carried out, determining the priority of the memory optimization based on the memory overhead information.
Further, the maximum used memory is the memory capacity applied by the application program, or the remaining memory capacity of the device;
wherein an application is installed in the device; the remaining memory capacity of the device is calculated based on the total memory capacity of the device and the allocated memory capacity of the device.
Further, determining whether to perform memory optimization based on the maximum used memory and the memory overhead information of each module includes:
determining a memory residual threshold value for optimizing the memory based on the maximum used memory and the memory overhead information of each module;
after the memory residual threshold value is determined, monitoring memory overhead information of each module in real time to obtain the total memory overhead of the application program after the memory residual threshold value is determined; calculating the residual memory capacity of the application program based on the total memory overhead;
and determining to perform memory optimization after the residual memory capacity of the application program is less than or equal to the residual memory threshold.
Further, determining a memory remaining threshold for memory optimization based on the maximum used memory and the memory overhead information of each module includes:
determining the residual memory capacity of the application program based on the maximum used memory and the memory overhead information of each module;
and determining a memory remaining threshold for memory optimization based on the remaining memory capacity of the application program.
Further, the memory residual threshold is a preset multiple of the residual memory capacity of the application program; wherein the preset multiple is greater than 0 and less than 1.
Further, the memory optimization priorities of the modules include:
the module with larger memory overhead and longer unused time > the module with larger memory overhead > all the modules except the currently used module > the longer unused function of the currently used module.
Further, based on the memory optimization priority, the memory release includes:
and sequentially releasing the memories based on the sequence of the memory optimization priorities from high to low until the residual memory capacity of the application program after the memory is released is greater than the residual memory threshold, and stopping the memory release.
Further, the method further comprises:
and recording module information corresponding to the memory release while the memory release is carried out.
Further, the method further comprises:
and uploading the module information corresponding to the memory release to the cloud.
A second aspect of the present disclosure provides an apparatus for memory optimization, the apparatus comprising:
the monitoring module is used for monitoring the memory overhead information of each module in the application program;
the determining module is used for determining the memory optimization priority of each module based on the memory overhead information;
and the release module is used for releasing the memory based on the memory optimization priority.
Further, the apparatus further comprises:
the acquisition module is used for acquiring the maximum used memory of the application program;
the judging module is used for judging whether to optimize the memory or not based on the maximum used memory and the memory overhead information;
and the determining module is used for determining the memory optimization priority of each module based on the memory overhead information after the judging module determines to optimize the memory.
Further, the judging module is specifically configured to:
determining a memory residual threshold value for optimizing the memory based on the maximum used memory and the memory overhead information of each module;
after the memory residual threshold value is determined, monitoring memory overhead information of each module in real time to obtain the total memory overhead of the application program after the memory residual threshold value is determined; calculating the residual memory capacity of the application program based on the total memory overhead;
and optimizing the memory after the residual memory capacity of the application program is less than or equal to the residual memory threshold value.
A third aspect of the disclosure provides a computer apparatus comprising a processor for implementing the steps of the method according to any one of the preceding schemes when executing a computer program stored in a memory.
A fourth aspect of the present disclosure provides a readable storage medium having a computer program stored thereon, the readable storage medium comprising: the computer program when executed by a processor implements the steps of the method according to any of the previous solutions.
One or more technical solutions provided by the embodiments of the present disclosure have at least the following effects or advantages:
by adopting the technical scheme provided by the disclosure, the memory overhead information of each module in the application program is monitored; determining the memory optimization priority of each module based on the memory overhead information of each module; and performing memory release based on the memory optimization priority of each module. Compared with the prior art, in the embodiment of the disclosure, the memory optimization priority of each module can be determined by monitoring the memory overhead information of each module in the running process of the application program, so that the memory release is performed based on the memory optimization priority, the problems of collapse, blockage, scalding and the like of the APP can be reduced, and the user experience is improved.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present disclosure and together with the description, serve to explain the principles of the disclosure.
In order to more clearly illustrate the embodiments or technical solutions in the prior art of the present disclosure, the drawings used in the description of the embodiments or prior art will be briefly described below, and it is obvious for those skilled in the art that other drawings can be obtained according to the drawings without inventive exercise.
Fig. 1 is a flowchart of a method for memory optimization according to the present disclosure;
FIG. 2 is a flow chart of another method of memory optimization provided by the present disclosure;
fig. 3 is a block diagram of a memory optimization apparatus provided in the present disclosure;
fig. 4 is a schematic diagram of a computer device provided in the present disclosure.
Detailed Description
In order that the above objects, features and advantages of the present disclosure may be more clearly understood, aspects of the present disclosure will be further described below. It should be noted that the embodiments and features of the embodiments of the present disclosure may be combined with each other without conflict.
In the following description, numerous specific details are set forth in order to provide a thorough understanding of the present disclosure, but the present disclosure may be practiced in other ways than those described herein; it is to be understood that the embodiments disclosed in the specification are only a few embodiments of the present disclosure, and not all embodiments.
The embodiment of the disclosure is based on a memory management plug-in, and is used for potentially installing the memory management plug-in of an APP when a user installs the APP at a user terminal, the plug-in cannot appear in a mobile phone interface and can be bound with the APP, the user is noninductive in the whole installation process, and the memory management plug-in and the APP are unloaded simultaneously when the plug-in is unloaded, so that the running safety of the APP is ensured. The user terminal is any electronic device operable by a user, and may be a mobile handheld device such as a smart phone and a tablet computer, or a stationary electronic device such as a desktop computer and a smart television. It should be understood that the application scenario of the method of the present application may be a mobile phone, and may also be a car machine. The application scenarios of the method of the present application are only some examples or embodiments of the present application, and it is obvious for those skilled in the art that the present application can also be applied to other similar scenarios without creative efforts. In order to make the description more clear, the embodiments of the present disclosure take a handheld device as an example to describe a method, an apparatus, and a computer storage medium for optimizing a memory.
In order to facilitate understanding of the technical solutions of the present disclosure, first, the professional techniques related to the present disclosure are explained:
cloud: the cloud is a software platform adopting an Application Virtualization technology (Application Virtualization), and integrates various functions of software searching, downloading, using, managing, backing up and the like.
Thermal repair (hotfix): and a code needing to be updated is configured in the server in advance, the code is pushed from the server to the client to be updated, and the client can update the software without reinstallation.
Fig. 1 is a flowchart of a method for memory optimization.
With reference to fig. 1, at least one embodiment of the present disclosure provides a method for optimizing a memory, which includes the following four steps 101 to 103:
101: and monitoring memory overhead information of each module in the application program. In this embodiment, the application may include a plurality of functional modules, such as a vehicle control-related module, a community module, and the like. In the using process of the application program, the size of the memory used by each module included in the application program is different, and therefore, in this embodiment, the memory overhead information of each module in the application program is monitored.
102: and determining the memory optimization priority of each module based on the memory overhead information of each module.
In this embodiment, the memory optimization priorities of the modules include: the module with larger memory overhead and longer unused time > the module with larger memory overhead > all the modules except the currently used module > the longer unused function of the currently used module.
Specifically, in the running process of the APP, the unused time of each module is sequenced, the memory overhead is sequenced, according to the used time of the modules and the size of the memory, each module is divided into a module with larger memory overhead and unused for a longer time, a module without used for a longer time, a module with larger memory overhead, all modules except the currently used module and a longer unused function of the currently used module, and the memory optimization priority of each module is sequentially decreased.
103: and performing memory release based on the memory optimization priority of each module.
In this embodiment, the performing memory release based on the memory optimization priority of each module includes: and sequentially releasing the memories based on the sequence of the memory optimization priorities from high to low until the residual memory capacity of the application program after the memory is released is greater than the residual memory threshold, and stopping the memory release.
Specifically, for example, if the first module is a module with a large memory overhead and not used for a long time, the second module is a module without used for a long time, the third module is a module with a large memory overhead, the fourth module is all modules except the currently used module, and the fifth module is a function of the currently used module not used for a long time, the memory optimization priority is that the first module > the second module > the third module > the fourth module > the fifth module, and in the releasing process, if the remaining memory capacity of the APP is greater than 30 mx 20% — 6M, the memory release is stopped. For example, in the memory release process, the first module is released first, whether the remaining memory capacity of the APP at the time is greater than 6M or not is judged, and if the remaining memory capacity of the APP at the time is greater than 6M, the memory release is stopped; if the remaining memory capacity of the APP at the moment is smaller than 6M, releasing the second module, and judging whether the remaining memory capacity of the APP at the moment is larger than 6M, if so, stopping memory release, and if so, releasing the third module; and so on.
This is disclosed through the definite to memory optimization priority, can effectively reduce the influence to using the module at present, under the circumstances that guarantees that using the module at present not influenced, optimizes APP's memory, promotes APP's operation flow field, improves user's experience.
In some embodiments, prior to step 102, the method may further include 1011 and 1012:
1011: and acquiring the maximum used memory of the application program. The maximum used memory is the memory capacity applied by the application program, or the residual memory capacity of the equipment; wherein the application is installed in the device; the remaining memory capacity of the device is calculated based on the total memory capacity of the device and the allocated memory capacity of the device.
Specifically, in the embodiment of the present disclosure, after a user opens an APP, a memory management plug-in obtains basic information of a mobile phone, including model information, memory information, system version information, and the like, where the model and the system version of the mobile phone are only used in a subsequent APP optimization process, where the obtained memory information is a maximum used memory of the APP, where the maximum used memory is a memory capacity applied by the APP, or a remaining memory capacity of the device; wherein the APP is installed in the device; the remaining memory capacity of the device is calculated based on the total memory capacity of the device and the allocated memory capacity of the device. For example, in actual application, memory with different sizes may be allocated to the APP according to actual needs or APP requests, where if the mobile phone memory is 256M, and the current memory used by other APPs is 156M, the remaining memory is 100M, and the allocated APP-used memory 50M is the maximum used memory of the APP obtained at this time. According to the obtained whole memory condition of the APP, the memory management plug-in can monitor the memory overhead information of each module in the APP in real time.
1012: judging whether to optimize the memory or not based on the maximum used memory and the memory overhead information; and if the memory optimization is carried out, determining the priority of the memory optimization based on the memory overhead information.
In this embodiment, determining whether to perform memory optimization based on the maximum used memory and the memory overhead information includes: determining a memory residual threshold value for optimizing the memory based on the maximum used memory and the memory overhead information of each module; after determining the residual memory threshold, monitoring memory overhead information of each module in real time to obtain the total memory overhead of the application program after determining the residual memory threshold; calculating the residual memory capacity of the application program based on the total memory overhead; and determining to perform memory optimization after the residual memory capacity of the application program is less than or equal to the residual memory threshold.
Determining a memory remaining threshold for memory optimization based on the maximum used memory and the memory overhead information of each module comprises: determining the residual memory capacity of the application program based on the maximum used memory and the memory overhead information of each module; and determining a memory remaining threshold for memory optimization based on the remaining memory capacity of the application program.
The memory residual threshold is a preset multiple of the residual memory capacity of the application program; wherein the preset multiple is more than 0 and less than 1.
Specifically, in combination with the memory usage of the APP, a preset multiple of memory optimization of the APP is set to be 20%, for example, the maximum used memory allocated to the APP is 50M, it is assumed that there are 5 modules of the APP, a first module uses a 5M memory, a second module uses a 4M memory, a third module uses a 6M memory, a fourth module uses a 3M memory, a fifth module uses a 2M memory, and a memory used by all the modules together is 20M, the remaining memory capacity of the APP is 30M, a memory remaining threshold of the APP is set to be 30 mx 20% ═ 6M, at this time, the APP continues to operate, the memory overhead is gradually increased, when the total overhead of the APP memory is 24M, that is, when the remaining memory capacity is 6M, the memory remaining threshold is equal to the memory remaining threshold, and memory optimization is determined. Fig. 2 is a flowchart of another memory optimization method provided in the embodiments of the present disclosure.
Referring to fig. 2, in this embodiment, the method for optimizing a memory includes steps 201, 2011, 2012, 202, and 203, where "determining a priority for optimizing a memory based on memory overhead information" in steps 201 and 2012 and step 203 are respectively the same as steps 101, 102, and 103 in fig. 1, and are not repeated here to avoid repetition.
In this embodiment, the difference from fig. 1 is that after the memory release is stopped in step 203, the method of this embodiment further includes:
in the running process of the application program, repeatedly executing:
201: monitoring memory overhead information of each module in an application program;
2011: acquiring the maximum used memory of the application program; the maximum used memory of the application program is the residual memory capacity of the application program after the memory is released;
2012: judging whether to optimize the memory or not based on the maximum used memory and the memory overhead information; if the memory optimization is carried out, determining the priority of the memory optimization based on the memory overhead information;
202: determining the memory optimization priority of each module based on the memory overhead information of each module;
203: and performing memory release based on the memory optimization priority of each module.
Specifically, memories of different sizes are allocated to the APPs, for example, if the memory of the mobile phone is 256M, and the memory used by other APPs is 156M, the remaining memory is 100M, and the allocated memory used by the APP 50M is the maximum used memory of the APP obtained at this time. Supposing that the maximum used memory of the APP is 50M, the modules of the APP share 20M of memory capacity, and the residual memory capacity is 30M; the method comprises the following steps that (1) as the APP continues to operate, the residual memory capacity is gradually reduced, when the residual memory capacity is 30M multiplied by 20 percent to 6M, memory optimization is carried out, and if the released memory capacity is 14M, the total residual memory capacity is 20M; the APP continues to operate, and when the residual memory capacity is 20M multiplied by 20 percent to 4M, memory optimization is carried out again; and so on. And when the memory is optimized every time, the memory use conditions of the APP modules are subjected to priority ranking, and the memory use conditions are released from high to low according to the priority until the total remaining memory capacity is larger than the memory remaining threshold.
In this embodiment, the method for optimizing the memory may further include the following steps not shown in fig. 2:
204: recording module information corresponding to the memory release while the memory release is carried out;
205: and uploading the module information corresponding to the memory release to the cloud.
Specifically, when the memory is released, the memory use condition of each module in the APP is recorded, the memory release optimization priority of each module, the basic information of the device includes a model, a system version, and the like, and the execution condition of the release mechanism includes a memory release process, a memory release result, and the like; the text data is generated through the memory management plug-in, and is uploaded to the cloud, the later-stage APP can position the problem according to the text data report generated by the memory management plug-in, the problem is positioned manually at the moment, the APP is only responsible for uploading the text data, and the later-stage developer can conveniently utilize the text data to optimize the APP. Later stage development personnel can pass through the high in the clouds storage with APP optimization scheme, and this optimization scheme can be dynamically updated to the memory management plug-in for memory management plug-in more accurate tracking, and make things convenient for the development personnel to solve the problem.
Specifically, the memory management plug-in generates a corresponding text data report according to the operational data of the APP, and the text data report is uploaded to the cloud regularly every day; the cloud end can also manually call the text data report of the memory management plug-in, and the log is sent back to the cloud end by sending an instruction to the memory management plug-in.
This is disclosed according to the memory condition of memory management plug-in board real time monitoring whole APP, can force the release to fall the great module of APP memory cost, ensures that whole APP's memory distribution is reasonable, does not influence whole APP's experience by the memory of certain module, and the release memory is not the perception to the user, only can will use the function but the module that the memory did not in time release carries out memory release optimization. If the user uses the function of the vehicle control related module, but the user uses the community module before, and the memory of the community module is not released in time, the previous memory of the community module can be released in time in order to ensure that the current service function experience is optimal; the memory is released, the module with high memory overhead is recorded, the APP data are synchronously sent to the cloud end every day at regular time, problem points are counted, and the APP is convenient to optimize in the later period.
FIG. 3 provides a block diagram of a memory optimized device.
With reference to fig. 3, an embodiment of the present invention further provides a device 300 for optimizing a memory, which specifically includes:
the monitoring module 301 is configured to monitor memory overhead information of each module in the application program. In this embodiment, the application may include a plurality of functional modules, such as a vehicle control-related module, a community module, and the like. In the using process of the application program, the size of the memory used by each module included in the application program is different, and therefore, in this embodiment, the memory overhead information of each module in the application program is monitored.
A determining module 302, configured to determine a memory optimization priority of each module based on the memory overhead information.
In this embodiment, the memory optimization priorities of the modules include: the module with larger memory overhead and longer unused time > the module with larger memory overhead > all the modules except the currently used module > the longer unused function of the currently used module.
Specifically, in the running process of the APP, the unused time of each module is sequenced, the memory overhead is sequenced, according to the used time of the modules and the size of the memory, each module is divided into a module with larger memory overhead and unused for a longer time, a module without used for a longer time, a module with larger memory overhead, all modules except the currently used module and a longer unused function of the currently used module, and the memory optimization priority of each module is sequentially decreased.
A releasing module 303, configured to release the memory based on the memory optimization priority.
In this embodiment, the performing memory release based on the memory optimization priority of each module includes: and sequentially releasing the memories based on the sequence of the memory optimization priorities from high to low until the residual memory capacity of the application program after the memory is released is greater than the residual memory threshold, and stopping the memory release.
Specifically, for example, if the first module is a module with a large memory overhead and not used for a long time, the second module is a module without used for a long time, the third module is a module with a large memory overhead, the fourth module is all modules except the currently used module, and the fifth module is a function of the currently used module not used for a long time, the memory optimization priority is that the first module > the second module > the third module > the fourth module > the fifth module, and in the releasing process, if the remaining memory capacity of the APP is greater than 30 mx 20% — 6M, the memory release is stopped. For example, in the memory release process, the first module is released first, whether the remaining memory capacity of the APP at the time is greater than 6M or not is judged, and if the remaining memory capacity of the APP at the time is greater than 6M, the memory release is stopped; if the remaining memory capacity of the APP at the moment is smaller than 6M, releasing the second module, and judging whether the remaining memory capacity of the APP at the moment is larger than 6M, if so, stopping memory release, and if so, releasing the third module; and so on.
This is disclosed through the definite to memory optimization priority, can effectively reduce the influence to using the module at present, under the circumstances that guarantees that using the module at present not influenced, optimizes APP's memory, promotes APP's operation flow field, improves user's experience.
In some embodiments, the apparatus may further comprise: the device comprises an acquisition module and a judgment module.
And the acquisition module is used for acquiring the maximum used memory of the application program.
The maximum used memory is the memory capacity applied by the application program, or the residual memory capacity of the equipment; wherein the application is installed in the device; the remaining memory capacity of the device is calculated based on the total memory capacity of the device and the allocated memory capacity of the device.
Specifically, in the embodiment of the present disclosure, after a user opens an APP, a memory management plug-in obtains basic information of a mobile phone, including model information, memory information, system version information, and the like, where the model and the system version of the mobile phone are only used in a subsequent APP optimization process, where the obtained memory information is a maximum used memory of the APP, where the maximum used memory is a memory capacity applied by the APP, or a remaining memory capacity of the device; wherein the APP is installed in the device; the remaining memory capacity of the device is calculated based on the total memory capacity of the device and the allocated memory capacity of the device. For example, in actual application, memory with different sizes may be allocated to the APP according to actual needs or APP requests, where if the mobile phone memory is 256M, and the current memory used by other APPs is 156M, the remaining memory is 100M, and the allocated APP-used memory 50M is the maximum used memory of the APP obtained at this time. According to the obtained whole memory condition of the APP, the memory management plug-in can monitor the memory overhead information of each module in the APP in real time.
And the judging module is used for judging whether to optimize the memory or not based on the maximum used memory and the memory overhead information.
In this embodiment, the determining module is specifically configured to: determining a memory residual threshold value for optimizing the memory based on the maximum used memory and the memory overhead information of each module; after determining the residual memory threshold, monitoring memory overhead information of each module in real time to obtain the total memory overhead of the application program after determining the residual memory threshold; calculating the residual memory capacity of the application program based on the total memory overhead; and determining to perform memory optimization after the residual memory capacity of the application program is less than or equal to the residual memory threshold.
Determining a memory remaining threshold for memory optimization based on the maximum used memory and the memory overhead information of each module comprises: determining the residual memory capacity of the application program based on the maximum used memory and the memory overhead information of each module; and determining a memory remaining threshold for memory optimization based on the remaining memory capacity of the application program.
The memory residual threshold is a preset multiple of the residual memory capacity of the application program; wherein the preset multiple is more than 0 and less than 1.
Specifically, in combination with the memory usage of the APP, a preset multiple of memory optimization of the APP is set to be 20%, for example, the maximum used memory allocated to the APP is 50M, it is assumed that there are 5 modules of the APP, a first module uses a 5M memory, a second module uses a 4M memory, a third module uses a 6M memory, a fourth module uses a 3M memory, a fifth module uses a 2M memory, and a memory used by all the modules together is 20M, the remaining memory capacity of the APP is 30M, a memory remaining threshold of the APP is set to be 30 mx 20% ═ 6M, at this time, the APP continues to operate, the memory overhead is gradually increased, when the total overhead of the APP memory is 24M, that is, when the remaining memory capacity is 6M, the memory remaining threshold is equal to the memory remaining threshold, and memory optimization is determined.
A determining module 302, configured to determine, by the determining module, a memory optimization priority of each module based on the memory overhead information after the determining module determines to perform the memory optimization.
In some embodiments, after the releasing module 303 stops releasing the memory, the monitoring module 301 continues to monitor the memory overhead information of each module in the application program in the running process of the application program. The obtaining module obtains the maximum used memory of the application program, where the maximum used memory is the remaining memory capacity of the application program after the releasing module 303 stops the memory release. The judging module judges whether to optimize the memory or not based on the maximum used memory and the memory overhead information. And the determining module determines the memory optimization priority of each module based on the memory overhead information after the judging module determines to optimize the memory. The release module 303 releases the memory based on the memory optimization priority of each module. It should be noted that, after the application program stops running, the monitoring module 301 stops monitoring the memory overhead information of each module in the application program.
Specifically, memories of different sizes are allocated to the APPs, for example, if the memory of the mobile phone is 256M, and the memory used by other APPs is 156M, the remaining memory is 100M, and the allocated memory used by the APP 50M is the maximum used memory of the APP obtained at this time. Supposing that the maximum used memory of the APP is 50M, the modules of the APP share 20M of memory capacity, and the residual memory capacity is 30M; the method comprises the following steps that (1) as the APP continues to operate, the residual memory capacity is gradually reduced, when the residual memory capacity is 30M multiplied by 20 percent to 6M, memory optimization is carried out, and if the released memory capacity is 14M, the total residual memory capacity is 20M; the APP continues to operate, and when the residual memory capacity is 20M multiplied by 20 percent to 4M, memory optimization is carried out again; and so on. And when the memory is optimized every time, the memory use conditions of the APP modules are subjected to priority ranking, and the memory use conditions are released from high to low according to the priority until the total remaining memory capacity is larger than the memory remaining threshold.
In this embodiment, the apparatus may further include the following modules:
and a recording module, configured to record module information corresponding to the memory release while the releasing module 303 releases the memory.
And the uploading module is used for uploading the module information corresponding to the memory release of the releasing module 303 to the cloud.
Specifically, when the memory is released, the memory use condition of each module in the APP is recorded, the memory release optimization priority of each module, the basic information of the device includes a model, a system version, and the like, and the execution condition of the release mechanism includes a memory release process, a memory release result, and the like; the text data is generated through the memory management plug-in, and is uploaded to the cloud, the later-stage APP can position the problem according to the text data report generated by the memory management plug-in, the problem is positioned manually at the moment, the APP is only responsible for uploading the text data, and the later-stage developer can conveniently utilize the text data to optimize the APP. Later stage development personnel can pass through the high in the clouds storage with APP optimization scheme, and this optimization scheme can be dynamically updated to the memory management plug-in for memory management plug-in more accurate tracking, and make things convenient for the development personnel to solve the problem.
Specifically, the memory management plug-in generates a corresponding text data report according to the operational data of the APP, and the text data report is uploaded to the cloud regularly every day; the cloud end can also manually call the text data report of the memory management plug-in, and the log is sent back to the cloud end by sending an instruction to the memory management plug-in.
This is disclosed according to the memory condition of memory management plug-in board real time monitoring whole APP, can force the release to fall the great module of APP memory cost, ensures that whole APP's memory distribution is reasonable, does not influence whole APP's experience by the memory of certain module, and the release memory is not the perception to the user, only can will use the function but the module that the memory did not in time release carries out memory release optimization. If the user uses the function of the vehicle control related module, but the user uses the community module before, and the memory of the community module is not released in time, the previous memory of the community module can be released in time in order to ensure that the current service function experience is optimal; the memory is released, the module with high memory overhead is recorded, the APP data are synchronously sent to the cloud end every day at regular time, problem points are counted, and the APP is convenient to optimize in the later period.
Fig. 4 is a schematic diagram of a computer device according to a third embodiment of the present invention. The computer apparatus of this embodiment includes: a processor 401, a memory 402, and a computer program stored in the memory and operable on the processor, for example, a program corresponding to the method for optimizing memory in the embodiment. The processor implements the steps in the method for memory optimization of the above embodiments when executing the computer program. Alternatively, the processor, when executing the computer program, implements the functions of each module/unit in the memory optimization device of the above embodiments, such as the functions of the monitoring module 301, the determining module 302, and the releasing module 303 shown in fig. 3.
Illustratively, a computer program may be partitioned into one or more modules/units, which are stored in a memory and executed by a processor to implement the present invention. One or more modules/units may be a series of computer program instruction segments capable of performing certain functions, the instruction segments being used to describe the execution of a computer program in a computer device. For example, the computer program may be divided into the functions of the monitoring module 301, the determining module 302 and the releasing module 303, and the specific functions of each module are as follows:
the monitoring module 301 is configured to monitor memory overhead information of each module in the application program. In this embodiment, the application may include a plurality of functional modules, such as a vehicle control-related module, a community module, and the like. In the using process of the application program, the size of the memory used by each module included in the application program is different, and therefore, in this embodiment, the memory overhead information of each module in the application program is monitored.
A determining module 302, configured to determine a memory optimization priority of each module based on the memory overhead information. In this embodiment, the memory optimization priorities of the modules include: the module with larger memory overhead and longer unused time > the module with larger memory overhead > all the modules except the currently used module > the longer unused function of the currently used module.
A releasing module 303, configured to release the memory based on the memory optimization priority. In this embodiment, the performing memory release based on the memory optimization priority of each module includes: and sequentially releasing the memories based on the sequence of the memory optimization priorities from high to low until the residual memory capacity of the application program after the memory is released is greater than the residual memory threshold, and stopping the memory release.
In some embodiments, the apparatus may further comprise: the device comprises an acquisition module and a judgment module.
And the acquisition module is used for acquiring the maximum used memory of the application program.
The maximum used memory is the memory capacity applied by the application program, or the residual memory capacity of the equipment; wherein the application is installed in the device; the remaining memory capacity of the device is calculated based on the total memory capacity of the device and the allocated memory capacity of the device.
And the judging module is used for judging whether to optimize the memory or not based on the maximum used memory and the memory overhead information.
In this embodiment, the determining module is specifically configured to: determining a memory residual threshold value for optimizing the memory based on the maximum used memory and the memory overhead information of each module; after determining the residual memory threshold, monitoring memory overhead information of each module in real time to obtain the total memory overhead of the application program after determining the residual memory threshold; calculating the residual memory capacity of the application program based on the total memory overhead; and determining to perform memory optimization after the residual memory capacity of the application program is less than or equal to the residual memory threshold.
Determining a memory remaining threshold for memory optimization based on the maximum used memory and the memory overhead information of each module comprises: determining the residual memory capacity of the application program based on the maximum used memory and the memory overhead information of each module; and determining a memory remaining threshold for memory optimization based on the remaining memory capacity of the application program.
The memory residual threshold is a preset multiple of the residual memory capacity of the application program; wherein the preset multiple is more than 0 and less than 1.
A determining module 302, configured to determine, by the determining module, a memory optimization priority of each module based on the memory overhead information after the determining module determines to perform the memory optimization.
In some embodiments, after the releasing module 303 stops releasing the memory, the monitoring module 301 continues to monitor the memory overhead information of each module in the application program in the running process of the application program. The obtaining module obtains the maximum used memory of the application program, where the maximum used memory is the remaining memory capacity of the application program after the releasing module 303 stops the memory release. The judging module judges whether to optimize the memory or not based on the maximum used memory and the memory overhead information. And the determining module determines the memory optimization priority of each module based on the memory overhead information after the judging module determines to optimize the memory. The release module 303 releases the memory based on the memory optimization priority of each module. It should be noted that, after the application program stops running, the monitoring module 301 stops monitoring the memory overhead information of each module in the application program.
In this embodiment, the apparatus may further include the following modules:
and a recording module, configured to record module information corresponding to the memory release while the releasing module 303 releases the memory.
And the uploading module is used for uploading the module information corresponding to the memory release of the releasing module 303 to the cloud.
The computer device may be a desktop computer, a notebook, a palm computer, a cloud server, or other computing devices. The computer device may include, but is not limited to, a processor, a memory. It will be appreciated by those skilled in the art that the schematic diagram 4 is merely an example of a computer apparatus and is not intended to limit the computer apparatus, and may include more or less components than those shown, or some components in combination, or different components, for example, the computer apparatus may also include input and output devices, network access devices, buses, etc.
The processor 401 may be a Central Processing Unit (CPU), other general purpose processor, a Digital signal processor (DP), an Application specific Integrated Circuit (AIC), an off-the-shelf Programmable Gate Array (FPGA) or other Programmable logic device, discrete Gate or transistor logic, discrete hardware components, etc. The general purpose processor may be a microprocessor or the processor may be any conventional processor or the like, the processor being the control center of the computer device and the various interfaces and lines connecting the various parts of the overall computer device.
The memory 402 may be used to store computer programs and/or modules that the processor implements by running or executing the computer programs and/or modules stored in the memory, as well as invoking data stored in the memory, various functions of the computer device. The memory may mainly include a storage program area and a storage data area, wherein the storage program area may store an operating system, an application program required by at least one function (such as a sound playing function, an image playing function, etc.), and the like; the storage data area may store data (such as audio data, a phonebook, etc.) created according to the use of the cellular phone, and the like. In addition, the memory may include high speed random access memory, and may also include non-volatile memory, such as a hard disk, a memory, a plug-in hard disk, a smart Memory Card (MC), a secure digital (D) Card, a flash memory Card (Flah Card), at least one magnetic disk storage device, a flash memory device, or other volatile solid state storage device.
The computer program can be divided into the functions of the monitoring module 301, the determining module 302 and the releasing module 303, and the specific functions of each module are as follows:
the monitoring module 301 is configured to monitor memory overhead information of each module in the application program. In this embodiment, the application may include a plurality of functional modules, such as a vehicle control-related module, a community module, and the like. In the using process of the application program, the size of the memory used by each module included in the application program is different, and therefore, in this embodiment, the memory overhead information of each module in the application program is monitored.
A determining module 302, configured to determine a memory optimization priority of each module based on the memory overhead information. In this embodiment, the memory optimization priorities of the modules include: the module with larger memory overhead and longer unused time > the module with larger memory overhead > all the modules except the currently used module > the longer unused function of the currently used module.
A releasing module 303, configured to release the memory based on the memory optimization priority. In this embodiment, the performing memory release based on the memory optimization priority of each module includes: and sequentially releasing the memories based on the sequence of the memory optimization priorities from high to low until the residual memory capacity of the application program after the memory is released is greater than the residual memory threshold, and stopping the memory release.
In some embodiments, the apparatus may further comprise: the device comprises an acquisition module and a judgment module.
And the acquisition module is used for acquiring the maximum used memory of the application program.
The maximum used memory is the memory capacity applied by the application program, or the residual memory capacity of the equipment; wherein the application is installed in the device; the remaining memory capacity of the device is calculated based on the total memory capacity of the device and the allocated memory capacity of the device.
And the judging module is used for judging whether to optimize the memory or not based on the maximum used memory and the memory overhead information.
In this embodiment, the determining module is specifically configured to: determining a memory residual threshold value for optimizing the memory based on the maximum used memory and the memory overhead information of each module; after determining the residual memory threshold, monitoring memory overhead information of each module in real time to obtain the total memory overhead of the application program after determining the residual memory threshold; calculating the residual memory capacity of the application program based on the total memory overhead; and determining to perform memory optimization after the residual memory capacity of the application program is less than or equal to the residual memory threshold.
Determining a memory remaining threshold for memory optimization based on the maximum used memory and the memory overhead information of each module comprises: determining the residual memory capacity of the application program based on the maximum used memory and the memory overhead information of each module; and determining a memory remaining threshold for memory optimization based on the remaining memory capacity of the application program.
The memory residual threshold is a preset multiple of the residual memory capacity of the application program; wherein the preset multiple is more than 0 and less than 1.
A determining module 302, configured to determine, by the determining module, a memory optimization priority of each module based on the memory overhead information after the determining module determines to perform the memory optimization.
In some embodiments, after the releasing module 303 stops releasing the memory, the monitoring module 301 continues to monitor the memory overhead information of each module in the application program in the running process of the application program. The obtaining module obtains the maximum used memory of the application program, where the maximum used memory is the remaining memory capacity of the application program after the releasing module 303 stops the memory release. The judging module judges whether to optimize the memory or not based on the maximum used memory and the memory overhead information. And the determining module determines the memory optimization priority of each module based on the memory overhead information after the judging module determines to optimize the memory. The release module 303 releases the memory based on the memory optimization priority of each module. It should be noted that, after the application program stops running, the monitoring module 301 stops monitoring the memory overhead information of each module in the application program.
In this embodiment, the apparatus may further include the following modules:
and a recording module, configured to record module information corresponding to the memory release while the releasing module 303 releases the memory.
And the uploading module is used for uploading the module information corresponding to the memory release of the releasing module 303 to the cloud.
All or part of the flow of the method of the embodiments may be implemented by a computer program, which may be stored in a computer-readable storage medium and executed by a processor, to implement the steps of the embodiments of the method. Wherein the computer program comprises computer program code, which may be in the form of source code, object code, an executable file or some intermediate form, etc. The computer readable medium may include: any entity or device capable of carrying the computer program code, recording medium, usb disk, removable hard disk, magnetic disk, optical disk, computer Memory, Read-Only Memory (ROM), Random Access Memory (RAM), electrical carrier wave signals, telecommunications signals, software distribution medium, and the like. It should be noted that the computer readable medium may contain other components which may be suitably increased or decreased as required by legislation and patent practice in jurisdictions, for example, in some jurisdictions, in accordance with legislation and patent practice, the computer readable medium does not include electrical carrier signals and telecommunications signals.
It is noted that, in this document, relational terms such as "first" and "second," and the like, may be used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Also, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising an … …" does not exclude the presence of other identical elements in a process, method, article, or apparatus that comprises the element.
The foregoing are merely exemplary embodiments of the present disclosure, which enable those skilled in the art to understand or practice the present disclosure. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the spirit or scope of the disclosure. Thus, the present disclosure is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.
Claims (15)
1. A method for memory optimization, the method comprising:
monitoring memory overhead information of each module in an application program;
determining the memory optimization priority of each module based on the memory overhead information;
and releasing the memory based on the memory optimization priority.
2. The method of claim 1, wherein prior to determining the memory optimization priority for each module based on the memory overhead information, the method further comprises:
acquiring the maximum used memory of the application program;
judging whether to optimize the memory or not based on the maximum used memory and the memory overhead information;
and if the memory optimization is carried out, executing the memory optimization priority based on the memory overhead information.
3. The method according to claim 2, wherein the maximum used memory is a memory capacity requested by the application program, or a remaining memory capacity of the device;
wherein the application is installed in the device; the remaining memory capacity of the device is calculated based on the total memory capacity of the device and the allocated memory capacity of the device.
4. The method of claim 2, wherein the determining whether to perform memory optimization based on the maximum used memory and the memory overhead information comprises:
determining a memory surplus threshold for optimizing the memory based on the maximum used memory and the memory overhead information;
after the memory residual threshold value is determined, monitoring memory overhead information of each module in real time to obtain the total memory overhead of the application program after the memory residual threshold value is determined;
calculating the residual memory capacity of the application program based on the total memory overhead;
and determining to perform memory optimization after the residual memory capacity of the application program is less than or equal to the residual memory threshold.
5. The method of claim 4, wherein determining a memory remaining threshold for memory optimization based on the maximum used memory and the memory overhead information comprises:
determining the residual memory capacity of the application program based on the maximum used memory and the memory overhead information;
and determining a memory remaining threshold for memory optimization based on the remaining memory capacity of the application program.
6. The method of claim 4, wherein the memory remaining threshold is a preset multiple of the remaining memory capacity of the application; wherein the preset multiple is greater than 0 and less than 1.
7. The method of claim 1, wherein the memory optimization priority of each module comprises:
the module with larger memory overhead and longer unused time > the module with larger memory overhead > all the modules except the currently used module > the longer unused function of the currently used module.
8. The method of claim 1, wherein the performing a memory release based on the memory optimization priority comprises:
and sequentially releasing the memories based on the sequence of the memory optimization priorities from high to low until the residual memory capacity of the application program is greater than the residual memory threshold value after the memories are released, and stopping the memory release.
9. The method of claim 1, further comprising:
and recording module information corresponding to the memory release while the memory release is carried out.
10. The method of claim 9, further comprising:
and uploading the module information corresponding to the memory release to a cloud.
11. An apparatus for memory optimization, the apparatus comprising:
the monitoring module is used for monitoring the memory overhead information of each module in the application program;
the determining module is used for determining the memory optimization priority of each module based on the memory overhead information;
and the releasing module is used for releasing the memory based on the memory optimization priority.
12. The apparatus of claim 11, further comprising:
the acquisition module is used for acquiring the maximum used memory of the application program;
the judging module is used for judging whether to optimize the memory or not based on the maximum used memory and the memory overhead information;
and the determining module is used for determining the memory optimization priority of each module based on the memory overhead information after the judging module determines to perform the memory optimization.
13. The apparatus of claim 12, wherein the determining module is specifically configured to:
determining a memory residual threshold value for optimizing the memory based on the maximum used memory and the memory overhead information of each module;
after the memory residual threshold value is determined, monitoring memory overhead information of each module in real time to obtain the total memory overhead of the application program after the memory residual threshold value is determined; calculating the residual memory capacity of the application program based on the total memory overhead;
and determining to perform memory optimization after the residual memory capacity of the application program is less than or equal to the residual memory threshold.
14. A computer device, comprising: the computer arrangement comprises a processor for implementing the steps of the method according to any one of claims 1-10 when executing a computer program stored in a memory.
15. A readable storage medium having a computer program stored thereon, comprising: the computer program realizing the steps of the method according to any one of claims 1-10 when executed by a processor.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110326903.9A CN113076193B (en) | 2021-03-26 | 2021-03-26 | Memory optimization method, device and computer readable storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110326903.9A CN113076193B (en) | 2021-03-26 | 2021-03-26 | Memory optimization method, device and computer readable storage medium |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113076193A true CN113076193A (en) | 2021-07-06 |
CN113076193B CN113076193B (en) | 2024-03-26 |
Family
ID=76610523
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110326903.9A Active CN113076193B (en) | 2021-03-26 | 2021-03-26 | Memory optimization method, device and computer readable storage medium |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113076193B (en) |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101847127A (en) * | 2010-06-18 | 2010-09-29 | 福建星网锐捷网络有限公司 | Memory management method and device |
CN103365721A (en) * | 2012-04-06 | 2013-10-23 | 腾讯科技(深圳)有限公司 | Method for regulating internal storage of mobile terminal and mobile terminal |
CN103645955A (en) * | 2013-12-16 | 2014-03-19 | 百度在线网络技术(北京)有限公司 | Running management method and device for application program |
CN105975348A (en) * | 2016-05-31 | 2016-09-28 | 宇龙计算机通信科技(深圳)有限公司 | Memory optimization method, optimization device and terminal |
CN107608823A (en) * | 2017-08-25 | 2018-01-19 | 维沃移动通信有限公司 | A kind of photo processing method and mobile terminal |
US20180089105A1 (en) * | 2016-09-29 | 2018-03-29 | International Business Machines Corporation | Memory optimization by phase-dependent data residency |
CN109324883A (en) * | 2018-08-29 | 2019-02-12 | 烽火通信科技股份有限公司 | The EMS memory management process and system of intelligent terminal |
CN109669877A (en) * | 2018-12-11 | 2019-04-23 | 腾讯科技(深圳)有限公司 | EMS memory management process, device, terminal and storage medium |
CN109726069A (en) * | 2018-05-07 | 2019-05-07 | 平安普惠企业管理有限公司 | H5 page EMS memory occupation monitoring method, device, equipment and readable storage medium storing program for executing |
CN110221921A (en) * | 2019-06-13 | 2019-09-10 | 深圳Tcl新技术有限公司 | EMS memory management process, terminal and computer readable storage medium |
CN110515721A (en) * | 2018-05-22 | 2019-11-29 | 中兴通讯股份有限公司 | A kind of application management method, device, terminal and computer storage medium |
WO2019238124A1 (en) * | 2018-06-15 | 2019-12-19 | 奇酷互联网络科技(深圳)有限公司 | Memory management method and apparatus, readable storage medium and terminal |
US20200027519A1 (en) * | 2018-07-23 | 2020-01-23 | SK Hynix Memory Solutions America Inc. | Memory system and method for optimizing read threshold |
-
2021
- 2021-03-26 CN CN202110326903.9A patent/CN113076193B/en active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101847127A (en) * | 2010-06-18 | 2010-09-29 | 福建星网锐捷网络有限公司 | Memory management method and device |
CN103365721A (en) * | 2012-04-06 | 2013-10-23 | 腾讯科技(深圳)有限公司 | Method for regulating internal storage of mobile terminal and mobile terminal |
CN103645955A (en) * | 2013-12-16 | 2014-03-19 | 百度在线网络技术(北京)有限公司 | Running management method and device for application program |
CN105975348A (en) * | 2016-05-31 | 2016-09-28 | 宇龙计算机通信科技(深圳)有限公司 | Memory optimization method, optimization device and terminal |
US20180089105A1 (en) * | 2016-09-29 | 2018-03-29 | International Business Machines Corporation | Memory optimization by phase-dependent data residency |
CN107608823A (en) * | 2017-08-25 | 2018-01-19 | 维沃移动通信有限公司 | A kind of photo processing method and mobile terminal |
CN109726069A (en) * | 2018-05-07 | 2019-05-07 | 平安普惠企业管理有限公司 | H5 page EMS memory occupation monitoring method, device, equipment and readable storage medium storing program for executing |
CN110515721A (en) * | 2018-05-22 | 2019-11-29 | 中兴通讯股份有限公司 | A kind of application management method, device, terminal and computer storage medium |
WO2019238124A1 (en) * | 2018-06-15 | 2019-12-19 | 奇酷互联网络科技(深圳)有限公司 | Memory management method and apparatus, readable storage medium and terminal |
US20200027519A1 (en) * | 2018-07-23 | 2020-01-23 | SK Hynix Memory Solutions America Inc. | Memory system and method for optimizing read threshold |
CN109324883A (en) * | 2018-08-29 | 2019-02-12 | 烽火通信科技股份有限公司 | The EMS memory management process and system of intelligent terminal |
CN109669877A (en) * | 2018-12-11 | 2019-04-23 | 腾讯科技(深圳)有限公司 | EMS memory management process, device, terminal and storage medium |
CN110221921A (en) * | 2019-06-13 | 2019-09-10 | 深圳Tcl新技术有限公司 | EMS memory management process, terminal and computer readable storage medium |
Non-Patent Citations (3)
Title |
---|
WEIMING ZHAO 等: "Dynamic memory balancing for virtual machines", 《ACM SIGOPS OPERATING SYSTEMS REVIEW》, vol. 43, no. 3, pages 37 - 47, XP058362601, DOI: 10.1145/1618525.1618530 * |
何金鑫: "网络硬盘存储优化方法的设计与实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》, no. 1, pages 137 - 29 * |
胡振宇 等: "基于程序分析的大数据应用内存预估方法", 《中国科学:信息科学》, vol. 50, no. 8, pages 1178 - 1196 * |
Also Published As
Publication number | Publication date |
---|---|
CN113076193B (en) | 2024-03-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9575745B1 (en) | Immediately launching applications | |
US8583783B1 (en) | Method and system for adaptive recovery of heap memory | |
CN105656810B (en) | Method and device for updating application program | |
CN110933178B (en) | Method for adjusting node configuration in cluster system and server | |
CN107957888B (en) | Application program gray scale upgrading method and device | |
CN103440172A (en) | Resource management method and terminal device | |
JP2017538181A (en) | File rating | |
US20180157557A1 (en) | Determining reboot time after system update | |
WO2014153311A1 (en) | Automatic version management | |
CN105786539B (en) | File downloading method and device | |
CN102736954A (en) | Addressing system degradation by application disabling | |
CN110888658A (en) | Dynamic method and device for functional module in application program and storage medium | |
CN110737548B (en) | Data request method and server | |
CN113760543A (en) | Resource management method and device, electronic equipment and computer readable storage medium | |
US20220206836A1 (en) | Method and Apparatus for Processing Virtual Machine Migration, Method and Apparatus for Generating Virtual Machine Migration Strategy, Device and Storage Medium | |
CN110347546B (en) | Dynamic adjustment method, device, medium and electronic equipment for monitoring task | |
CN113076193A (en) | Memory optimization method and device and computer readable storage medium | |
CN108920945B (en) | root authority obtaining and deleting method and device, terminal equipment and storage medium | |
CN112416384A (en) | Software upgrading method and device and computer equipment | |
CN108322542B (en) | Data updating method, system, device and computer readable storage medium | |
CN104899023A (en) | Data statistic method and device | |
CN113885969A (en) | Embedded device, embedded software loading method and storage medium | |
CN110209548B (en) | Service control method, system, electronic device and computer readable storage medium | |
CN108845845B (en) | Shortcut key creation method and device, electronic equipment and storage medium | |
CN112148470A (en) | Parameter synchronization method, computer device and readable storage medium |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |