US20150227388A1 - Method and device for handling optimization processes - Google Patents
Method and device for handling optimization processes Download PDFInfo
- Publication number
- US20150227388A1 US20150227388A1 US14/699,236 US201514699236A US2015227388A1 US 20150227388 A1 US20150227388 A1 US 20150227388A1 US 201514699236 A US201514699236 A US 201514699236A US 2015227388 A1 US2015227388 A1 US 2015227388A1
- Authority
- US
- United States
- Prior art keywords
- default
- category
- default category
- handling
- optimization
- 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
- 238000000034 method Methods 0.000 title claims abstract description 655
- 230000008569 process Effects 0.000 title claims abstract description 616
- 238000005457 optimization Methods 0.000 title claims abstract description 91
- 239000013598 vector Substances 0.000 claims description 10
- 238000004891 communication Methods 0.000 claims description 4
- 238000005516 engineering process Methods 0.000 abstract description 2
- 230000007812 deficiency Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 8
- ZXQYGBMAQZUVMI-GCMPRSNUSA-N gamma-cyhalothrin Chemical compound CC1(C)[C@@H](\C=C(/Cl)C(F)(F)F)[C@H]1C(=O)O[C@H](C#N)C1=CC=CC(OC=2C=CC=CC=2)=C1 ZXQYGBMAQZUVMI-GCMPRSNUSA-N 0.000 description 8
- 241000700605 Viruses Species 0.000 description 5
- 238000001514 detection method Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000006467 substitution reaction Methods 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/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4812—Task transfer initiation or dispatching by interrupt, e.g. masked
- G06F9/4818—Priority circuits therefor
-
- 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/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2111/00—Details relating to CAD techniques
- G06F2111/06—Multi-objective optimisation, e.g. Pareto optimisation using simulated annealing [SA], ant colony algorithms or genetic algorithms [GA]
Definitions
- the present disclosure relates to computer technologies, and more particularly, to a method and device for handling an optimization process.
- a terminal used by a user may not execute only one task most of the time.
- a terminal used by a user e.g., a computer
- a downloading service may also be executed.
- security software may be updated or may execute a scanning task simultaneously, and so on.
- Each task may correspond to one process.
- the computer may handle multiple processes simultaneously.
- Examples of the present disclosure provide a method and device for handling an optimization process.
- the technical solutions may be as follows.
- a method for handling an optimization process includes: determining at least one process being executed; identifying a default category process matching with each process in the at least one process, based on a default process category list, wherein the default process category list includes a default category process and feature information of the default category process; performing optimization handling on the at least one process, based on the feature information of the default category process matching with each process in the at least one process.
- a device for handling an optimization process which includes a determining module, an identifying module and an optimizing module, wherein the determining module is to determine at least one process being executed; the identifying module is to identify a default category process matching with each process in the at least one process, based on a default process category list, wherein the default process category list includes a default category process and feature information of the default category process; and the optimizing module is to perform optimization handling on the at least one process, based on the feature information of the default category process matching with each process in the at least one process.
- another device for handling an optimization process which includes a memory, and a processor in communication with the memory, wherein the memory stores a determining instruction, an identifying instruction and an optimizing instruction, which are executable by the processor, the determining instruction indicates to determine at least one process being executed; the identifying instruction indicates to identify a default category process matching with each process in the at least one process, based on a default process category list, wherein the default process category list includes a default category process and feature information of the default category process; and the optimizing instruction indicates to perform optimization handling on the at least one process, based on the feature information of the default category process matching with each process in the at least one process.
- FIG. 1 is a flowchart illustrating a method for handling an optimization process, in accordance with a first example of the present disclosure.
- FIG. 2 is a flowchart illustrating a method for handling an optimization process, in accordance with a second example of the present disclosure.
- FIG. 3 is a schematic diagram illustrating structure of a device for handling an optimization process, in accordance with a third example of the present disclosure.
- FIG. 4 is a schematic diagram illustrating structure of a device for handling an optimization process, in accordance with a fourth example of the present disclosure.
- FIG. 5 is a schematic diagram illustrating structure of a device for handling an optimization process, in accordance with a fifth example of the present disclosure.
- FIG. 6 is a schematic diagram illustrating structure of a device for handling an optimization process, in accordance with a sixth example of the present disclosure.
- the inventor finds that at least the following problems exist in the prior art.
- the multiple processes may simultaneously occupy network bandwidth, and/or, network resources, and the terminal may not simultaneously handle the multiple tasks effectively.
- handling efficiency of the terminal may be lower.
- security software may be updated or may execute a scanning task, and so on. Since a large number of computer resources may be consumed, when the security software is updated, or the security software is scanning a virus, which will affect webpage browsing, or online video viewing, or executions of other tasks performed by the computer. Thus, handling efficiency of the computer may be reduced.
- the present disclosure is described by referring to examples.
- numerous specific details are set forth in order to provide a thorough understanding of the present disclosure. It will be readily apparent however, that the present disclosure may be practiced without limitation to these specific details. In other instances, some methods and structures have not been described in detail so as not to unnecessarily obscure the present disclosure.
- the term “includes” means includes but not limited to, the term “including” means including but not limited to.
- the term “based on” means based at least in part on.
- the terms “a” and “an” are intended to denote at least one of a particular element.
- FIG. 1 is a flowchart illustrating a method for handling an optimization process, in accordance with a first example of the present disclosure. As shown in FIG. 1 , the method for handling the optimization process provided by the example may include the following blocks.
- the default process category list in the example may include a default category process and feature information of the default category process.
- the default process category list may include a process of one default category and feature information of the default category process, or include processes of multiple default categories, and feature information of each default category process.
- the each process in the at least one process may be understood effectively, so as to perform an optimization handling on the at least one process. For example, some processes may be handled, while the other processes may be suspended.
- the method for handling an optimization process provided by the example may be applied to a device, which is to handle an optimization process.
- the device for handling the optimization process may be set in a terminal, e.g., a fixed terminal, such as computer, or a mobile terminal, such as a mobile phone or a tablet Personal Computer (PC).
- a terminal e.g., a fixed terminal, such as computer, or a mobile terminal, such as a mobile phone or a tablet Personal Computer (PC).
- a terminal e.g., a fixed terminal, such as computer, or a mobile terminal, such as a mobile phone or a tablet Personal Computer (PC).
- PC Personal Computer
- a default category process matching with each process of the at least one process may be identified, based on the default process category list, in which the default process category list may include a default category process and feature information of the default category process; an optimization handling may be performed on the at least one process, based on the feature information of the default category process matching with each process of the at least one process.
- the optimization handling may be performed on at least one process, based on the feature information identified by the process category matching with each process of the at least one process.
- no optimization handling may be performed on multiple processes, during the procedure of a terminal simultaneously executing the multiple processes, and when the terminal handles the tasks corresponding to the multiple processes, handling efficiency of the terminal may be lower.
- the terminal handling efficiency may be effectively improved, and usage experience of the terminal user may be enhanced.
- an optimization handling may be performed on processes.
- a user when a user utilizes a computer to browse a webpage or view an online video, operations executed by the security category software, such as updating or scanning, may be stopped. Subsequently, when the computer handles the webpage browsing or the online video viewing of the user, efficiency of the computer may be guaranteed. When browsing the webpage or viewing the online video, experience of the computer user may also be enhanced.
- the block 100 “determine at least one process being executed” in the foregoing example may include the follows. Determine dimension information of each process in the at least one process being executed. That is, in the example, the dimension information employed may include at least one of bandwidth occupancy rate, processor occupancy rate, memory occupancy rate, mouse click frequency, keyboard hit frequency and full screen or not.
- the mouse click frequency and keyboard hit frequency may be represented by an average mouse click rate and an average keyboard hit rate per unit time.
- the default category process in the foregoing example may also be identified by the dimension information of the default category process.
- the dimension information may also include at least one of the bandwidth occupancy rate, the processor occupancy rate, the memory occupancy rate, the mouse click frequency, the keyboard hit frequency and full screen or not.
- the default process category list may be downloaded by a device for handling an optimization process from a cloud server.
- the cloud server may manage the default process category list.
- the corresponding block 101 “identify the default category process matching with each process in the at least one process, based on the default process category list” may include the following blocks.
- three dimensions such as the bandwidth occupancy rate, processor occupancy rate and memory occupancy rate, may be configured as having three levels, i.e., high, intermediate and low, respectively represented by 3, 2 and 1, based on practical requirements.
- “3” may represent the highest bandwidth occupancy rate, or the highest processor occupancy rate, or the highest memory occupancy rate.
- “1” may represent the lowest bandwidth occupancy rate, or the lowest processor occupancy rate, or the lowest memory occupancy rate.
- the two dimensions such as mouse click frequency and keyboard hit frequency, may be respectively configured as having two levels, i.e., high and low, based on practical requirements.
- “2” may represent high mouse click frequency and high keyboard hit frequency.
- “1” may represent low mouse click frequency and low keyboard hit frequency.
- Full screen may be represented by “1”. Not full screen may be represented by “0”.
- the method may rely on parameters, such as a parameter indicating resources occupied by detected processes.
- an existing problem may be as follows. Detected state about resources occupied by a process at a certain time point may be not the normal state. For example, during the process of playing a High Definition (HD) video, when a user clicks the “pause” button, the system resources consumed by the playing program detected at this time point is low, which is obviously inconsistent with the practical conditions.
- a method for detecting multiple times may be employed, to calculate the Euclidean distance between the process detected for multiple times and the default category process, and take an average value of multiple-time detection (such as 100-time detection) as the Euclidean distance between the process and the default category process.
- vector value about each process category may be closer to a user's actual conditions, and the detection may be more accurate.
- the device for handling the optimization process may locally manage the default process category list.
- the process and the default category process when the Euclidean distance between the process and the default category process is smaller than or equal to the preset threshold, it means that the process and the default category process belong to the same category, at this time, it may be determined that the process matches with the default category process. Otherwise, when the Euclidean distance between the process and all of the default category processes in the default process category list is larger than the preset threshold, at this time, the process and all of the default category processes in the default process category list may not belong to the same category. That is, it may be determined that the process doesn't match with each default category process in the default process category list. At this time, the process may be taken as a newly added default category process and added to the default process category list.
- the method may further include the follows: upload the process to a cloud server, such that the cloud server may add the process to the default process category list, and take the process as a newly added default category process.
- the cloud server may manage the default process category list.
- the feature information of the default category process may be determined by the dimension information of the default category process.
- category processes may be distinguished by different applications. The following processes may be included based on applications.
- Processes of online video and downloading software category based on the dimension information of a process in this category, the feature information of an application in this category may be learned as follows: large bandwidth, intermediate consumption of resources, not appropriate to be executed simultaneously with other tasks with a consumption of bandwidth (such as downloading and updating).
- Processes of HD video category based on the dimension information of a process in this category, the feature information of an application in this category may be learned as follows: small bandwidth, a large consumption of resources, not appropriate to be executed simultaneously with other tasks with a large consumption of resources (such as Trojan scanning).
- Processes of a general category application including webpage browsing, document handling: based on the dimension information of a process in this category, the feature information of an application in this category may be learned as follows: small bandwidth, a small consumption of resources, generally compatible with processes of other applications, that is, the processes of other applications may be executed simultaneously.
- block 102 “perform an optimization handling on the at least one process, based on the feature information of the default category process matching with each process in the at least one process” may include the following blocks.
- the feature information of the default category process may refer to bandwidth occupied by the default category process, resources consumed by the default category process, and so on. Based on the feature information about each default category process, the compatibility among each process may be determined. Alternatively, the feature information of a default category process may directly include the compatibility between the default category process and other processes.
- compatibility among each process may be obtained.
- the optimization process may be performed on the at least one process, based on the compatibility of processes and priority of each process. For example, select a process with the highest priority, turn off other processes not compatible with the process of the highest priority, and keep processes compatible with the process of the highest priority.
- the optimization handling on the at least one process may be implemented.
- the optimization handling may be performed on the at least one process, based on the feature information identified by the process category matching with each process in the at least one process.
- the deficiencies in the prior art may be made up effectively. That is, in the prior art, when multiple processes are executed simultaneously by a terminal, no optimization handling may be performed on the multiple processes; subsequently, handling efficiency of tasks corresponding to the multiple processes executed by the terminal may be lower. And then, the terminal handling efficiency may be improved effectively, and usage experience of the terminal user may also be enhanced.
- the optimization process may be performed on processes. For example, when a user utilizes a computer to browse a webpage or view an online video, stop the operations of updating or scanning executed by the security category software, so as to guarantee the efficiency of the computer, when the computer handles the webpage browsing or online video viewing executed by a user. And when browsing the webpage, or viewing the online video, experience of the computer user may also be enhanced.
- FIG. 2 is a flowchart illustrating a method for handling an optimization process, in accordance with the second example of the present disclosure.
- a device for handling an optimization process may be taken as an example.
- An optional example may be provided on the basis of the foregoing example.
- the method for handling the optimization process in the example may include the following blocks.
- a terminal may download a default process category list from a cloud server.
- the default process category list may include a default category process, e.g., one default category process, or two or more default category processes.
- Each default category process may be represented by dimension information, and the dimension information may include at least one of bandwidth occupancy rate, processor occupancy rate, memory occupancy rate, mouse click frequency, keyboard hit frequency, and full screen or not.
- the terminal may determine at least one process being executed.
- Each process may be represented by at least one kind of dimension information, such as the bandwidth occupancy rate, the processor occupancy rate, the memory occupancy rate, the mouse click frequency, the keyboard hit frequency and full screen or not.
- the at least one process being executed by the terminal includes processes, such as webpage browsing, HD video viewing, software downloading, Trojan scanning.
- the process corresponding to webpage browsing may consume fewer resources, and occupy smaller bandwidth, which may generally be compatible with processes of other applications.
- the process of HD video viewing may consume a large number of resources, occupy bigger bandwidth, and may not be appropriate to be executed simultaneously with other tasks consuming a large number of resources (such as Trojan scanning).
- the process corresponding to software downloading may occupy big bandwidth, consume intermediate resources, and may not be appropriate to be executed simultaneously with other tasks consuming bandwidth.
- the process of Trojan scanning may consume a large number of resources, and occupy small bandwidth.
- the terminal may calculate the Euclidean distance between the process and the default category process.
- the terminal may determine whether the Euclidean distance between the process and the default category process is smaller than or equal to a preset threshold. When the Euclidean distance between the process and the default category process is smaller than or equal to the preset threshold, proceed with block 204 ; otherwise, proceed with block 205 .
- the block When implementing the block, specifically speaking, it may be understood to determine whether the Euclidean distance between the process and each default category process in the default process category list is smaller than or equal to the preset threshold. Only if the Euclidean distance between the process and one default category process is smaller than or equal to the preset threshold, it may be determined that the process matches with the default category process. Otherwise, when the Euclidean distance between the process and any default category process in the default process category list is larger than the preset threshold, it may be determined that the process doesn't match with the default category process, thus, proceed with block 204 or 205 .
- the terminal may determine that the process matches with the default category process, and proceed with block 206 .
- the terminal may take the process as a newly added default category process, and proceed with block 206 .
- the process may match with the newly added default category process (that is, the process itself).
- the terminal may upload the process to the cloud server, such that the cloud server may add the process to the default process category list, and take the process as a newly added default category process.
- the terminal may obtain the identifier of the default category process matching with each process in the at least one process, obtain the feature information of the default category process matching with each process, and proceed with block 207 .
- the terminal may determine the mutual compatibility of the at least one process, based on the feature information of the default category process matching with each process in the at least one process, and proceed with block 208 .
- the feature information may include the compatibility among processes, e.g., the process of the HD video isn't compatible with the process of Trojan scanning.
- the priority of the process about the HD video when the priority of the process about the HD video is higher than that about the Trojan scanning, it may firstly turn off the process about the Trojan scanning, and keep the process about the HD video, so as to prevent the terminal from simultaneously executing two tasks each with a large consumption of resources, and guarantee efficiency of the terminal when handling tasks.
- the optimization handling may be performed on the at least one process, based on the feature information identified by the process category matching with each process in the at least one process.
- the deficiencies in the prior art refer to as follows. When multiple processes are executed simultaneously by a terminal, no optimization handling may be performed on the multiple processes. Subsequently, handling efficiency of tasks corresponding to the multiple processes executed by the terminal may be lower. And then, the terminal handling efficiency may be improved effectively, and usage experience of the terminal user may also be enhanced.
- the optimization handling may be performed on processes. For example, when a user utilizes a computer to browse a webpage or view an online video, stop the operations of updating or scanning executed by the security software, so as to guarantee the efficiency of the computer, when the computer handles the webpage browsing or online video viewing executed by a user. And when browsing the webpage, or viewing the online video, experience of the computer user may also be enhanced.
- FIG. 3 is a schematic diagram illustrating structure of a device for handling an optimization process, in accordance with the third example of the present disclosure.
- the device for handling the optimization process provided by the example may specifically include a determining module 10 , an identifying module 11 and an optimizing module 12 .
- the determining module 10 is to determine at least one process being executed.
- the identifying module 11 connects with the determining module 10 .
- the identifying module 11 is to identify a default category process matching with each process in the at least one process, which is determined by the determining module 10 , based on a default process category list.
- the default process category list may include a default category process and feature information of the default category process.
- the optimizing module 12 connects with the identifying module 11 .
- the optimizing module 12 is to perform an optimization handling on the at least one process, based on the feature information of the default category process matching with each process in the at least one process, in which the default category process is identified by the identifying module 11 .
- the device for handling the optimization process provided by the example may employ the foregoing modules to handle the optimization process.
- the implementation mechanism is the same as that of the foregoing related method example. Please refer to descriptions about foregoing related method example, which will not be repeated here.
- the device for handling the optimization process may employ the foregoing modules to implement the following operations. Determine at least one process being executed; identify a default category process matching with each process in the at least one process, based on a default process category list; in which the default process category list may include a default category process and feature information of the default category process; perform an optimization handling on the at least one process, based on the feature information of the default category process matching with each process in the at least one process.
- the optimization handling may be performed on the at least one process, based on the feature information identified by the process category matching with each process in the at least one process.
- the optimization handling may be performed on processes. For example, when a user utilizes a computer to browse a webpage or view an online video, stop the operations of updating or scanning executed by the security category software, so as to guarantee the efficiency of the computer, when the computer handles the webpage browsing or online video viewing executed by a user. And when browsing the webpage, or viewing the online video, experience of the computer user may also be enhanced.
- FIG. 4 is a schematic diagram illustrating structure of a device for handling an optimization process, in accordance with the fourth example of the present disclosure. As shown in FIG. 4 , based on the example illustrated with FIG. 3 , the device for handling the optimization process in the example may further include the follows.
- the determining module 10 is to determine dimension information of each process in the at least one process being executed.
- the dimension information may include at least one of bandwidth occupancy rate, processor occupancy rate, memory occupancy rate, mouse click frequency, keyboard hit frequency and full screen or not.
- the default category process in the default process category list and each process in the at least one process are respectively represented by a vector.
- the identifying module 11 is to calculate the Euclidean distance between the process and default category process, and determine whether the Euclidean distance between the process and the default category process is smaller than or equal to a preset threshold. When determining that the Euclidean distance between the process and the default category process is smaller than or equal to the preset threshold, the identifying module 11 may determine that the process matches with the default category process.
- the device for handling the optimization process in the example may further include an adding module 13 .
- the adding module 13 may connect with the identifying module 11 .
- the identifying module 11 determines that the Euclidean distance between the process and the default category process is larger than the preset threshold
- the adding module 13 is to add the process to the default process category list, and take the process as a newly added default category process.
- the device for handling the optimization process may locally manage the default process category list.
- the device for handling the optimization process may also include an uploading module, which is to upload the process to the cloud server, such that the cloud server may add the process to the default process category list, and take the process as a newly added default category process.
- the optimizing module 12 may determine mutual compatibility of the at least one process, based on the feature information of the default category process matching with each process in the at least one process, and perform an optimization handling on the at least one process, based on the mutual compatibility of the at least one process and the priority of each process in the at least one process.
- the feature information of the default category process may be determined by the dimension information of the default category process.
- the device for handling the optimization process provided by the example may employ the foregoing modules to perform the handling on the optimization process.
- the implementation mechanism is the same as the foregoing related method example. Please refer to descriptions of foregoing related method example, which will not be repeated here.
- the device for handling the optimization process provided by the example may employ the foregoing modules, to perform the optimization handling on the at least one process, based on the feature information identified by the process category matching with each process in the at least one process.
- the deficiencies in the prior art may be made up effectively.
- the deficiencies in the prior art refer to as follows. When multiple processes are executed simultaneously by a terminal, no optimization handling may be performed on the multiple processes. Subsequently, handling efficiency of tasks corresponding to the multiple processes executed by the terminal may be lower. By employing the device provided by the example, the terminal handling efficiency may be improved effectively, and usage experience of the terminal user may also be enhanced.
- the optimization handling may be performed on processes. For example, when a user utilizes a computer to browse a webpage or view an online video, stop the operations of updating or scanning executed by the security category software, so as to guarantee the efficiency of the computer, when the computer handles the webpage browsing or online video viewing executed by a user. And when browsing the webpage, or viewing the online video, experience of the computer user may also be enhanced.
- the device for handling the optimization process in the foregoing example may be set in a terminal side, when implementing.
- FIG. 5 is a schematic diagram illustrating structure of a device for handling an optimization process, in accordance with the fifth example of the present disclosure.
- the device 50 for handling the optimization process may include a memory 501 , a processor 502 in communication with the memory 501 .
- the memory 501 may store a determining instruction 5010 , an identifying instruction 5011 and an optimizing instruction 5012 , which are executable by the processor 502 .
- the determining instruction 5010 indicates to determine at least one process being executed. Based on a default process category list, the identifying instruction 5011 indicates to identify a default category process matching with each process in the at least one process, which is determined based on the determining instruction 5010 .
- the default process category list may include a default category process and feature information of the default category process.
- the optimizing instruction 5012 indicates to perform an optimization handling on the at least one process, based on the feature information of the default category process matching with each process in the at least one process, in which the default category process is identified based on the identifying instruction 5011 .
- the implementation mechanism of the device provided by the example is the same as that of the foregoing related method example. Please refer to descriptions about foregoing related method example, which will not be repeated here.
- FIG. 6 is a schematic diagram illustrating structure of a device for handling an optimization process, in accordance with the sixth example of the present disclosure.
- the device 60 for handling the optimization process may include a memory 601 and a processor 602 in communication with the memory 601 .
- the memory 601 may store a determining instruction 6010 , an identifying instruction 6011 , and an optimizing instruction 6012 , which are executable by the processor 602 .
- functions of the determining instruction 6010 , the identifying instruction 6011 and the optimizing instruction 6012 are similar to that of the determining instruction 5010 , the identifying instruction 5011 and the optimizing instruction 5012 in the fifth example.
- the determining instruction 6010 further indicates to determine dimension information of each process in the at least one process being executed.
- the dimension information may include at least one of bandwidth occupancy rate, processor occupancy rate, memory occupancy rate, mouse click frequency, keyboard hit frequency and full screen or not.
- the default category process in the default process category list and each process in the at least one process are respectively represented by a vector, for each process in the at least one process determined based on the determining instruction 6010 .
- the identifying instruction 6011 indicates to calculate the Euclidean distance between the process and default category process, and determine whether the Euclidean distance between the process and the default category process is smaller than or equal to a preset threshold. When determining that the Euclidean distance between the process and the default category process is smaller than or equal to the preset threshold, the identifying instruction 6011 may indicate to determine that the process matches with the default category process.
- the memory 601 may further include an adding instruction 6013 executable by the processor 602 .
- the adding instruction 6013 indicates to add the process to the default process category list, and take the process as a newly added default category process.
- the device for handling the optimization process may locally manage the default process category list.
- the memory 601 may further include an uploading instruction 6014 executable by the processor 602 .
- the uploading instruction 6014 may indicate to upload the process to the cloud server, such that the cloud server may add the process to the default process category list, and take the process as a newly added default category process.
- the optimizing instruction 6012 may indicate to determine mutual compatibility of the at least one process, based on the feature information of the default category process matching with each process in the at least one process, and perform the optimization handling on the at least one process, based on the mutual compatibility of the at least one process and the priority of each process in the at least one process.
- the optimization handling may be performed on the at least one process, based on the feature information identified by the process category matching with each process in the at least one process.
- the deficiencies in the prior art may be made up effectively.
- the deficiencies in the prior art may refer to the following. When multiple processes are executed simultaneously by a terminal, no optimization handling may be performed on the multiple processes. Subsequently, handling efficiency of tasks corresponding to the multiple processes executed by the terminal may be lower.
- the program may be stored in a computer readable storage medium.
- the foregoing storage medium may be Read-Only Memory (ROM), disk, Compact Disc (CD), and so on.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Resources & Organizations (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- General Engineering & Computer Science (AREA)
- General Business, Economics & Management (AREA)
- Tourism & Hospitality (AREA)
- Quality & Reliability (AREA)
- Entrepreneurship & Innovation (AREA)
- Game Theory and Decision Science (AREA)
- Operations Research (AREA)
- Development Economics (AREA)
- Marketing (AREA)
- Information Transfer Between Computers (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
Description
- The application is continuation of international application No. PCT/CN2013/085929, filed on Oct. 25, 2013, which claims the benefit of a Chinese patent application 201210423983.0, titled “Method and device for Handling Optimization Processes”, filed on Oct. 30, 2012. The disclosures of each of the above applications are hereby incorporated herein by reference in their entireties.
- 1. Field of the Invention
- The present disclosure relates to computer technologies, and more particularly, to a method and device for handling an optimization process.
- 2. Description of the Related Art
- Accompanying with development of the Internet, a terminal used by a user, e.g., a computer, may not execute only one task most of the time. For example, when a user utilizes a computer to browse a webpage or view an online video, a downloading service may also be executed. Alternatively, security software may be updated or may execute a scanning task simultaneously, and so on. Each task may correspond to one process. When a computer simultaneously handles multiple tasks, the computer may handle multiple processes simultaneously.
- Examples of the present disclosure provide a method and device for handling an optimization process. The technical solutions may be as follows.
- From one aspect, a method for handling an optimization process is provided, which includes: determining at least one process being executed; identifying a default category process matching with each process in the at least one process, based on a default process category list, wherein the default process category list includes a default category process and feature information of the default category process; performing optimization handling on the at least one process, based on the feature information of the default category process matching with each process in the at least one process.
- From another aspect, a device for handling an optimization process is also provided, which includes a determining module, an identifying module and an optimizing module, wherein the determining module is to determine at least one process being executed; the identifying module is to identify a default category process matching with each process in the at least one process, based on a default process category list, wherein the default process category list includes a default category process and feature information of the default category process; and the optimizing module is to perform optimization handling on the at least one process, based on the feature information of the default category process matching with each process in the at least one process.
- From another aspect, another device for handling an optimization process is also provided, which includes a memory, and a processor in communication with the memory, wherein the memory stores a determining instruction, an identifying instruction and an optimizing instruction, which are executable by the processor, the determining instruction indicates to determine at least one process being executed; the identifying instruction indicates to identify a default category process matching with each process in the at least one process, based on a default process category list, wherein the default process category list includes a default category process and feature information of the default category process; and the optimizing instruction indicates to perform optimization handling on the at least one process, based on the feature information of the default category process matching with each process in the at least one process.
-
FIG. 1 is a flowchart illustrating a method for handling an optimization process, in accordance with a first example of the present disclosure. -
FIG. 2 is a flowchart illustrating a method for handling an optimization process, in accordance with a second example of the present disclosure. -
FIG. 3 is a schematic diagram illustrating structure of a device for handling an optimization process, in accordance with a third example of the present disclosure. -
FIG. 4 is a schematic diagram illustrating structure of a device for handling an optimization process, in accordance with a fourth example of the present disclosure. -
FIG. 5 is a schematic diagram illustrating structure of a device for handling an optimization process, in accordance with a fifth example of the present disclosure. -
FIG. 6 is a schematic diagram illustrating structure of a device for handling an optimization process, in accordance with a sixth example of the present disclosure. - During the process of implementing the technical solution of the present disclosure, the inventor finds that at least the following problems exist in the prior art. In the prior art, when a terminal simultaneously handles multiple tasks and executes multiple processes, the multiple processes may simultaneously occupy network bandwidth, and/or, network resources, and the terminal may not simultaneously handle the multiple tasks effectively. Thus, handling efficiency of the terminal may be lower. For example, when a user utilizes a computer to browse a webpage or view an online video, security software may be updated or may execute a scanning task, and so on. Since a large number of computer resources may be consumed, when the security software is updated, or the security software is scanning a virus, which will affect webpage browsing, or online video viewing, or executions of other tasks performed by the computer. Thus, handling efficiency of the computer may be reduced.
- For simplicity and illustrative purposes, the present disclosure is described by referring to examples. In the following description, numerous specific details are set forth in order to provide a thorough understanding of the present disclosure. It will be readily apparent however, that the present disclosure may be practiced without limitation to these specific details. In other instances, some methods and structures have not been described in detail so as not to unnecessarily obscure the present disclosure. As used throughout the present disclosure, the term “includes” means includes but not limited to, the term “including” means including but not limited to. The term “based on” means based at least in part on. In addition, the terms “a” and “an” are intended to denote at least one of a particular element.
-
FIG. 1 is a flowchart illustrating a method for handling an optimization process, in accordance with a first example of the present disclosure. As shown inFIG. 1 , the method for handling the optimization process provided by the example may include the following blocks. - In
block 100, determine at least one process being executed. - In
block 101, identify a default category process matching with each process of the at least one process, based on a default process category list. - The default process category list in the example may include a default category process and feature information of the default category process. Specifically speaking, the default process category list may include a process of one default category and feature information of the default category process, or include processes of multiple default categories, and feature information of each default category process.
- In
block 102, perform an optimization handling on the at least one process, based on the feature information of the default category process matching with each process of the at least one process. - For example, based on the feature information of the default category process matching with each process in the at least one process, the each process in the at least one process may be understood effectively, so as to perform an optimization handling on the at least one process. For example, some processes may be handled, while the other processes may be suspended.
- The method for handling an optimization process provided by the example may be applied to a device, which is to handle an optimization process. Specifically speaking, the device for handling the optimization process may be set in a terminal, e.g., a fixed terminal, such as computer, or a mobile terminal, such as a mobile phone or a tablet Personal Computer (PC).
- In accordance with the method for handling an optimization process provided by the example, by determining at least one process being executed, a default category process matching with each process of the at least one process may be identified, based on the default process category list, in which the default process category list may include a default category process and feature information of the default category process; an optimization handling may be performed on the at least one process, based on the feature information of the default category process matching with each process of the at least one process. By adopting the technical solution provided by the example, the optimization handling may be performed on at least one process, based on the feature information identified by the process category matching with each process of the at least one process. Thus, the deficiencies in the prior art may be effectively made up. That is, no optimization handling may be performed on multiple processes, during the procedure of a terminal simultaneously executing the multiple processes, and when the terminal handles the tasks corresponding to the multiple processes, handling efficiency of the terminal may be lower. Thus, the terminal handling efficiency may be effectively improved, and usage experience of the terminal user may be enhanced. For example, in accordance with the technical solution of the example, during the process of a user utilizing a computer to browse a webpage or view an online video, when security category software starts to be updated or starts to scan, and so on, since a large number of computer resources need to be consumed by updating or scanning executed by the security category software, which will affect webpage browsing, or online video viewing, or other tasks executed by the computer. By adopting the technical solution of the example, an optimization handling may be performed on processes. For example, when a user utilizes a computer to browse a webpage or view an online video, operations executed by the security category software, such as updating or scanning, may be stopped. Subsequently, when the computer handles the webpage browsing or the online video viewing of the user, efficiency of the computer may be guaranteed. When browsing the webpage or viewing the online video, experience of the computer user may also be enhanced.
- Optionally, on the basis of the example illustrated with
FIG. 1 , theblock 100 “determine at least one process being executed” in the foregoing example may include the follows. Determine dimension information of each process in the at least one process being executed. That is, in the example, the dimension information employed may include at least one of bandwidth occupancy rate, processor occupancy rate, memory occupancy rate, mouse click frequency, keyboard hit frequency and full screen or not. The mouse click frequency and keyboard hit frequency may be represented by an average mouse click rate and an average keyboard hit rate per unit time. - Furthermore, optionally, the default category process in the foregoing example may also be identified by the dimension information of the default category process. The dimension information may also include at least one of the bandwidth occupancy rate, the processor occupancy rate, the memory occupancy rate, the mouse click frequency, the keyboard hit frequency and full screen or not.
- It should be noted that, the default process category list may be downloaded by a device for handling an optimization process from a cloud server. In the technical solution, the cloud server may manage the default process category list.
- At this time, the
corresponding block 101 “identify the default category process matching with each process in the at least one process, based on the default process category list” may include the following blocks. - (1) For each process in the at least one process, calculate an Euclidean distance between the process and the default category process.
- In the example, when the default category process in the default process category list and each process in the at least one process are respectively represented by a vector, e.g., the process and the default category process may be represented by X=(x1, x2, x3, x4, x5, x6), in which x1, x2, x3, x4, x5, x6 may represent dimensions of the process, such as the bandwidth occupancy rate, processor occupancy rate, memory occupancy rate, mouse click frequency, keyboard hit frequency, full screen or not, and so on. For example, three dimensions, such as the bandwidth occupancy rate, processor occupancy rate and memory occupancy rate, may be configured as having three levels, i.e., high, intermediate and low, respectively represented by 3, 2 and 1, based on practical requirements. “3” may represent the highest bandwidth occupancy rate, or the highest processor occupancy rate, or the highest memory occupancy rate. “1” may represent the lowest bandwidth occupancy rate, or the lowest processor occupancy rate, or the lowest memory occupancy rate. The two dimensions, such as mouse click frequency and keyboard hit frequency, may be respectively configured as having two levels, i.e., high and low, based on practical requirements. For example, “2” may represent high mouse click frequency and high keyboard hit frequency. “1” may represent low mouse click frequency and low keyboard hit frequency. Full screen may be represented by “1”. Not full screen may be represented by “0”.
- (2) Determine whether the Euclidean distance between the process and the default category process is smaller than or equal to a preset threshold; when determining that the Euclidean distance between the process and the default category process is smaller than or equal to the preset threshold, proceed with (3); otherwise, when determining that the Euclidean distance between the process and the default category process is larger than the preset threshold, proceed with (4).
- It should be noted that, in practical applications, the method may rely on parameters, such as a parameter indicating resources occupied by detected processes. However, an existing problem may be as follows. Detected state about resources occupied by a process at a certain time point may be not the normal state. For example, during the process of playing a High Definition (HD) video, when a user clicks the “pause” button, the system resources consumed by the playing program detected at this time point is low, which is obviously inconsistent with the practical conditions. At this time, a method for detecting multiple times may be employed, to calculate the Euclidean distance between the process detected for multiple times and the default category process, and take an average value of multiple-time detection (such as 100-time detection) as the Euclidean distance between the process and the default category process. By employing the method for detecting multiple times, vector value about each process category may be closer to a user's actual conditions, and the detection may be more accurate.
- (3) Determine that the process matches with the default category process.
- (4) Add the process to the default process category list, and take the process as a newly added default category process.
- In the technical solution provided by block (4), the device for handling the optimization process may locally manage the default process category list.
- In the example, when the Euclidean distance between the process and the default category process is smaller than or equal to the preset threshold, it means that the process and the default category process belong to the same category, at this time, it may be determined that the process matches with the default category process. Otherwise, when the Euclidean distance between the process and all of the default category processes in the default process category list is larger than the preset threshold, at this time, the process and all of the default category processes in the default process category list may not belong to the same category. That is, it may be determined that the process doesn't match with each default category process in the default process category list. At this time, the process may be taken as a newly added default category process and added to the default process category list.
- For example, regarding two vectors of X=(x1, x2 . . . xn) and Y=(y1, y2 . . . yn), the Euclidean distance between them may be represented by
-
- By adopting the foregoing representation, one process to download an application may be represented with the following vector, Xdownload=(3,1,2,1,1,0). In the default process category list, an default category process for an application with a downloading type may be represented by Xbandwdth=(3,1,1,1,1,0). By employing the foregoing formula for calculating the Euclidean distance, when the calculated value of the Euclidean distance about these two vectors is smaller than a preset value, it may be determined that these two vectors belong to the same category. For example, after calculating the Euclidean distance between the foregoing Xdownload and Xbandwidth, obtained result is 1, so that the process to download a service may be considered as belonging to the process for the application with a downloading type.
- After executing the foregoing block (4), the method may further include the follows: upload the process to a cloud server, such that the cloud server may add the process to the default process category list, and take the process as a newly added default category process. Similarly, in the technical solution, the cloud server may manage the default process category list.
- It should be noted that, the feature information of the default category process may be determined by the dimension information of the default category process. For example, category processes may be distinguished by different applications. The following processes may be included based on applications.
- (a) Processes of a large-scale game, based on the dimension information of a process in this category, the feature information of an application in this category may be learned as follows: small bandwidth, a large number of consumed resources, not appropriate to be executed simultaneously with other tasks with a large consumption of resources (such as Trojan scanning) and procedures for interrupting the game (that is, with a pop-up prompt window).
- (b) Processes of online video and downloading software category: based on the dimension information of a process in this category, the feature information of an application in this category may be learned as follows: large bandwidth, intermediate consumption of resources, not appropriate to be executed simultaneously with other tasks with a consumption of bandwidth (such as downloading and updating).
- (c) Processes of HD video category: based on the dimension information of a process in this category, the feature information of an application in this category may be learned as follows: small bandwidth, a large consumption of resources, not appropriate to be executed simultaneously with other tasks with a large consumption of resources (such as Trojan scanning).
- (d) Processes of a general category application, including webpage browsing, document handling: based on the dimension information of a process in this category, the feature information of an application in this category may be learned as follows: small bandwidth, a small consumption of resources, generally compatible with processes of other applications, that is, the processes of other applications may be executed simultaneously.
- Optionally, based on the technical solution provided by the foregoing example, specifically speaking, block 102 “perform an optimization handling on the at least one process, based on the feature information of the default category process matching with each process in the at least one process” may include the following blocks.
- (A) Determine mutual compatibility of the at least one process, based on the feature information of the default category process matching with each process in the at least one process.
- For example, the feature information of the default category process may refer to bandwidth occupied by the default category process, resources consumed by the default category process, and so on. Based on the feature information about each default category process, the compatibility among each process may be determined. Alternatively, the feature information of a default category process may directly include the compatibility between the default category process and other processes.
- (B) Perform the optimization handling on the at least one process, based on the mutual compatibility of the at least one process and priority of each process in the at least one process.
- For example, according to the feature information of foregoing four kinds of processes (a)-(d) distinguished by service types, compatibility among each process may be obtained. And then, the optimization process may be performed on the at least one process, based on the compatibility of processes and priority of each process. For example, select a process with the highest priority, turn off other processes not compatible with the process of the highest priority, and keep processes compatible with the process of the highest priority. Thus, the optimization handling on the at least one process may be implemented.
- All of the foregoing optional technical solutions may be randomly combined with any available combination mode, to form an optional example of the present disclosure, which will not be repeated here.
- By adopting the technical solution provided by the foregoing example, the optimization handling may be performed on the at least one process, based on the feature information identified by the process category matching with each process in the at least one process. Thus, the deficiencies in the prior art may be made up effectively. That is, in the prior art, when multiple processes are executed simultaneously by a terminal, no optimization handling may be performed on the multiple processes; subsequently, handling efficiency of tasks corresponding to the multiple processes executed by the terminal may be lower. And then, the terminal handling efficiency may be improved effectively, and usage experience of the terminal user may also be enhanced. For example, by employing the technical solution of foregoing example, during the process of a user utilizing a computer to browse a webpage or view an online video, when security category software starts to be updated or starts to scan, and so on, since a large number of computer resources may be consumed by the updating or virus scanning executed by the security category software, which will affect webpage browsing, or online video viewing, or other tasks executed by the computer. By employing the technical solution of foregoing example, the optimization process may be performed on processes. For example, when a user utilizes a computer to browse a webpage or view an online video, stop the operations of updating or scanning executed by the security category software, so as to guarantee the efficiency of the computer, when the computer handles the webpage browsing or online video viewing executed by a user. And when browsing the webpage, or viewing the online video, experience of the computer user may also be enhanced.
-
FIG. 2 is a flowchart illustrating a method for handling an optimization process, in accordance with the second example of the present disclosure. A device for handling an optimization process may be taken as an example. An optional example may be provided on the basis of the foregoing example. As shown inFIG. 2 , the method for handling the optimization process in the example may include the following blocks. - In
block 200, a terminal may download a default process category list from a cloud server. - The default process category list may include a default category process, e.g., one default category process, or two or more default category processes. Each default category process may be represented by dimension information, and the dimension information may include at least one of bandwidth occupancy rate, processor occupancy rate, memory occupancy rate, mouse click frequency, keyboard hit frequency, and full screen or not.
- In
block 201, the terminal may determine at least one process being executed. - Each process may be represented by at least one kind of dimension information, such as the bandwidth occupancy rate, the processor occupancy rate, the memory occupancy rate, the mouse click frequency, the keyboard hit frequency and full screen or not.
- For example, when the at least one process being executed by the terminal includes processes, such as webpage browsing, HD video viewing, software downloading, Trojan scanning. The process corresponding to webpage browsing may consume fewer resources, and occupy smaller bandwidth, which may generally be compatible with processes of other applications. The process of HD video viewing may consume a large number of resources, occupy bigger bandwidth, and may not be appropriate to be executed simultaneously with other tasks consuming a large number of resources (such as Trojan scanning). The process corresponding to software downloading may occupy big bandwidth, consume intermediate resources, and may not be appropriate to be executed simultaneously with other tasks consuming bandwidth. The process of Trojan scanning may consume a large number of resources, and occupy small bandwidth.
- In
block 202, for each process in the at least one process, the terminal may calculate the Euclidean distance between the process and the default category process. - In
block 203, the terminal may determine whether the Euclidean distance between the process and the default category process is smaller than or equal to a preset threshold. When the Euclidean distance between the process and the default category process is smaller than or equal to the preset threshold, proceed withblock 204; otherwise, proceed withblock 205. - When implementing the block, specifically speaking, it may be understood to determine whether the Euclidean distance between the process and each default category process in the default process category list is smaller than or equal to the preset threshold. Only if the Euclidean distance between the process and one default category process is smaller than or equal to the preset threshold, it may be determined that the process matches with the default category process. Otherwise, when the Euclidean distance between the process and any default category process in the default process category list is larger than the preset threshold, it may be determined that the process doesn't match with the default category process, thus, proceed with
block - In
block 204, the terminal may determine that the process matches with the default category process, and proceed withblock 206. - In
block 205, the terminal may take the process as a newly added default category process, and proceed withblock 206. - At this time, the process may match with the newly added default category process (that is, the process itself).
- Optionally, after
block 205, the following may be further included. The terminal may upload the process to the cloud server, such that the cloud server may add the process to the default process category list, and take the process as a newly added default category process. - In
block 206, the terminal may obtain the identifier of the default category process matching with each process in the at least one process, obtain the feature information of the default category process matching with each process, and proceed withblock 207. - In
block 207, the terminal may determine the mutual compatibility of the at least one process, based on the feature information of the default category process matching with each process in the at least one process, and proceed withblock 208. - For example, specifically speaking, the feature information may include the compatibility among processes, e.g., the process of the HD video isn't compatible with the process of Trojan scanning.
- In
block 208, perform the optimization handling on the at least one process, based on the mutual compatibility of the at least one process and priority of each process in the at least one process. - For example, when the priority of the process about the HD video is higher than that about the Trojan scanning, it may firstly turn off the process about the Trojan scanning, and keep the process about the HD video, so as to prevent the terminal from simultaneously executing two tasks each with a large consumption of resources, and guarantee efficiency of the terminal when handling tasks.
- By adopting the method for handling the optimization process provided by the foregoing example, the optimization handling may be performed on the at least one process, based on the feature information identified by the process category matching with each process in the at least one process. Thus, the deficiencies in the prior art may be made up effectively. The deficiencies in the prior art refer to as follows. When multiple processes are executed simultaneously by a terminal, no optimization handling may be performed on the multiple processes. Subsequently, handling efficiency of tasks corresponding to the multiple processes executed by the terminal may be lower. And then, the terminal handling efficiency may be improved effectively, and usage experience of the terminal user may also be enhanced. For example, during the process of a user utilizing a computer to browse a webpage or view an online video, when security category software starts to be updated or starts to scan, and so on, since a large number of computer resources may be consumed by the updating or virus scanning executed by the security category software, which will affect webpage browsing, or online video viewing, or other tasks executed by the computer. By employing the technical solution of foregoing example, the optimization handling may be performed on processes. For example, when a user utilizes a computer to browse a webpage or view an online video, stop the operations of updating or scanning executed by the security software, so as to guarantee the efficiency of the computer, when the computer handles the webpage browsing or online video viewing executed by a user. And when browsing the webpage, or viewing the online video, experience of the computer user may also be enhanced.
-
FIG. 3 is a schematic diagram illustrating structure of a device for handling an optimization process, in accordance with the third example of the present disclosure. As shown inFIG. 3 , the device for handling the optimization process provided by the example may specifically include a determiningmodule 10, an identifyingmodule 11 and an optimizingmodule 12. - The determining
module 10 is to determine at least one process being executed. The identifyingmodule 11 connects with the determiningmodule 10. The identifyingmodule 11 is to identify a default category process matching with each process in the at least one process, which is determined by the determiningmodule 10, based on a default process category list. The default process category list may include a default category process and feature information of the default category process. The optimizingmodule 12 connects with the identifyingmodule 11. The optimizingmodule 12 is to perform an optimization handling on the at least one process, based on the feature information of the default category process matching with each process in the at least one process, in which the default category process is identified by the identifyingmodule 11. - The device for handling the optimization process provided by the example may employ the foregoing modules to handle the optimization process. The implementation mechanism is the same as that of the foregoing related method example. Please refer to descriptions about foregoing related method example, which will not be repeated here.
- The device for handling the optimization process provided by the example may employ the foregoing modules to implement the following operations. Determine at least one process being executed; identify a default category process matching with each process in the at least one process, based on a default process category list; in which the default process category list may include a default category process and feature information of the default category process; perform an optimization handling on the at least one process, based on the feature information of the default category process matching with each process in the at least one process. By adopting the technical solution of the example, the optimization handling may be performed on the at least one process, based on the feature information identified by the process category matching with each process in the at least one process. Thus, the deficiencies in the prior art may be made up effectively. The deficiencies in the prior art may refer to the following. When multiple processes are executed simultaneously by a terminal, no optimization handling may be performed on the multiple processes. Subsequently, handling efficiency of tasks corresponding to the multiple processes executed by the terminal may be lower. By adopting the technical solution of the example, the terminal handling efficiency may be improved effectively, and usage experience of the terminal user may also be enhanced. For example, by employing the technical solution of foregoing example, during the process of a user utilizing a computer to browse a webpage or view an online video, when security category software starts to be updated or starts to scan, and so on, since a large number of computer resources may be consumed by the updating or virus scanning executed by the security category software, which will affect webpage browsing, or online video viewing, or other tasks executed by the computer. By employing the technical solution of foregoing example, the optimization handling may be performed on processes. For example, when a user utilizes a computer to browse a webpage or view an online video, stop the operations of updating or scanning executed by the security category software, so as to guarantee the efficiency of the computer, when the computer handles the webpage browsing or online video viewing executed by a user. And when browsing the webpage, or viewing the online video, experience of the computer user may also be enhanced.
-
FIG. 4 is a schematic diagram illustrating structure of a device for handling an optimization process, in accordance with the fourth example of the present disclosure. As shown inFIG. 4 , based on the example illustrated withFIG. 3 , the device for handling the optimization process in the example may further include the follows. - The determining
module 10 is to determine dimension information of each process in the at least one process being executed. The dimension information may include at least one of bandwidth occupancy rate, processor occupancy rate, memory occupancy rate, mouse click frequency, keyboard hit frequency and full screen or not. - Specifically speaking, when the default category process is identified by the dimension information of the default category process, the default category process in the default process category list and each process in the at least one process are respectively represented by a vector. For each process in the at least one process determined by the determining
module 10, the identifyingmodule 11 is to calculate the Euclidean distance between the process and default category process, and determine whether the Euclidean distance between the process and the default category process is smaller than or equal to a preset threshold. When determining that the Euclidean distance between the process and the default category process is smaller than or equal to the preset threshold, the identifyingmodule 11 may determine that the process matches with the default category process. - As shown in
FIG. 4 , optionally, the device for handling the optimization process in the example may further include an addingmodule 13. The addingmodule 13 may connect with the identifyingmodule 11. When the identifyingmodule 11 determines that the Euclidean distance between the process and the default category process is larger than the preset threshold, the addingmodule 13 is to add the process to the default process category list, and take the process as a newly added default category process. At this time, the device for handling the optimization process may locally manage the default process category list. When the cloud server is in charge of managing the default process category list, the device for handling the optimization process may also include an uploading module, which is to upload the process to the cloud server, such that the cloud server may add the process to the default process category list, and take the process as a newly added default category process. - Furthermore, optionally, in the device for handling the optimization process provided by the example, specifically speaking, the optimizing
module 12 may determine mutual compatibility of the at least one process, based on the feature information of the default category process matching with each process in the at least one process, and perform an optimization handling on the at least one process, based on the mutual compatibility of the at least one process and the priority of each process in the at least one process. - Furthermore, optionally, in the foregoing example, the feature information of the default category process may be determined by the dimension information of the default category process.
- All of the foregoing optional technical solutions may be randomly combined with an available combination mode, to form an optional example of the present disclosure, which will not be repeated here.
- The device for handling the optimization process provided by the example may employ the foregoing modules to perform the handling on the optimization process. The implementation mechanism is the same as the foregoing related method example. Please refer to descriptions of foregoing related method example, which will not be repeated here.
- The device for handling the optimization process provided by the example may employ the foregoing modules, to perform the optimization handling on the at least one process, based on the feature information identified by the process category matching with each process in the at least one process. Thus, the deficiencies in the prior art may be made up effectively. The deficiencies in the prior art refer to as follows. When multiple processes are executed simultaneously by a terminal, no optimization handling may be performed on the multiple processes. Subsequently, handling efficiency of tasks corresponding to the multiple processes executed by the terminal may be lower. By employing the device provided by the example, the terminal handling efficiency may be improved effectively, and usage experience of the terminal user may also be enhanced. For example, during the process of a user utilizing a computer to browse a webpage or view an online video, when security category software starts to be updated or starts to scan, and so on, since a large number of computer resources may be consumed by the updating or virus scanning executed by the security category software, which will affect webpage browsing, or online video viewing, or other tasks executed by the computer. By employing the technical solution of foregoing example, the optimization handling may be performed on processes. For example, when a user utilizes a computer to browse a webpage or view an online video, stop the operations of updating or scanning executed by the security category software, so as to guarantee the efficiency of the computer, when the computer handles the webpage browsing or online video viewing executed by a user. And when browsing the webpage, or viewing the online video, experience of the computer user may also be enhanced.
- The device for handling the optimization process in the foregoing example may be set in a terminal side, when implementing.
- It should be noted that, when performing the handling on an optimization process in accordance with the technical solution provided by the foregoing example, an example about divisions of each functional module is provided for descriptions. In practical applications, the foregoing functions may be allocated for different functional modules to complete, based on requirements. That is, the internal structure of the device may be divided into different functional modules, so as to complete all of or part of functions described above. In addition, the device and method for handling the optimization process provided by the foregoing examples belong to the same ideas. The specific implementation process of the device may refer to the foregoing method example, which will not be repeated here.
-
FIG. 5 is a schematic diagram illustrating structure of a device for handling an optimization process, in accordance with the fifth example of the present disclosure. As shown inFIG. 5 , thedevice 50 for handling the optimization process may include amemory 501, aprocessor 502 in communication with thememory 501. Thememory 501 may store a determininginstruction 5010, an identifyinginstruction 5011 and an optimizinginstruction 5012, which are executable by theprocessor 502. - The determining
instruction 5010 indicates to determine at least one process being executed. Based on a default process category list, the identifyinginstruction 5011 indicates to identify a default category process matching with each process in the at least one process, which is determined based on the determininginstruction 5010. The default process category list may include a default category process and feature information of the default category process. The optimizinginstruction 5012 indicates to perform an optimization handling on the at least one process, based on the feature information of the default category process matching with each process in the at least one process, in which the default category process is identified based on the identifyinginstruction 5011. - The implementation mechanism of the device provided by the example is the same as that of the foregoing related method example. Please refer to descriptions about foregoing related method example, which will not be repeated here.
-
FIG. 6 is a schematic diagram illustrating structure of a device for handling an optimization process, in accordance with the sixth example of the present disclosure. As shown inFIG. 6 , thedevice 60 for handling the optimization process may include amemory 601 and aprocessor 602 in communication with thememory 601. Thememory 601 may store a determininginstruction 6010, an identifyinginstruction 6011, and an optimizinginstruction 6012, which are executable by theprocessor 602. When being executed, functions of the determininginstruction 6010, the identifyinginstruction 6011 and the optimizinginstruction 6012 are similar to that of the determininginstruction 5010, the identifyinginstruction 5011 and the optimizinginstruction 5012 in the fifth example. - The determining
instruction 6010 further indicates to determine dimension information of each process in the at least one process being executed. The dimension information may include at least one of bandwidth occupancy rate, processor occupancy rate, memory occupancy rate, mouse click frequency, keyboard hit frequency and full screen or not. - Specifically speaking, when the default category process is identified by the dimension information of the default category process, the default category process in the default process category list and each process in the at least one process are respectively represented by a vector, for each process in the at least one process determined based on the determining
instruction 6010. The identifyinginstruction 6011 indicates to calculate the Euclidean distance between the process and default category process, and determine whether the Euclidean distance between the process and the default category process is smaller than or equal to a preset threshold. When determining that the Euclidean distance between the process and the default category process is smaller than or equal to the preset threshold, the identifyinginstruction 6011 may indicate to determine that the process matches with the default category process. - As shown in
FIG. 6 , thememory 601 may further include an addinginstruction 6013 executable by theprocessor 602. When determining that the Euclidean distance between the process and the default category process is larger than the preset threshold based on the identifyinginstruction 6011, the addinginstruction 6013 indicates to add the process to the default process category list, and take the process as a newly added default category process. At this time, the device for handling the optimization process may locally manage the default process category list. When the cloud server is in charge of managing the default process category list, thememory 601 may further include anuploading instruction 6014 executable by theprocessor 602. The uploadinginstruction 6014 may indicate to upload the process to the cloud server, such that the cloud server may add the process to the default process category list, and take the process as a newly added default category process. - Furthermore, the optimizing
instruction 6012 may indicate to determine mutual compatibility of the at least one process, based on the feature information of the default category process matching with each process in the at least one process, and perform the optimization handling on the at least one process, based on the mutual compatibility of the at least one process and the priority of each process in the at least one process. - By adopting the device of the foregoing examples, the optimization handling may be performed on the at least one process, based on the feature information identified by the process category matching with each process in the at least one process. Thus, the deficiencies in the prior art may be made up effectively. The deficiencies in the prior art may refer to the following. When multiple processes are executed simultaneously by a terminal, no optimization handling may be performed on the multiple processes. Subsequently, handling efficiency of tasks corresponding to the multiple processes executed by the terminal may be lower.
- The example number of the present disclosure is provided for descriptions, which doesn't represent better example or good example.
- Persons having ordinary skill in the art may learn that, all of or part of blocks in the foregoing examples may be implemented with hardware, or may be implemented by related hardware instructed by a program. The program may be stored in a computer readable storage medium. The foregoing storage medium may be Read-Only Memory (ROM), disk, Compact Disc (CD), and so on.
- The foregoing is only preferred examples of the present disclosure, which is not used for limiting the present disclosure. Any modifications, equivalent substitutions or improvements made within the spirit and principle of the present disclosure, should be covered by the protection scope of the present disclosure.
Claims (15)
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210423983.0A CN103793265B (en) | 2012-10-30 | 2012-10-30 | The processing method of Optimization Progress and device |
CN201210423983 | 2012-10-30 | ||
CN201210423983.0 | 2012-10-30 | ||
PCT/CN2013/085929 WO2014067423A1 (en) | 2012-10-30 | 2013-10-25 | Method and device for handling optimization processes |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2013/085929 Continuation WO2014067423A1 (en) | 2012-10-30 | 2013-10-25 | Method and device for handling optimization processes |
Publications (2)
Publication Number | Publication Date |
---|---|
US20150227388A1 true US20150227388A1 (en) | 2015-08-13 |
US9606830B2 US9606830B2 (en) | 2017-03-28 |
Family
ID=50626475
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/699,236 Active 2033-11-09 US9606830B2 (en) | 2012-10-30 | 2015-04-29 | Method and device for handling optimization processes based on Euclidean distance |
Country Status (3)
Country | Link |
---|---|
US (1) | US9606830B2 (en) |
CN (1) | CN103793265B (en) |
WO (1) | WO2014067423A1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11023217B2 (en) * | 2018-11-09 | 2021-06-01 | Dell Products L.P. | Systems and methods for support of selective processor microcode updates |
US20230124353A1 (en) * | 2021-10-14 | 2023-04-20 | Tata Consultancy Services Limited | Methods and systems for generating optimal coverage plan to perform agricultural activities |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103853610B (en) * | 2012-12-07 | 2018-11-16 | 腾讯科技(深圳)有限公司 | Method for optimizing resources and device |
CN103984743B (en) * | 2014-05-23 | 2018-03-09 | 北京猎豹网络科技有限公司 | A kind of method and device of managing internal memory resource |
CN104503840B (en) * | 2014-12-15 | 2016-09-28 | 北京奇虎科技有限公司 | The method and device that terminal resource is optimized |
CN104461746B (en) * | 2014-12-30 | 2018-07-03 | 中科创达软件股份有限公司 | A kind of memory headroom optimization method and system based on android system |
CN105808629B (en) * | 2014-12-31 | 2020-08-21 | 阿里巴巴(中国)有限公司 | Webpage processing method and device |
CN106445661A (en) * | 2016-09-13 | 2017-02-22 | 郑州云海信息技术有限公司 | Dynamic optimization method and system |
CN108235133B (en) * | 2018-01-15 | 2021-03-02 | 北京陌上花科技有限公司 | Video identification method and device |
EP3839796A1 (en) * | 2019-12-16 | 2021-06-23 | Dassault Systèmes | Designing a 3d modeled object via orientation optimization |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6004015A (en) * | 1994-11-24 | 1999-12-21 | Matsushita Electric Industrial Co., Ltd. | Optimization adjusting method and optimization adjusting apparatus |
US20050143845A1 (en) * | 2003-12-24 | 2005-06-30 | Hirotaka Kaji | Multiobjective optimization apparatus, multiobjective optimization method and multiobjective optimization program |
CN101047479A (en) * | 2006-03-27 | 2007-10-03 | 松下电器产业株式会社 | Method for adaptive selecting survival route in multiple input output system |
US20080195235A1 (en) * | 2006-12-19 | 2008-08-14 | Chevron U.S.A. Inc. | System, method and program for dynamic control and optimization of a process having manipulated and controlled variables |
US20080232682A1 (en) * | 2007-03-19 | 2008-09-25 | Kumar Eswaran | System and method for identifying patterns |
US20090083752A1 (en) * | 2007-09-20 | 2009-03-26 | Kddi Corporation | Event processing apparatus and method based on operating system |
US20090208117A1 (en) * | 2008-02-20 | 2009-08-20 | Juliet Eichen | Fast block matching in digital images |
US20100057410A1 (en) * | 2008-09-04 | 2010-03-04 | Fujitsu Limited | Optimal solution relation display apparatus and optimal solution relation display method |
US20100138026A1 (en) * | 2008-03-08 | 2010-06-03 | Tokyo Electron Limited | Method and apparatus for self-learning and self-improving a semiconductor manufacturing tool |
US20100249968A1 (en) * | 2009-03-25 | 2010-09-30 | Andreas Neuber | Factory resource optimization identification process and system |
US20120095987A1 (en) * | 2010-10-13 | 2012-04-19 | Tao-Jung Cheng | Systems and methods for query optimization |
US20120185301A1 (en) * | 2011-01-14 | 2012-07-19 | Tata Consultancy Services Limited | Process optimization system |
US20130318351A1 (en) * | 2011-02-22 | 2013-11-28 | Mitsubishi Electric Corporation | Similarity degree calculation system, similarity degree calculation apparatus, computer program, and similarity degree calculation method |
US20150310155A1 (en) * | 2014-04-25 | 2015-10-29 | International Business Machines Corporation | Net-voltage-aware optical proximity correction (opc) |
US20160070257A1 (en) * | 2013-04-19 | 2016-03-10 | Valmet Automation Oy | Optimization of a process |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2881239B1 (en) * | 2005-01-24 | 2007-03-23 | Meiosys Soc Par Actions Simpli | METHOD FOR MANAGING ACCESS TO SHARED RESOURCES IN A MULTI-PROCESSOR ENVIRONMENT |
US8261263B2 (en) * | 2006-11-30 | 2012-09-04 | International Business Machines Corporation | JVM system scope initializer |
CN1988684B (en) * | 2006-12-15 | 2011-08-10 | 华为技术有限公司 | Network process managing method and device |
CN102479108B (en) * | 2010-11-26 | 2013-09-11 | 中国科学院声学研究所 | Terminal resource management system for multi-application process embedded system and method |
CN102253858B (en) * | 2011-06-27 | 2013-07-03 | 宇龙计算机通信科技(深圳)有限公司 | Device and method for managing application programs |
CN102609351B (en) * | 2012-01-11 | 2015-12-02 | 华为技术有限公司 | For the method, apparatus and system of the performance of analytic system |
-
2012
- 2012-10-30 CN CN201210423983.0A patent/CN103793265B/en active Active
-
2013
- 2013-10-25 WO PCT/CN2013/085929 patent/WO2014067423A1/en active Application Filing
-
2015
- 2015-04-29 US US14/699,236 patent/US9606830B2/en active Active
Patent Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6004015A (en) * | 1994-11-24 | 1999-12-21 | Matsushita Electric Industrial Co., Ltd. | Optimization adjusting method and optimization adjusting apparatus |
US20050143845A1 (en) * | 2003-12-24 | 2005-06-30 | Hirotaka Kaji | Multiobjective optimization apparatus, multiobjective optimization method and multiobjective optimization program |
CN101047479A (en) * | 2006-03-27 | 2007-10-03 | 松下电器产业株式会社 | Method for adaptive selecting survival route in multiple input output system |
US20080195235A1 (en) * | 2006-12-19 | 2008-08-14 | Chevron U.S.A. Inc. | System, method and program for dynamic control and optimization of a process having manipulated and controlled variables |
US20080232682A1 (en) * | 2007-03-19 | 2008-09-25 | Kumar Eswaran | System and method for identifying patterns |
US20090083752A1 (en) * | 2007-09-20 | 2009-03-26 | Kddi Corporation | Event processing apparatus and method based on operating system |
US20090208117A1 (en) * | 2008-02-20 | 2009-08-20 | Juliet Eichen | Fast block matching in digital images |
US20100138026A1 (en) * | 2008-03-08 | 2010-06-03 | Tokyo Electron Limited | Method and apparatus for self-learning and self-improving a semiconductor manufacturing tool |
US20100057410A1 (en) * | 2008-09-04 | 2010-03-04 | Fujitsu Limited | Optimal solution relation display apparatus and optimal solution relation display method |
US20100249968A1 (en) * | 2009-03-25 | 2010-09-30 | Andreas Neuber | Factory resource optimization identification process and system |
US20120095987A1 (en) * | 2010-10-13 | 2012-04-19 | Tao-Jung Cheng | Systems and methods for query optimization |
US20120185301A1 (en) * | 2011-01-14 | 2012-07-19 | Tata Consultancy Services Limited | Process optimization system |
US20130318351A1 (en) * | 2011-02-22 | 2013-11-28 | Mitsubishi Electric Corporation | Similarity degree calculation system, similarity degree calculation apparatus, computer program, and similarity degree calculation method |
US20160070257A1 (en) * | 2013-04-19 | 2016-03-10 | Valmet Automation Oy | Optimization of a process |
US20150310155A1 (en) * | 2014-04-25 | 2015-10-29 | International Business Machines Corporation | Net-voltage-aware optical proximity correction (opc) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11023217B2 (en) * | 2018-11-09 | 2021-06-01 | Dell Products L.P. | Systems and methods for support of selective processor microcode updates |
US20230124353A1 (en) * | 2021-10-14 | 2023-04-20 | Tata Consultancy Services Limited | Methods and systems for generating optimal coverage plan to perform agricultural activities |
Also Published As
Publication number | Publication date |
---|---|
CN103793265A (en) | 2014-05-14 |
WO2014067423A1 (en) | 2014-05-08 |
US9606830B2 (en) | 2017-03-28 |
CN103793265B (en) | 2016-05-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9606830B2 (en) | Method and device for handling optimization processes based on Euclidean distance | |
CN102591768B (en) | System and method for obtaining feedback from a device | |
KR102355481B1 (en) | Smart Assist for Repeated Actions | |
US10310581B2 (en) | Enhanced security and resource utilization in a multi-operating system environment | |
US9619275B2 (en) | Data processing method, apparatus and mobile terminal | |
US10244102B2 (en) | Method and apparatus for managing application data usage | |
US10739956B2 (en) | Information processing method, terminal, server, and computer storage medium | |
US10474507B2 (en) | Terminal application process management method and apparatus | |
US20160241589A1 (en) | Method and apparatus for identifying malicious website | |
US20160357616A1 (en) | Application management method and application management apparatus | |
CN107102788A (en) | Application notification | |
EP3504659B1 (en) | Computing device protection based on device attributes and device risk factor | |
CN104461742B (en) | Calculate equipment optimization method and device | |
EP2605174B1 (en) | Apparatus and method for analyzing malware in data analysis system | |
US9928083B2 (en) | Tab trimming | |
CN110532467B (en) | Activity recommendation method and device, device and storage medium based on push model | |
CN107835984B (en) | Thermal mitigation user experience | |
US20180027084A1 (en) | Network-Based Probabilistic Device Linking | |
CN106648854A (en) | Task execution method and device for terminal | |
CN107943570A (en) | Application management method, device, storage medium and electronic device | |
US20150355927A1 (en) | Automatic virtual machine resizing to optimize resource availability | |
CN107943571A (en) | Background application management-control method, device, storage medium and electronic equipment | |
CN107291543B (en) | Application processing method and device, storage medium and terminal | |
US20220311834A1 (en) | Fast estimation of downloads for apps at launch | |
CN111988407B (en) | Content pushing method and related device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: TENCENT TECHNOLOGY (SHENZHEN) COMPANY LIMITED, CHI Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:LIANG, XIAOWEN;REEL/FRAME:035550/0609 Effective date: 20150429 |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 4 |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 8TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1552); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 8 |