WO2014086202A1 - 资源优化方法及装置 - Google Patents

资源优化方法及装置 Download PDF

Info

Publication number
WO2014086202A1
WO2014086202A1 PCT/CN2013/085008 CN2013085008W WO2014086202A1 WO 2014086202 A1 WO2014086202 A1 WO 2014086202A1 CN 2013085008 W CN2013085008 W CN 2013085008W WO 2014086202 A1 WO2014086202 A1 WO 2014086202A1
Authority
WO
WIPO (PCT)
Prior art keywords
predetermined type
processes
currently
suspendable
list
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.)
Ceased
Application number
PCT/CN2013/085008
Other languages
English (en)
French (fr)
Inventor
吴团望
刘沙
刘杨
杨笑
戚晖
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Publication of WO2014086202A1 publication Critical patent/WO2014086202A1/zh
Anticipated expiration legal-status Critical
Priority to US14/733,097 priority Critical patent/US9477527B2/en
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5038Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5022Mechanisms to release resources
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/461Saving or restoring of program or task context
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues

Definitions

  • the present invention relates to the field of computers, and in particular, to a resource optimization method and apparatus. Background technique
  • the existing resource optimization method requires the user to manually close some secondary processes. For example, the user right-clicks on an application running in the toolbar of the desktop and selects to close, or the user opens the operating system task manager. Select to close some processes in Task Manager.
  • the existing resource optimization method requires the user to manually close the application or the process, and the operation is complicated, and the terminal often opens certain processes, such as a game process, before the system
  • the resources are still abundance, but when the game process is started, for example, the process that was previously run will result in insufficient resources of the terminal, and the terminal runs stuck.
  • the user manually closes the application or process it is easy to close a certain error.
  • the embodiment of the present invention provides a resource optimization method and device.
  • the technical solution is as follows:
  • a resource optimization method includes:
  • the query is currently running. Suspendable processes in other processes;
  • a resource optimization apparatus comprising:
  • the detecting module is configured to detect whether the currently open process is a predetermined type of process.
  • the process query module is configured to: if the open detection module detects that the currently open process is a predetermined type process, query the other processes currently running. Can suspend the process;
  • the process suspend module is configured to suspend at least one of the suspendable processes queried by the process query module.
  • the other processes are suspended to ensure the resources required for the predetermined type of process to run, which not only solves the problem of insufficient system resources after running certain processes in the prior art, but also solves the problem.
  • the user needs to manually close the application or process, and the system crashes due to the user accidentally shutting down some system processes, thereby improving the running fluency of the predetermined type of process and improving the performance of the device under limited resource conditions.
  • FIG. 1 is a flowchart of a method for resource optimization according to a first embodiment of the present invention
  • FIG. 2 is a flowchart of a method for resource optimization according to a second embodiment of the present invention
  • FIG. 3 is a second embodiment of the present invention.
  • FIG. 4 is a structural diagram of a resource optimization apparatus according to a first embodiment of the present invention.
  • FIG. 5 is a structural diagram of a resource optimization apparatus according to a second embodiment of the present invention. detailed description
  • the resource optimization method can optimize system resources when a predetermined type of process runs.
  • the resource optimization method can include:
  • Step 101 Detect whether the currently open process is a predetermined type of process.
  • Step 102 If it is detected that the currently open process is a predetermined type of process, query for a suspendable process among other processes currently running.
  • Step 103 Suspend at least one of the queried suspend processes.
  • the resource optimization method solves the problem that the other processes are suspended when the predetermined type process is detected to be guaranteed to ensure the resources required for the predetermined type of process to run.
  • the problem of insufficient system resources after running certain processes in the prior art also solves the problem that the user needs to manually close the application or process in the prior art, and the system crashes due to the user accidentally shutting down some system processes, and reaches the limited resources. Under the condition, the running smoothness of the predetermined type of process is improved, and the performance of the device is improved.
  • FIG. 2 is a flow chart showing a method of a resource optimization method according to a second embodiment of the present invention.
  • the resource optimization method can optimize system resources when a predetermined type of process runs.
  • the predetermined type of process may include, but is not limited to, an application process with a high resource occupancy such as a game process.
  • the resource optimization method may include:
  • Step 201 The software management program detects whether the currently open process is a predetermined type of process. Whether the software management program exists according to whether the name of the currently opened process exists in a preset predetermined type of process name list and whether the running path of the currently opened process exists in a preset predetermined type of process running path list or Two, to detect whether the currently open process is a predetermined type of process.
  • the preset predetermined type process name list includes a locally stored predetermined type process name list and a network stored predetermined type process name list; when detecting whether the name of the currently open process exists in a preset predetermined type process name list, First, it is detected whether the name of the currently open process exists in the locally stored predetermined type process name list; if it is detected that the name of the currently open process exists in the locally stored predetermined type process name list, it is confirmed that the currently open process is a predetermined type.
  • the predetermined type of process name list confirms that the currently open process is a predetermined type process, and no, it is confirmed that the currently open process is not a predetermined type process.
  • the storage and detection method of the scheduled type process running path list is also similar to the predetermined type process name list.
  • the software management program locally stores a list of names of commonly used predetermined types of processes and a list of default installation path rules of the corresponding game.
  • the network server also stores a list of names of other predetermined types of processes and default installation path rules of the corresponding games. List, the server may also periodically update the list of names of the predetermined type of processes stored locally by the software management program, a list of default installation path rules of the corresponding game, and a list of names of other predetermined types of processes stored by the network server, and a list of default installation path rules of the corresponding game.
  • the software management program When the current process is started, the software management program first compares the process name of the currently open process with the name list of the locally stored predetermined type process, if the name of the currently open process exists in the name of the locally stored predetermined type process. And confirming that the currently open process is a predetermined type of process. Otherwise, the process name of the currently open process is further compared with the name list of the predetermined type of process stored by the network, if the name of the currently open process is in a predetermined type of network storage. If the name of the process exists, it is confirmed that the currently open process is a predetermined type process, otherwise, it is confirmed that the currently open process is not a predetermined type process.
  • the software management program first compares the process running path rule of the currently open process with the running path rule list of the locally stored predetermined type process, if the running path of the currently open process is in a locally stored scheduled type process running path. If the rule list exists, it is confirmed that the currently open process is a predetermined type process, otherwise, the process running path rule of the currently open process is further compared with the running path rule list of the predetermined type process stored by the network, if the currently open process The running path specification exists in the running path rule list of the predetermined type process of the network storage, and it is confirmed that the currently open process is a predetermined type process, otherwise, it is confirmed that the currently open process is not a predetermined type process. Alternatively, the software management program may combine the above two methods to detect whether the currently open process is a predetermined type of process.
  • the method may be further determined whether the currently open process is a full-screen display process; if the currently open process is a full-screen display process, performing step 202 to query the currently running process.
  • the scheduled type process is normally displayed in full screen, but in some cases In this case, the scheduled type process may be a non-full-screen display.
  • the software management program may further determine whether the predetermined type of process is a full-screen display process, and if yes, determine that other unrelated user processes need to be suspended, and may proceed to step 202. Otherwise, it is judged that other unrelated user processes cannot be suspended, and the process ends.
  • Step 202 If the software management program detects that the currently open process is a predetermined type of process, the software management program queries the suspendable process among other processes currently running.
  • the software management program can query the user processes of other processes currently running that are not related to the currently open process, and determine the queried user process as a suspendable process.
  • the software management program queries the process name in the resource manager.
  • the processes in the Windows operating system can be divided into two categories, one is the system process necessary for the normal operation of the system. When this type of process is closed or suspended, it may cause the system to crash, and the other type can be closed at any time. Or open user processes, this class of processes does not affect the normal operation of other processes in the system.
  • the software management program detects that the currently open process is a predetermined type of process, it can query the user process that is not related to the currently open process in the currently running user process according to the process name in the resource manager, and view the queried user process. To suspend the process. It should be noted that the user process related to the currently open process is not considered to be suspendable.
  • Step 203 The software management program sets a suspension priority to the queried process that is queried.
  • the software management program obtains the resource occupancy of the queried process that is queried, and sets the hang priority of the hangable process from high to low according to the order of the obtained resource sufficiency of the hangable process.
  • the resource occupancy may include a processor resource occupancy and a physical memory footprint.
  • the software management program first acquires the resource usage of each user process, and prioritizes the user processes according to the level of the resource occupancy, and occupies a user process with a high system resource, and the suspension priority is also higher, that is, the software.
  • the hypervisor chooses to preferentially suspend user processes with high resource usage.
  • Step 204 the software management program will suspend the process according to the set suspend priority One less process hangs.
  • the software management program suspends at least one suspendable process with the pending priority ranking in the order of the suspended priority of the set suspendable process
  • the software management program may also obtain the current resource occupancy rate of the system, and determine whether the acquired resource occupancy rate exceeds a preset threshold; if it is determined that the acquired resource occupancy rate exceeds a preset threshold, the remaining suspendable process is suspended. .
  • the software management program first suspends one or more processes with the highest ranking, that is, the highest resource occupancy, in descending order of the pending priority of the suspendable process, and then, in the predetermined type.
  • other suspendable processes can be selectively suspended according to the occupancy rate of the system resources.
  • the software management software pre-sets the resource utilization threshold to 80%.
  • the software management software can obtain the current resource occupancy rate of the system, and determine whether the acquired resource occupancy rate exceeds 80%. , the system resources are tight, not enough to ensure the smooth running of the game program, you need to suspend other unsuspended hangable processes.
  • the software management program may also display a suspended permission setting interface to the user, and set the suspension permission of each user process to be enabled or disabled according to an operation instruction of the user in the suspended permission setting interface.
  • the suspend permission is set to the allowed user process as the suspendable process in the user process unrelated to the currently open process. Or, when suspending a suspend process, set the suspend permission to allow the suspend process to hang.
  • the software management program may display various commonly used user processes to the user in the program interface, and the user may choose to set at least one of the user processes to prohibit suspension, and the remaining user processes are set to allow suspension.
  • the software hypervisor When the software hypervisor suspends the suspended process, it may send an instruction to the operating system to suspend at least one of the processes in the suspendable process, so that the operating system suspends the at least one process and releases the suspended at least one process resource of.
  • the Windows system includes an application layer and a driver layer, wherein the driver layer controls the program of the system, and the application layer controls the program driver of the user application.
  • the software management program After setting the suspend priority to the queried process that is queried, the software management program sends an instruction to suspend at least one user process to the application layer of the operating system, so that the operating system suspends the at least one user process, and the at least one The user process is detached from the hardware memory to ensure the resources required for the scheduled type of process to run, and resource optimization is implemented.
  • the software management program displays a status prompt on the screen after the user enters the game and optimizes the resource, and is used to prompt the user that the system resource has been optimized.
  • a status prompt on the screen after the user enters the game and optimizes the resource, and is used to prompt the user that the system resource has been optimized.
  • Step 205 The software management program detects whether the currently running predetermined type process is closed, and if it detects that the currently running predetermined type process is closed, restores the suspended at least one process.
  • the software management program suspends the running of the unrelated process in the system to achieve the purpose of resource optimization when the predetermined type of process is running, and at the same time, the system operation condition can be consistent before and after resource optimization.
  • the hypervisor will also detect whether the currently running scheduled type process is closed. If it is detected that the currently running predetermined type of process is closed, an instruction to resume the suspended at least one process is sent to the operating system, so that the operating system restores the suspended at least one process.
  • the software management program sends an instruction to suspend at least one user process to the Windows application layer
  • the list of at least one user process is also saved, and when it is detected that the predetermined type process is closed, the saved list is invoked.
  • the way of the Windows system API Application Programming Interface
  • the resource optimization method provided by the embodiment of the present invention solves the problem in the prior art by suspending other processes when the process of the predetermined type is detected to be suspended to ensure the resources required for the operation of the predetermined type of process.
  • the problem of insufficient system resources after running certain processes also solves the problem that the user needs to manually close the application or process in the prior art, and the system crashes due to the user accidentally shutting down some system processes, so as to improve the reservation under the limited resource conditions.
  • the fluency of the type process is used to improve the performance of the device.
  • the suspended process is restored, and the problem of inconsistent system operation before and after resource optimization is solved, and the process of the predetermined type is reached.
  • the process can continue to run; when it is detected that the currently running scheduled type process is not full-screen display, it does not suspend other processes, and solves the problem that the scheduled type process runs under non-full-screen display.
  • the problem of the process being unavailable, reached when the scheduled type Journey
  • Other processes can also run for purposes when running in a non-full-screen display.
  • FIG. 4 shows a structural diagram of a resource optimization apparatus according to the first embodiment of the present invention, and the resource optimization apparatus can be applied to a software management program.
  • the resource optimization device can include:
  • the detection module 401 is configured to detect whether the currently open process is a predetermined type of process.
  • the process query module 402 is configured to: if the open detection module 401 detects that the currently open process is a predetermined type of process, query the suspendable process in other processes currently running.
  • the process suspension module 403 is configured to suspend at least one of the suspendable processes queried by the process query module.
  • the opening detection module 401 is specifically configured to: according to whether the name of the currently open process exists in a preset predetermined type of process name list and whether the running path of the currently opened process exists in a preset predetermined type process running path list. One or both of the two methods to detect whether the currently open process is a predetermined type of process.
  • the preset predetermined type process name list includes a locally stored predetermined type process name list and a network stored predetermined type process name list
  • the preset predetermined type process running path rule list includes a locally stored predetermined type process running path rule list. And a list of running path rules for the scheduled type of network storage.
  • FIG. 5 is a structural diagram of a resource optimization apparatus according to a second embodiment of the present invention.
  • the opening detection module 501 includes:
  • the first detecting unit 501a is configured to detect whether the name of the currently open process exists in the locally stored predetermined type process name list; if the name of the currently open process exists in the name list of the locally stored predetermined type process, confirm the The currently open process is a scheduled type process.
  • the second detecting unit 501b is configured to further detect whether the name of the currently open process exists in the network storage reservation if the first detecting unit 501a detects that the name of the currently open process does not exist in the locally stored predetermined type process name list.
  • a type process name list if the name of the currently open process exists in the name list of the predetermined type process stored in the network, it is confirmed that the currently open process is a predetermined type process; if the name of the currently open process is in a predetermined type of network storage If the name list of the process does not exist, it is confirmed that the currently open process is not a scheduled type process.
  • the first detecting unit 501a is configured to detect whether a running path rule of the currently open process exists in a locally stored predetermined type process running path rule list; if the currently starting process The running path specification exists in the locally stored predetermined type process running path specification list, and it is confirmed that the currently open process is a predetermined type process.
  • the second detecting unit 501b is configured to: if the first detecting unit 501a detects that the running path rule of the currently open process does not exist in the locally stored predetermined type process running path rule list, further detecting whether the currently running process running path rule is If the running path rule of the currently open process exists in the predetermined type process running path rule list stored in the network, it is confirmed that the currently open process is a predetermined type process; The running path specification of the currently open process does not exist in the list of the scheduled type process running path rules of the network storage, and it is confirmed that the currently open process is not a predetermined type process.
  • the first detecting unit 501a and the second detecting unit 501b may also combine the above two methods to detect whether the currently open process is a predetermined type of process.
  • the device also includes:
  • the determining module 504 is configured to: after detecting that the currently open process is a predetermined type process, determine whether the currently open process is a full-screen display process;
  • the process query module 504 determines that the currently open process is a full screen display process. If the determining module 504 determines that the currently open process is a full screen display process, the process query module
  • the process query module 502 is specifically configured to query a user process that is not related to the currently open process among other processes currently running, and determine the queried user process as a hangable process; wherein other processes currently running include system processes And user processes.
  • the device also includes:
  • MM block 505 which is used to obtain the resource usage of the suspendable process determined by the process query module 502;
  • the priority setting module 506 is configured to set the pending priority of the suspendable process from high to low according to the order of the resource occupancy of the suspendable process acquired by the obtaining module 505.
  • the first suspending unit 503a is configured to suspend at least one suspendable process in which the suspending priority ranks in the highest priority according to the suspend priority of the suspendable process set by the priority setting module 506 ;
  • An obtaining unit 503b configured to acquire a current resource occupancy rate of the system
  • the determining unit 503c is configured to determine whether the acquired current resource occupancy rate exceeds a preset threshold;
  • the second suspending unit 503d is configured to suspend the remaining suspendable process if the judging unit 503c determines that the acquired current resource occupancy rate exceeds a preset threshold.
  • the device also includes:
  • the shutdown detection module 507 is configured to detect whether the predetermined type of process currently running is closed.
  • the process recovery module 508 is configured to: if the shutdown detection module 507 detects that the predetermined type of process currently running is closed, send a recovery pending to the operating system. At least one process instruction, so that the operating system resumes at least one process that is suspended.
  • the predetermined type of processes mentioned in the first and second embodiments of the present invention may include, but are not limited to, an application process with a high resource occupancy such as a game process.
  • the resource optimization apparatus suspends other processes by detecting that a predetermined type of process is started, and suspends when detecting that the predetermined type of process is closed.
  • the process is resumed to ensure the resources required for the scheduled type of process to run, which not only solves the problem of insufficient system resources after running certain processes in the prior art, but also solves the problem that the user needs to manually close the application or process in the prior art, and The user accidentally shuts down some system processes and causes the system to crash. It can improve the running fluency of the predetermined type of process under the limited resource conditions and improve the performance of the device. At the same time, it will hang when it detects that the scheduled type process is closed.
  • the process recovery solves the problem that the system running condition is inconsistent before and after resource optimization, and achieves the purpose that the suspended process can continue to run after the predetermined type process is closed; and also when it detects that the currently running predetermined type process is not full screen display , does not suspend other processes, resolves the scheduled type process at A case where full-screen display operation, problems other processes unavailable, when the object reaches a predetermined type of processes running in the case where the non-full-screen display, other processes may be running.
  • the above mentioned storage medium may be a read only memory, a magnetic disk or an optical disk or the like.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • User Interface Of Digital Computer (AREA)
  • Debugging And Monitoring (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种资源优化方法及装置,属于计算机领域。所述方法包括:检测当前开启的进程是否为预定类型进程;若检测到所述当前开启的进程为预定类型进程,则查询当前正在运行的其它进程中的可挂起进程;将查询到的所述可挂起进程中的至少一个进程挂起。本发明通过在检测到预定类型进程开启时,将其他进程挂起,以保证该预定类型进程运行时所需要的资源,既解决了现有技术中运行某些进程后系统资源不足的问题,也解决了现有技术中需要用户手动关闭应用或进程,以及因用户误关闭某些系统进程从而导致系统崩溃的问题,达到在有限资源条件下提升预定类型进程的运行流畅度,提高设备性能的目的。

Description

资源优化方法及装置 本申请要求于 2012年 12月 07 日提交中国专利局、 申请号 为 201210521593.7、 发明名称为 "资源优化方法及装置" 的中国专利申请的 优先权, 其全部内容通过引用结合在本申请中。 技术领域
本发明涉及计算机领域, 特别涉及一种资源优化方法及装置。 背景技术
随着计算机领域的不断发展, 目前某些预定类型的应用 (比如 3D游戏) 对用户的硬件资源有较高的要求, 当用户的硬件资源并不宽裕时, 通常会出 现卡顿的现象。 为了确保某些预定类型的应用能够流畅运行, 往往需要对硬 件的资源进行优化。
现有的资源优化方法, 需要用户手动关闭一些次要的进程, 比如, 用户 在桌面的工具栏中右键点击正在运行的某一应用程序并选择关闭, 或者, 用 户打开操作系统任务管理器, 在任务管理器中选择关闭某些进程。
在实现本发明的过程中, 发明人发现现有技术至少存在以下问题: 现有的资源优化方法, 需要用户手动关闭应用或进程, 操作复杂, 往往 终端在开启某些进程例如游戏进程之前, 系统资源还是宽裕的, 但是当开启 了例如游戏进程后, 加上之前运行的进程, 就会导致终端的资源不足, 出现 终端运行卡顿; 同时, 用户手动关闭应用程序或进程时, 容易误关闭某些操 作系统正常运行所必须的系统进程, 从而导致系统崩溃。 发明内容
为了解决现有技术中用户操作复杂且容易误操作, 用户体验低的问题, 本发明实施例提供了一种资源优化方法及装置。 所述技术方案如下:
一方面, 提供了一种资源优化方法, 所述方法包括:
检测当前开启的进程是否为预定类型进程;
若检测到所述当前开启的进程为预定类型进程, 则查询当前正在运行的 其它进程中的可挂起进程;
将查询到的所述可挂起进程中的至少一个进程挂起。
另一方面, 提供了一种资源优化装置, 所述装置包括:
开启检测模块, 用于检测当前开启的进程是否为预定类型进程; 进程查询模块, 用于若所述开启检测模块检测到当前开启的进程为预定 类型进程, 则查询当前正在运行的其他进程中的可挂起进程;
进程挂起模块, 用于将所述进程查询模块查询到的可挂起进程中的至少 一个进程挂起。
本发明实施例提供的技术方案带来的有益效果是:
通过在检测到预定类型进程开启时, 将其他进程挂起, 以保证该预定类 型进程运行时所需要的资源, 既解决了现有技术中运行某些进程后系统资源 不足的问题, 也解决了现有技术中需要用户手动关闭应用或进程, 以及因用 户误关闭某些系统进程从而导致系统崩溃的问题, 达到在有限资源条件下提 升预定类型进程的运行流畅度, 提高设备性能的目的。 附图说明
为了更清楚地说明本发明实施例中的技术方案, 下面将对实施例描述中 所需要使用的附图作筒单地介绍, 显而易见地, 下面描述中的附图仅仅是本 发明的一些实施例, 对于本领域普通技术人员来讲, 在不付出创造性劳动的 前提下, 还可以根据这些附图获得其他的附图。
图 1是根据本发明第一实施例提供的资源优化方法的方法流程图; 图 2是根据本发明第二实施例提供的资源优化方法的方法流程图; 图 3是根据本发明第二实施例提供的提示窗口示意图;
图 4是根据本发明第一实施例提供的资源优化装置的结构图; 图 5是根据本发明第二实施例提供的资源优化装置的结构图。 具体实施方式
为使本发明的目的、 技术方案和优点更加清楚, 下面将结合附图对本发 明实施方式作进一步地详细描述。
请参见图 1 , 其示出了根据本发明第一实施例提供的资源优化方法的方 法流程图。 该资源优化方法可以在预定类型进程运行时, 对系统资源进行优 化。 该资源优化方法可以包括:
步骤 101 , 检测当前开启的进程是否为预定类型进程。
步骤 102, 若检测到当前开启的进程为预定类型进程, 则查询当前正在 运行的其它进程中的可挂起进程。
步骤 103 , 将查询到的可挂起进程中的至少一个进程挂起。
综上所述, 根据本发明第一实施例提供的资源优化方法, 通过在检测到 预定类型进程开启时, 将其他进程挂起, 以保证该预定类型进程运行时所需 要的资源, 既解决了现有技术中运行某些进程后系统资源不足的问题, 也解 决了现有技术中需要用户手动关闭应用或进程、 以及因用户误关闭某些系统 进程从而导致系统崩溃的问题, 达到在有限资源条件下提升预定类型进程的 运行流畅度, 提高设备性能的目的。
为了对上述根据第一实施例提供的资源优化方法做进一步描述, 请参见 图 2。 图 2示出了根据本发明第二实施例提供的资源优化方法的方法流程图。 该资源优化方法可以在有预定类型进程运行时, 对系统资源进行优化。 该预 定类型进程可以包括但不限于游戏进程等资源占用量较高的应用进程, 该资 源优化方法可以包括:
步骤 201 , 软件管理程序检测当前开启的进程是否为预定类型进程。 软件管理程序根据当前开启的进程的名称是否存在于预设的预定类型进 程名称列表以及当前开启的进程的运行路径是否存在于预设的预定类型进程 运行路径列表这两种方法中的一种或两种, 来检测当前开启的进程是否为预 定类型进程。
其中, 预设的预定类型进程名称列表包括本地存储的预定类型进程名称 列表和网络存储的预定类型进程名称列表; 当检测当前开启的进程的名称是 否存在于预设的预定类型进程名称列表时, 首先检测当前开启的进程的名称 是否存在于本地存储的预定类型进程名称列表; 若检测出当前开启的进程的 名称存在于本地存储的预定类型进程名称列表, 则确认该当前开启的进程为 预定类型进程; 若检测出当前开启的进程的名称不存在于本地存储的预定类 型进程名称列表, 则进一步检测当前开启的进程的名称是否存在于网络存储 的预定类型进程名称列表, 若检测出当前开启的进程的名称存在于网络存储 的预定类型进程名称列表,则确认该当前开启的进程为预定类型进程,否贝' J , 确认该当前开启的进程不是预定类型进程。 对应地, 预定类型进程运行路径 列表的存储和检测方法也与预定类型进程名称列表相似。
具体地, 软件管理程序本地存储有常用的预定类型进程的名称列表以及 对应游戏的默认安装路径细则列表, 另外, 网络服务器中还存储有其他预定 类型进程的名称列表以及对应游戏的默认安装路径细则列表, 服务器还可以 定期更新软件管理程序本地存储的预定类型进程的名称列表以及对应游戏的 默认安装路径细则列表、 和网络服务器存储的其他预定类型进程的名称列表 以及对应游戏的默认安装路径细则列表。
在当前有进程开启时, 软件管理程序首先将当前开启进程的进程名称与 本地存储的预定类型进程的名称列表进行比对, 若该当前开启进程的名称在 本地存储的预定类型进程的名称中存在, 则确认该当前开启的进程为预定类 型进程, 否则, 进一步将当前开启进程的进程名称与网络存储的预定类型进 程的名称列表进行比对, 若该当前开启进程的名称在网络存储的预定类型进 程的名称中存在, 则确认该当前开启的进程为预定类型进程, 否则, 确认该 当前开启的进程不是预定类型进程。 或者, 软件管理程序首先将当前开启进 程的进程运行路径细则与本地存储的预定类型进程的运行路径细则列表进行 比对, 若该当前开启进程的运行路径细则在本地存储的预定类型进程的运行 路径细则列表中存在, 则确认该当前开启的进程为预定类型进程, 否则, 进 一步将当前开启进程的进程运行路径细则与网络存储的预定类型进程的运行 路径细则列表进行比对, 若该当前开启进程的运行路径细则在网络存储的预 定类型进程的运行路径细则列表中存在, 则确认该当前开启的进程为预定类 型进程, 否则, 确认该当前开启的进程不是预定类型进程。 或者, 软件管理 程序也可以将上述两种方法结合, 来检测该当前开启的进程是否为预定类型 进程。
优选地, 在检测到当前开启的进程为预定类型进程后, 还可以进一步判 断当前开启的进程是否为全屏显示进程;若当前开启的进程是全屏显示进程, 则执行步骤 202中查询当前正在运行的其它进程中的可挂起进程的步骤, 否 则, 流程结束。
实际应用中, 预定类型进程在通常情况下都为全屏显示, 但是在某些情 况下, 预定类型进程可能为非全屏显示, 用户在非全屏显示情况下运行预定 类型进程时, 一般还会有使用其他用户进程的需求, 此时, 需要避免预定类 型进程在非全屏显示情况下运行时, 因其他进程挂起而导致的其他进程不可 用的情况。 因此, 软件管理程序可以在检测出该当前开启的进程为预定类型 进程之后, 进一步判断该预定类型进程是否为全屏显示进程, 如果是, 则判 断需要挂起其他无关的用户进程, 可以进入步骤 202, 否则, 判断不能挂起 其他无关的用户进程, 流程结束。
本领域技术人员应该理解, 根据实际需求, 可以进行或者不进行上述全 屏显示进程的判断。
步骤 202, 若软件管理程序检测到当前开启的进程为预定类型进程, 则 软件管理程序查询当前正在运行的其他进程中的可挂起进程。
软件管理程序可以查询当前正在运行的其他进程中与当前开启的进程无 关的用户进程, 将查询到的用户进程确定为可挂起进程。
具体地, 以 Windows操作系统为例,软件管理程序查询资源管理器中的 进程名称。 其中, Windows操作系统中的进程可以分为两类, 一类是系统正 常运行所必须的系统进程, 这一类进程被关闭或挂起时, 可能会引起系统崩 溃, 另一类是可以随时关闭或开启的用户进程, 这一类进程关闭时不影响系 统中其他进程的正常运行。 软件管理程序检测到当前开启的进程为预定类型 进程之后, 可以根据资源管理器中的进程名称查询当前正在运行的用户进程 中与当前开启的进程无关的用户进程, 并将查询到的用户进程视为可挂起进 程。 需要说明的是, 与当前开启的进程有关的用户进程不会被视为可挂起进 程。
步骤 203 , 软件管理程序对查询到的可挂起进程设置挂起优先级。
软件管理程序获取查询到的可挂起进程的资源占用量, 并按照获取的可 挂起进程的资源占用量由高到低的顺序, 由高到低地设置可挂起进程的挂起 优先级。 其中, 资源占用量可以包括处理器资源占用量和物理内存占用量。
具体地, 软件管理程序首先获取各用户进程的资源占用量, 并按照资源 占用量的高低对用户进程进行优先级排列, 占用系统资源高的用户进程, 其 挂起优先级也越高,即软件管理程序选择优先挂起资源占用量高的用户进程。
步骤 204, 软件管理程序根据设置的挂起优先级, 将可挂起进程中的至 少一个进程挂起。
软件管理程序按照设置的可挂起进程的挂起优先级由高到低的顺序, 将 挂起优先级排名靠前的至少一个可挂起进程挂起;
进一步地, 软件管理程序还可以获取系统的当前资源占用率, 判断获取 的资源占用率是否超过预设阈值; 若判断获取的资源占用率超过预设阈值, 则将剩余的可挂起进程挂起。
实际应用中, 软件管理程序首先根据可挂起进程的挂起优先级由高到低 的顺序, 将排名最靠前, 即资源占用量最高的一个或多个进程挂起, 随后, 在预定类型进程运行过程中, 还可以根据系统资源的占用率, 选择性的挂起 其他可挂起进程。具体比如,软件管理软件预先设置资源利用率阈值为 80%, 在预定类型进程运行中, 软件管理软件可以获取系统的当前资源占用率, 并 判断获取的该资源占用率是否超过 80%, 如果是, 则说明系统资源紧张, 不 足以保证游戏程序的流畅运行, 此时需要将其他未挂起的可挂起进程挂起。
作为上述方案的优选, 软件管理程序还可以向用户显示挂起权限设置界 面, 根据用户在该挂起权限设置界面中的操作指令将各用户进程的挂起权限 设置为允许或禁止。
当软件管理程序在查询当前正在运行的进程中的可挂起进程, 将与当前 开启的进程无关的用户进程中, 挂起权限设置为允许的用户进程确定为可挂 起进程。 或者, 在将可挂起进程挂起时, 将挂起权限设置为允许的可挂起进 程挂起。
具体地,软件管理程序可以在程序界面中向用户显示各常用的用户进程, 用户可以选择将其中的至少一个用户进程设置为禁止挂起, 其余用户进程默 认设置为允许挂起。
软件管理程序将可挂起进程挂起时, 可以向操作系统发送挂起可挂起进 程中的至少一个进程的指令, 以便操作系统暂停该至少一个进程, 并释放暂 停的该至少一个进程所占用的资源。
具体地, Windows系统包含应用层与驱动层, 其中, 驱动层控制系统的 程序驱动, 应用层控制用户应用的程序驱动。 软件管理程序在对查询到的可 挂起进程设置挂起优先级之后, 会向操作系统的应用层发送挂起至少一个用 户进程的指令, 以便操作系统将该至少一个用户进程暂停, 并将该至少一个 用户进程从硬件内存中调离, 以保证预定类型进程运行中所需要的资源, 实 现资源优化。
优选地, 假设该预定类型进程为游戏进程, 软件管理程序在用户进入游 戏, 且对资源进行优化后, 在屏幕中显示状态提示, 用于提示用户已经对系 统资源进行了优化。 具体地, 请参见图 3所示的提示窗口示意图。
步骤 205, 软件管理程序检测当前运行的预定类型进程是否关闭, 若检 测到当前运行的预定类型进程关闭, 则恢复该挂起的至少一个进程。
本实施例提供的方法中, 软件管理程序通过将系统中正在运行的无关进 程挂起, 来达到在预定类型进程运行时进行资源优化的目的, 同时, 为了保 证资源优化前后系统运行情况能够保持一致, 以避免在预定类型进程关闭后 已挂起进程仍然不可运行的情况, 进一步地, 软件管理程序还会检测当前运 行的预定类型进程是否关闭。 若检测到当前运行的预定类型进程关闭, 则向 操作系统发送恢复该挂起的至少一个进程的指令, 以便操作系统恢复该挂起 的至少一个进程。
具体地,软件管理程序向 Windows应用层发送挂起至少一个用户进程的 指令时, 还会保存该至少一个用户进程的列表, 当检测到预定类型进程关闭 时, 再按照保存的该列表, 通过调用 Windows 系统的 API ( Application Programming Interface,应用程序编程接口) 的方式, 向 Windows系统发送启 动该至少一个用户进程的命令, 以便 Windows 系统恢复挂起的至少一个进 程。
综上所述, 本发明实施例提供的资源优化方法, 通过在检测到预定类型 进程开启时, 将其他进程挂起, 以保证该预定类型进程运行时需要的资源, 既解决了现有技术中运行某些进程后系统资源不足的问题, 也解决了现有技 术中需要用户手动关闭应用或进程、 以及因用户误关闭某些系统进程从而导 致系统崩溃的问题,达到在有限资源条件下提升预定类型进程的运行流畅度, 提高设备性能的目的; 同时, 通过在检测到预定类型进程关闭时, 将挂起的 进程恢复, 解决了资源优化前后系统运行情况不一致的问题, 达到了在预定 类型进程关闭后已挂起进程可以继续运行的目的; 还通过在检测到当前运行 的预定类型进程为非全屏显示时, 不挂起其他进程, 解决了预定类型进程在 非全屏显示情况下运行时, 其他进程不可用的问题, 达到了当预定类型进程 在非全屏显示情况下运行时, 其他进程也可以运行的目的。
对应于上述第一实施例提供的资源优化方法, 参见图 4, 图 4示出了根 据本发明第一实施例提供的资源优化装置的结构图, 该资源优化装置可以应 用于软件管理程序中。 该资源优化装置可以包括:
开启检测模块 401 , 用于检测当前开启的进程是否为预定类型进程。 进程查询模块 402, 用于若开启检测模块 401检测到当前开启的进程为 预定类型进程, 则查询当前正在运行的其他进程中的可挂起进程。
进程挂起模块 403, 用于将所述进程查询模块查询到的可挂起进程中的 至少一个进程挂起。
其中, 开启检测模块 401 , 具体用于, 根据当前开启的进程的名称是否 存在于预设的预定类型进程名称列表以及当前开启的进程的运行路径是否存 在于预设的预定类型进程运行路径列表这两种方法中的一种或两种, 来检测 当前开启的进程是否为预定类型进程。
其中, 预设的预定类型进程名称列表包括本地存储的预定类型进程名称 列表和网络存储的预定类型进程名称列表, 预设的预定类型进程运行路径细 则列表包括本地存储的预定类型进程运行路径细则列表和网络存储的预定类 型进程运行路径细则列表。
请参见图 5 , 图 5示出了根据本发明第二实施例提供的资源优化装置的 结构图。 其中, 开启检测模块 501包括:
第一检测单元 501a,用于检测当前开启的进程的名称是否存在于本地存 储的预定类型进程名称列表; 若该当前开启进程的名称在本地存储的预定类 型进程的名称列表中存在, 则确认该当前开启的进程为预定类型进程。
第二检测单元 501b, 用于若第一检测单元 501a检测出当前开启的进程 的名称不存在于本地存储的预定类型进程名称列表, 则进一步检测当前开启 的进程的名称是否存在于网络存储的预定类型进程名称列表, 若该当前开启 进程的名称在网络存储的预定类型进程的名称列表中存在, 则确认该当前开 启的进程为预定类型进程; 若该当前开启进程的名称在网络存储的预定类型 进程的名称列表中也不存在, 则确认该当前开启的进程不是预定类型进程。
或者, 第一检测单元 501a, 用于检测当前开启的进程的运行路径细则是 否存在于本地存储的预定类型进程运行路径细则列表中; 若该当前开启进程 的运行路径细则在本地存储的预定类型进程运行路径细则列表中存在, 则确 认该当前开启的进程为预定类型进程。
第二检测单元 501b, 用于若第一检测单元 501a检测出当前开启的进程 的运行路径细则不存在于本地存储的预定类型进程运行路径细则列表, 则进 一步检测当前开启的进程的运行路径细则是否存在于网络存储的预定类型进 程运行路径细则列表, 若该当前开启进程的运行路径细则在网络存储的预定 类型进程运行路径细则列表中存在, 则确认该当前开启的进程为预定类型进 程; 若该当前开启进程的运行路径细则在网络存储的预定类型进程运行路径 细则列表中也不存在, 则确认该当前开启的进程不是预定类型进程。
或者, 第一检测单元 501a和第二检测单元 501b也可以将上述两种方法 结合, 来检测该当前开启的进程是否为预定类型进程。
该装置还包括:
判断模块 504, 用于在检测到当前开启的进程为预定类型进程后, 判断 当前开启的进程是否为全屏显示进程;
若判断模块 504判断当前开启的进程是全屏显示进程, 则进程查询模块
502查询当前正在运行的其它进程中的可挂起进程。
进程查询模块 502, 具体用于查询当前正在运行的其他进程中与当前开 启的进程无关的用户进程, 将查询到的用户进程确定为可挂起进程; 其中, 当前正在运行的其他进程包括系统进程和用户进程。
该装置还包括:
获耳^莫块 505, 用于获取进程查询模块 502确定的可挂起进程的资源占 用量;
优先级设置模块 506, 用于按照获取模块 505获取的可挂起进程的资源 占用量由高到低的顺序, 由高到低地设置可挂起进程的挂起优先级。
进程挂起模块 503, 包括:
第一挂起单元 503a,用于按照优先级设置模块 506设置的可挂起进程的 挂起优先级由高到低的顺序, 将挂起优先级排名靠前的至少一个可挂起进程 挂起;
获取单元 503b, 用于获取系统的当前资源占用率;
判断单元 503c, 用于判断获取的当前资源占用率是否超过预设阈值; 第二挂起单元 503d, 用于若判断单元 503c判断获取的当前资源占用率 超过预设阈值, 则将剩余的可挂起进程挂起。
该装置还包括:
关闭检测模块 507 , 用于检测当前正在运行的预定类型进程是否关闭; 进程恢复模块 508, 用于若关闭检测模块 507检测到当前正在运行的预 定类型进程关闭, 则向操作系统发送恢复挂起的至少一个进程的指令, 以便 操作系统恢复挂起的至少一个进程。
需要说明的是, 本发明第一和第二实施例所提及的预定类型进程可以包 括但不限于游戏进程等资源占用量较高的应用进程。
综上所述, 本发明第一和第二实施例提供的资源优化装置, 通过在检测 到预定类型进程开启时,将其他进程挂起,并在检测到预定类型进程关闭时, 将挂起的进程恢复, 以保证该预定类型进程运行时需要的资源, 既解决了现 有技术中运行某些进程后系统资源不足的问题, 也解决了现有技术中需要用 户手动关闭应用或进程, 以及因用户误关闭某些系统进程从而导致系统崩溃 的问题, 达到在有限资源条件下提升预定类型进程的运行流畅度, 提高设备 性能的目的; 同时, 通过在检测到预定类型进程关闭时, 将挂起的进程恢复, 解决了资源优化前后系统运行情况不一致的问题, 达到了在预定类型进程关 闭后已挂起进程可以继续运行的目的; 还通过在检测到当前运行的预定类型 进程为非全屏显示时, 不挂起其他进程, 解决了预定类型进程在非全屏显示 情况下运行时, 其他进程不可用的问题, 达到了当预定类型进程在非全屏显 示情况下运行时, 其他进程也可以运行的目的。
需要说明的是: 上述实施例提供的资源优化装置在进行资源优化时, 仅 以上述各功能模块的划分进行举例说明, 实际应用中, 可以根据需要而将上 述功能分配由不同的功能模块完成, 即将装置的内部结构划分成不同的功能 模块, 以完成以上描述的全部或者部分功能。 另外, 上述实施例提供的资源 优化装置与资源优化方法实施例属于同一构思, 其具体实现过程详见方法实 施例, 这里不再赘述。
上述本发明实施例序号仅仅为了描述, 不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通 过硬件来完成, 也可以通过程序来指令相关的硬件完成, 所述的程序可以存 储于一种计算机可读存储介质中, 上述提到的存储介质可以是只读存储器, 磁盘或光盘等。
以上所述仅为本发明的较佳实施例, 并不用以限制本发明, 凡在本发明 的精神和原则之内, 所作的任何修改、 等同替换、 改进等, 均应包含在本发 明的保护范围之内。

Claims

权利要求书
1、 一种资源优化方法, 所述方法包括:
检测当前开启的进程是否为预定类型进程;
若检测到所述当前开启的进程为预定类型进程, 则查询当前正在运行的 其它进程中的可挂起进程;
将查询到的所述可挂起进程中的至少一个进程挂起。
2、根据权利要求 1所述的资源优化方法, 其中, 所述检测当前开启的进 程是否为预定类型进程, 包括:
根据所述当前开启的进程的名称是否存在于预设的预定类型进程名称列 表以及所述当前开启的进程的运行路径是否存在于预设的预定类型进程运行 路径列表这两种方法中的一种或两种, 来检测当前开启的进程是否为预定类 型进程。
3、根据权利要求 2所述的资源优化方法, 其中, 所述预设的预定类型进 程名称列表包括本地存储的预定类型进程列表和网络存储的预定类型进程列 表; 所述根据所述当前开启的进程的名称是否存在于预设的预定类型进程名 称列表, 包括:
检测所述当前开启的进程的名称是否存在于本地存储的预定类型进程名 称列表;
若检测出所述当前开启的进程的名称不存在于本地存储的预定类型进程 名称列表, 则进一步检测所述当前开启的进程的名称是否存在于网络存储的 预定类型进程名称列表。
4、根据权利要求 2所述的资源优化方法, 其中, 所述查询当前正在运行 的其它进程中的可挂起进程之前, 还包括:
在检测到所述当前开启的进程为预定类型进程后, 判断所述当前开启的 进程是否为全屏显示进程;
若所述当前开启的进程是全屏显示进程, 则执行所述查询当前正在运行 的其它进程中的可挂起进程的步骤。
5、根据权利要求 1至 4任一所述的资源优化方法, 其中, 所述查询当前 正在运行的其他进程中的可挂起进程, 包括: 查询当前正在运行的其他进程中与所述当前开启的进程无关的用户进 程, 将所述查询到的用户进程确定为可挂起进程。
6、根据权利要求 5所述的资源优化方法, 其中, 所述将所述查询到的用 户进程确定为可挂起进程之后, 所述方法还包括:
获取查询到的所述可挂起进程的资源占用量;
按照获取的所述可挂起进程的资源占用量由高到低的顺序, 由高到低地 设置所述可挂起进程的挂起优先级。
7、根据权利要求 6所述的资源优化方法, 其中, 所述将查询到的所述可 挂起进程中的至少一个进程挂起, 包括:
按照设置的所述可挂起进程的挂起优先级由高到低的顺序, 将挂起优先 级排名靠前的至少一个可挂起进程挂起。
8、根据权利要求 7所述的资源优化方法, 其中, 在将挂起优先级排名靠 前的至少一个可挂起进程挂起之后, 还包括:
获取系统的当前资源占用率, 判断获取的所述当前资源占用率是否超过 预设阈值;
若判断获取的所述当前资源占用率超过预设阈值, 则将剩余的可挂起进 程挂起。
9、 根据权利要求 8所述的资源优化方法, 其中, 所述方法还包括: 检测当前运行的预定类型进程是否关闭;
若检测到当前运行的预定类型进程关闭, 则向操作系统发送恢复所述挂 起的至少一个进程的指令,以便所述操作系统恢复所述挂起的至少一个进程。
10、 一种资源优化装置, 所述装置包括:
开启检测模块, 用于检测当前开启的进程是否为预定类型进程; 进程查询模块, 用于若所述开启检测模块检测到当前开启的进程为预定 类型进程, 则查询当前正在运行的其他进程中的可挂起进程;
进程挂起模块, 用于将所述进程查询模块查询到的可挂起进程中的至少 一个进程挂起。
11、 根据权利要求 10所述的资源优化装置, 其中,
所述开启检测模块, 具体用于, 根据所述当前开启的进程的名称是否存 在于预设的预定类型进程名称列表以及所述当前开启的进程的运行路径是否 存在于预设的预定类型进程运行路径列表这两种方法中的一种或两种, 来检 测当前开启的进程是否为预定类型进程。
12、根据权利要求 11所述的资源优化装置, 其中, 所述预设的预定类型 进程名称列表包括本地存储的预定类型进程列表和网络存储的预定类型进程 列表; 所述开启检测模块, 包括:
第一检测单元, 用于检测所述当前开启的进程的名称是否存在于本地存 储的预定类型进程名称列表;
第二检测单元, 用于若所述第一检测单元检测出所述当前开启的进程的 名称不存在于本地存储的预定类型进程名称列表, 则进一步检测所述当前开 启的进程的名称是否存在于网络存储的预定类型进程名称列表。
13、 根据权利要求 11所述的资源优化装置, 其中, 所述装置还包括: 判断模块, 用于在检测到所述当前开启的进程为预定类型进程后, 判断 所述当前开启的进程是否为全屏显示进程;
若所述判断模块判断当前开启的进程是全屏显示进程, 则所述进程查询 模块执行所述查询当前正在运行的其它进程中的可挂起进程的步骤。
14、 根据权利要求 10至 13任一所述的资源优化装置, 其中,
所述进程查询模块, 具体用于查询当前正在运行的其他进程中与所述当 前开启的进程无关的用户进程,将所述查询到的用户进程确定为可挂起进程。
15、 根据权利要求 14所述的资源优化装置, 其中, 所述装置还包括: 获取模块, 用于获取所述进程查询模块确定的所述可挂起进程的资源占 用量;
优先级设置模块, 用于按照获取的所述可挂起进程的资源占用量由高到 低的顺序, 由高到低地设置所述可挂起进程的挂起优先级。
16、 根据权利要求 15所述的资源优化装置, 其中, 所述进程挂起模块, 包括:
第一挂起单元, 用于按照所述优先级设置模块设置的所述可挂起进程的 挂起优先级由高到低的顺序, 将挂起优先级排名靠前的至少一个可挂起进程 挂起。
17、 根据权利要求 16所述的资源优化装置, 其中, 所述进程挂起模块, 还包括: 获取单元, 用于获取系统的当前资源占用率;
判断单元, 用于判断获取的所述当前资源占用率是否超过预设阈值; 第二挂起单元, 用于若所述判断单元判断获取的所述当前资源占用率超 过预设阈值, 则将剩余的可挂起进程挂起。
18、 根据权利要求 17所述的资源优化装置, 其中, 所述装置还包括: 关闭检测模块, 用于检测当前正在运行的预定类型进程是否关闭; 进程恢复模块, 用于若所述关闭检测模块检测到当前正在运行的预定类 型进程关闭, 则向操作系统发送恢复所述挂起的至少一个进程的指令, 以便 所述操作系统恢复所述挂起的至少一个进程。
PCT/CN2013/085008 2012-12-07 2013-10-11 资源优化方法及装置 Ceased WO2014086202A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US14/733,097 US9477527B2 (en) 2012-12-07 2015-06-08 Resource optimization method and apparatus

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201210521593.7 2012-12-07
CN201210521593.7A CN103853610B (zh) 2012-12-07 2012-12-07 资源优化方法及装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US14/733,097 Continuation US9477527B2 (en) 2012-12-07 2015-06-08 Resource optimization method and apparatus

Publications (1)

Publication Number Publication Date
WO2014086202A1 true WO2014086202A1 (zh) 2014-06-12

Family

ID=50861297

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2013/085008 Ceased WO2014086202A1 (zh) 2012-12-07 2013-10-11 资源优化方法及装置

Country Status (3)

Country Link
US (1) US9477527B2 (zh)
CN (1) CN103853610B (zh)
WO (1) WO2014086202A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017014893A1 (en) * 2015-07-18 2017-01-26 CapsoVision, Inc. Method of automatic allocation of processing power and system resource for image viewing and processing application
WO2017063366A1 (zh) * 2015-10-14 2017-04-20 深圳Tcl数字技术有限公司 应用启动方法和系统

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105224469A (zh) * 2014-06-16 2016-01-06 陈宏达 主动式内存管理方式
CN104503750A (zh) * 2014-12-15 2015-04-08 北京奇虎科技有限公司 进程清理方法及装置
CN106293901B (zh) * 2015-05-22 2020-06-02 腾讯科技(深圳)有限公司 一种终端应用的进程管理方法及装置
CN105159770B (zh) * 2015-09-21 2018-07-20 天脉聚源(北京)传媒科技有限公司 一种进程的管理方法及装置
CN105549824A (zh) * 2015-12-26 2016-05-04 魅族科技(中国)有限公司 一种显示控制方法及移动终端
CN105677403B (zh) * 2015-12-31 2018-11-06 北京金山安全软件有限公司 一种数据处理方法、装置及设备
CN106055408B (zh) 2016-05-31 2017-11-24 广东欧珀移动通信有限公司 一种应用控制方法及移动终端
CN106919446A (zh) * 2016-06-07 2017-07-04 阿里巴巴集团控股有限公司 目标应用程序的选取方法及装置
CN106155790B (zh) * 2016-06-30 2020-02-18 宇龙计算机通信科技(深圳)有限公司 应用程序的管理方法、管理装置和终端
CN106201685A (zh) * 2016-06-30 2016-12-07 宇龙计算机通信科技(深圳)有限公司 一种应用冻结的方法、装置以及终端
CN106293913A (zh) * 2016-08-01 2017-01-04 宇龙计算机通信科技(深圳)有限公司 应用程序的控制方法、控制装置和终端
CN106648943A (zh) * 2016-09-22 2017-05-10 郑州云海信息技术有限公司 一种Smart Rack系统性能测试内存优化的方法
CN106776010B (zh) * 2016-11-23 2020-06-05 广州华多网络科技有限公司 一种资源配置方法及终端
CN107357651B (zh) * 2017-06-09 2021-02-26 北京安云世纪科技有限公司 应用加速方法、装置以及终端
CN110032321B (zh) * 2018-01-12 2024-02-20 Oppo广东移动通信有限公司 应用程序处理方法和装置、电子设备、计算机可读存储介质
CN109710436B (zh) * 2018-08-17 2021-03-30 深圳壹账通智能科技有限公司 空间清理方法、装置、设备和计算机可读存储介质
CN109726003B (zh) * 2019-01-04 2020-09-15 Oppo广东移动通信有限公司 应用解冻的处理方法、电子装置及计算机可读存储介质
CN109857561B (zh) * 2019-02-12 2021-03-26 武汉深之度科技有限公司 一种内存管理方法及计算设备
CN110955518A (zh) * 2019-10-31 2020-04-03 北京浪潮数据技术有限公司 一种分布式存储管理系统的压力负载调整方法
DE102019219260A1 (de) * 2019-12-10 2021-06-10 Robert Bosch Gmbh Verfahren zum Betreiben einer Recheneinheit
CN112988435B (zh) * 2019-12-16 2024-12-27 中国电信股份有限公司 数据库过载保护处理方法和装置、存储介质
US12530232B2 (en) 2021-10-08 2026-01-20 Bank Of America Corporation Cognitive convergence engine for resource optimization
CN120281870A (zh) * 2025-05-06 2025-07-08 南京普天天纪楼宇智能有限公司 会议软件交互方法、装置、设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101464810A (zh) * 2008-12-31 2009-06-24 金蝶软件(中国)有限公司 服务程序处理方法及服务器
CN101694631A (zh) * 2009-09-30 2010-04-14 曙光信息产业(北京)有限公司 实时作业调度系统及方法
CN102521034A (zh) * 2011-12-27 2012-06-27 惠州Tcl移动通信有限公司 一种基于android系统的多任务管理方法及其系统

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5826057A (en) * 1992-01-16 1998-10-20 Kabushiki Kaisha Toshiba Method for managing virtual address space at improved space utilization efficiency
US6859792B1 (en) * 2000-04-20 2005-02-22 Altair Engineering, Inc. Product suite licensing method
US7716668B2 (en) * 2002-12-16 2010-05-11 Brooktree Broadband Holding, Inc. System and method for scheduling thread execution
US8079034B2 (en) * 2003-09-15 2011-12-13 Intel Corporation Optimizing processor-managed resources based on the behavior of a virtual machine monitor
EP1734748A4 (en) * 2004-04-06 2008-12-03 Panasonic Corp PROGRAM EXECUTION DEVICE
US8968077B2 (en) * 2006-04-13 2015-03-03 Idt Methods and systems for interfacing with a third-party application
WO2008078329A2 (en) * 2006-12-27 2008-07-03 More It Resources Ltd. Method and system for transaction resource control
US20080172668A1 (en) * 2007-01-12 2008-07-17 Tzruya Yoav M Profile-based cpu/core affinity
CN101478407B (zh) * 2008-01-03 2011-05-25 联想(北京)有限公司 在线安全登录的方法及装置
JP4612710B2 (ja) * 2008-06-02 2011-01-12 株式会社日立製作所 トランザクション並行制御方法、データベース管理システム、およびプログラム
US8935697B2 (en) * 2011-08-10 2015-01-13 Microsoft Corporation Suspension and/or throttling of processes for connected standby
CN103793265B (zh) * 2012-10-30 2016-05-11 腾讯科技(深圳)有限公司 优化进程的处理方法及装置
CN102981906A (zh) * 2012-11-16 2013-03-20 广东欧珀移动通信有限公司 一种应用程序后台进程管理方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101464810A (zh) * 2008-12-31 2009-06-24 金蝶软件(中国)有限公司 服务程序处理方法及服务器
CN101694631A (zh) * 2009-09-30 2010-04-14 曙光信息产业(北京)有限公司 实时作业调度系统及方法
CN102521034A (zh) * 2011-12-27 2012-06-27 惠州Tcl移动通信有限公司 一种基于android系统的多任务管理方法及其系统

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017014893A1 (en) * 2015-07-18 2017-01-26 CapsoVision, Inc. Method of automatic allocation of processing power and system resource for image viewing and processing application
WO2017063366A1 (zh) * 2015-10-14 2017-04-20 深圳Tcl数字技术有限公司 应用启动方法和系统

Also Published As

Publication number Publication date
US9477527B2 (en) 2016-10-25
US20150309843A1 (en) 2015-10-29
CN103853610A (zh) 2014-06-11
CN103853610B (zh) 2018-11-16

Similar Documents

Publication Publication Date Title
WO2014086202A1 (zh) 资源优化方法及装置
US9021243B2 (en) Method for increasing free memory amount of main memory and computer therefore
CN102934085B (zh) 在多环境操作系统中多个环境之间切换的系统和方法
US8589733B2 (en) Saving operational state of open applications when unexpected shutdown events occur
JP5960262B2 (ja) 接続型スタンバイのためのプロセスの一時停止及び/又は制限
CN102473102B (zh) 用于发起多环境操作系统的系统和方法
EP2831796B1 (en) Persistent and resilient worker processes
CN101673216B (zh) 应用程序关闭方法和装置
JP5951771B2 (ja) 接続型スタンバイのためのプロセスの一時停止及び/又は制限
US8499143B2 (en) Method for shortening the boot time of a computer system
JP5960263B2 (ja) 接続型スタンバイのためのプロセスの一時停止及び/又は制限
CN102792274A (zh) 多环境操作系统
WO2013086988A1 (zh) 软件安装方法及装置
CN102047225A (zh) 优先级控制装置以及优先级控制方法
CN107197053A (zh) 一种负载均衡方法和装置
EP3000024B1 (en) Dynamically provisioning storage
US20150378782A1 (en) Scheduling of tasks on idle processors without context switching
CN106886450A (zh) 任务调度方法和系统
CN109660393B (zh) 一种云主机规格的更新方法及其装置
US7360101B2 (en) Apparatus and method for controlling CPU speed transition
US9690619B2 (en) Thread processing method and thread processing system for setting for each thread priority level of access right to access shared memory
CN116700817A (zh) 应用程序运行的方法及电子设备
US9959187B2 (en) Decoalescing resource utilization at boot
CN116755840A (zh) 虚拟机运行控制方法、装置、设备及介质
US10121001B1 (en) System and method for monolithic scheduling in a portable computing device using a hypervisor

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13860689

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205N DATED 13/08/2015)

122 Ep: pct application non-entry in european phase

Ref document number: 13860689

Country of ref document: EP

Kind code of ref document: A1