Application process priority management method and device and storage medium

By detecting and adjusting the priority of the application process in the terminal device, the problem of flexibly adjusting the priority in the prior art is solved, and flexible priority management and normal operation of the application process are realized.

CN119576485APending Publication Date: 2025-03-07BEIJING XIAOMI MOBILE SOFTWARE CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202311152921.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-09-07
Publication Date
2025-03-07

AI Technical Summary

Technical Problem

In the priorities of application processes in the prior art, once the priority of application processes is set, the infrequent application processes that need to be used temporarily are cleaned up in advance, affecting the normal use of application processes.

Method used

When the terminal device loads the target application process, determine whether the application process is an application process in the preconfigured process collection, and prioritizes it according to the preset adjustment priority.

Benefits of technology

It realizes flexible adjustment of application process priorities, improves the flexibility and practicality of application process priorities, and ensures the normal operation and operation reliability of application processes.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119576485A_ABST
    Figure CN119576485A_ABST
Patent Text Reader

Abstract

The invention relates to an application process priority management method and device and a storage medium, and the method comprises the steps: when it is detected that terminal equipment loads a target application process, determining whether the target application process is an application process in a pre-configured process set, and setting an adjustment priority for the application process in the process set; and when the target application process is the application process in the process set, performing priority adjustment on the target application process based on the adjustment priority of the target application process, and running the target application process according to a target priority obtained after adjustment. In this way, the flexibility and practicability of application process priority adjustment can be improved, and the reliability of application process operation can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of computer technology, and in particular to an application process priority management method, device and storage medium. Background Art

[0002] In current terminal devices, such as smartphones, applications need to be run through background application processes. When there are many application processes loaded and running, in order to improve the system operation efficiency, the terminal device will usually clean up these application processes. Therefore, in the relevant technology, the application process of each application will be prioritized. During the cleaning process, the commonly used and higher priority application processes will usually be kept alive, and the infrequently used and lower priority application processes will be cleaned up, thereby improving the system operation efficiency and ensuring the normal operation of commonly used application processes. However, the priority of each application cannot be adjusted at will after it is set. When some infrequently used application processes are temporarily used, they will be cleaned up in advance, which will affect the normal use of the application process.

[0003] Therefore, there is an urgent need to propose a better application process priority management solution. Summary of the invention

[0004] In order to overcome the problems existing in the related technology, the present disclosure provides an application process priority management method, device and storage medium, which can conveniently and flexibly adjust the priority of the application process according to the actual requirements of the user, which is conducive to improving the flexibility and practicality of the application process priority adjustment, while also ensuring the normal operation of the application process, which is conducive to improving the reliability of the application process operation.

[0005] According to a first aspect of an embodiment of the present disclosure, a method for managing application process priority is provided, including:

[0006] When detecting that the terminal device loads the target application process, determining whether the target application process is an application process in a pre-configured process set, and setting an adjustment priority for the application process in the process set;

[0007] When the target application process is an application process in the process set, the priority of the target application process is adjusted based on the adjustment priority of the target application process, and the target application process is run according to the target priority obtained after the adjustment.

[0008] In some embodiments, adjusting the priority of the target application process based on the adjusted priority of the target application process includes:

[0009] Obtaining the current priority of the target application process;

[0010] The priority of the target application process is adjusted based on the current priority of the target application process and the adjusted priority of the target application process to obtain a target priority of the target application process.

[0011] In some embodiments, the target priority of the target application process is:

[0012] Nice = ba% (b + 20);

[0013] Wherein, Nice is the target priority of the target application process, b is the current priority of the target application process, a is the adjusted priority of the target application process, and % is a modulo operation.

[0014] In some embodiments, the method further comprises:

[0015] Displaying a user interface, the user interface including at least one application process to be adjusted and a priority adjustment range of the application process;

[0016] The configuration operation performed on the application process to be adjusted based on the priority adjustment range of the application process in the user interface is detected to obtain the process set.

[0017] In some embodiments, the method further comprises:

[0018] Displaying a user interface, the user interface including at least one application to be adjusted, the application to be adjusted including at least one application process to be adjusted, each application process to be adjusted being set with a corresponding priority adjustment range;

[0019] The configuration operation performed on the application process to be adjusted and the priority adjustment range of the application process in the application to be adjusted is detected in the user interface to obtain the process set.

[0020] In some embodiments, the process set includes process information of at least one application process and an adjustment priority of the application process, and the process set is stored in a preconfigured map data structure.

[0021] In some embodiments, the method further comprises:

[0022] The target priority of the target application process is updated accordingly to the map data structure.

[0023] In some embodiments, the terminal device includes a user space and a kernel space, and when detecting that the terminal device loads a target application process, determining whether the target application process is an application process in a preconfigured process set includes:

[0024] Obtaining a map handle in the system kernel in the user space, and passing a preconfigured process set to the kernel space based on the map handle;

[0025] The step of determining whether the target application process is an application process in a preconfigured process set when detecting that the terminal device loads the target application process is executed in the kernel space.

[0026] According to a second aspect of an embodiment of the present disclosure, there is provided an application process priority management device, comprising:

[0027] A determination module is configured to, when detecting that the terminal device loads a target application process, determine whether the target application process is an application process in a pre-configured process set, wherein the application processes in the process set are set with an adjustment priority;

[0028] The adjustment module is configured to adjust the priority of the target application process based on the adjustment priority of the target application process when the target application process is an application process in the process set, and run the target application process according to the adjusted target priority.

[0029] For the contents not introduced or described in the embodiments of the present disclosure, please refer to the relevant introduction in the aforementioned method embodiments, and the embodiments of the present disclosure are not limited thereto.

[0030] According to a third aspect of an embodiment of the present disclosure, a terminal device is provided, comprising: a processor; and a memory for storing processor executable instructions; wherein the processor is configured to execute the executable instructions to implement the steps of the above-mentioned application process priority management method.

[0031] According to a fourth aspect of an embodiment of the present disclosure, a computer-readable storage medium is provided, on which computer program instructions are stored. When the program instructions are executed by a processor, the steps of the application process priority management method provided by the first aspect of the present disclosure are implemented.

[0032] According to a fifth aspect of an embodiment of the present disclosure, a chip is provided, including: a processor and an interface; the processor is used to read instructions to execute the steps of the above-mentioned application process priority management method.

[0033] The technical solution provided by the embodiments of the present disclosure may include the following beneficial effects: when the terminal device detects that the target application process is loaded, it determines whether the target application process is an application process in a pre-configured process set, and the application processes in the process set are set with an adjustment priority; when the target application process is an application process in the process set, the target application process is prioritized based on the adjustment priority of the target application process, and the target application process is run according to the target priority obtained after the adjustment. It can be seen that when the terminal device determines that the target application process is an application process in a pre-configured process set, it can automatically adjust the priority of the target application process according to the preset adjustment priority of the target application process, thereby meeting the user's usage needs and intelligently and flexibly realizing the adjustment of the application process priority, which is conducive to improving the flexibility and practicality of the application process priority adjustment. It is further possible to run or start the above-mentioned target application process according to the target priority obtained after the adjustment, which ensures the normal operation of the application process and is conducive to improving the reliability of the application process operation.

[0034] It is to be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the present disclosure. BRIEF DESCRIPTION OF THE DRAWINGS

[0035] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present disclosure and, together with the description, serve to explain the principles of the present disclosure.

[0036] Figure 1 It is a schematic diagram of a system framework according to an exemplary embodiment.

[0037] Figure 2 is another system framework schematic diagram shown according to an exemplary embodiment.

[0038] Figure 3 The figure is a flowchart of a method for managing application process priority according to an exemplary embodiment.

[0039] Figure 4 The figure is a schematic diagram of the structure of a device for managing application process priority according to an exemplary embodiment.

[0040] Figure 5 The figure is a schematic diagram of the structure of another device for managing application process priority according to an exemplary embodiment.

[0041] Figure 6 The diagram is a schematic structural diagram of a terminal device according to an exemplary embodiment.

[0042] Figure 7The figure is a schematic diagram showing the structure of a chip according to an exemplary embodiment. DETAILED DESCRIPTION

[0043] Exemplary embodiments will be described in detail herein, examples of which are shown in the accompanying drawings. When the following description refers to the drawings, the same numbers in different drawings represent the same or similar elements unless otherwise indicated. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present disclosure. Instead, they are merely examples of devices and methods consistent with some aspects of the present disclosure as detailed in the appended claims.

[0044] It should be noted that all actions of acquiring signals, information or data in the present disclosure are carried out in compliance with the relevant data protection laws and policies of the country where the device is located and with the authorization given by the owner of the corresponding device.

[0045] Although the system kernel of terminal devices has been continuously developing, its scalability is not strong; with the emergence of the Extended Berkeley Packet Filter (eBPF), it can be used to safely extend the kernel. At the same time, there are many priority scheduling or adjustment schemes for tasks (schedules), such as improving the priority of program (application process) scheduling by extending the kernel scheduler and improving the information between the user and the scheduler based on the user programmable scheduler in the kernel; another example is the Android priority (Android ADJ) algorithm, which adjusts the priority value in the source code to achieve the purpose of application process priority adjustment. However, none of the above schemes involve user-level application process priority adjustment / scheduling, and radical adjustment schemes may cause problems such as kernel crashes or application crashes.

[0046] To solve the above problems, the present disclosure proposes an application process priority management method, device, equipment, storage medium and chip. Figure 1 FIG. 1 is a schematic diagram of a system framework according to an exemplary embodiment. Figure 1 The system shown is applied in a terminal device, and the system may include a user control module 100, an eBPF module 200 and an application execution module 300. Among them:

[0047] The user control module 100 can be used to obtain the process information of the application process to be adjusted and customize the application process / set the corresponding application information according to actual needs, such as setting the adjustment priority of the application process. Figure 2 FIG. 1 is another schematic diagram of a system framework according to an exemplary embodiment. Figure 2As shown, the user control module 100 may include an information acquisition unit 101 and a user adjustment unit 102. The information acquisition unit 101 may add at least one application to be adjusted (that is, the application process corresponding to the application) in the user interface, and obtain the process information of the application process, such as the process name, process descriptor (Process Identifier, PID), process identification ID or other process information, through the setting function (such as getPackageArchiveInfo function) in the application programming interface (Application Programming Interface, API) interface; thereby forming a pre-configured process set {P}, which may also be referred to as a pre-configured process set. The user adjustment unit 102 supports priority adjustment of each application process. For example, the user can adjust / select a corresponding adjustment priority for the selected application process within the corresponding priority adjustment range. The value of the adjustment priority is customized according to the actual situation, such as a value a, etc. The priority adjustment range is customized by the user or the terminal device according to the actual situation, for example, it can be 1 to 100, etc., and the present disclosure does not make too many restrictions.

[0048] The eBPF module 200 can expand the kernel functions and ensure the security of system operation. Figure 2 , the eBPF module 200 includes a user space 201 (also called user code space, UeserProgram) and a kernel space (also called kernel code space, Kernel Program). Among them, the user space can load the kernel code into the eBPF object in a format file compiled into the kernel (such as a ".O" file), and obtain the map handle defined in the system kernel, which is used for information transfer between the user space 201 and the kernel space 202. The map handle can further be used to pass process information and adjustment priority information of each application process in the pre-configured process set to the kernel space 202. The user space 201 can also load the kernel code (also called BPF code) as bytecode into the system kernel, so that the kernel space 202 executes the kernel code and adjusts the priority of a specific target application process, thereby achieving the purpose of priority adjustment. How to adjust the priority of the target application process will be described in detail below in this disclosure, and will not be repeated here.

[0049] The kernel space 202 can first define a map data structure shared between the user space 201 and the kernel space 202, and the map data structure includes the process information and adjustment priority and other information of each application process in the above-mentioned pre-configured process set. In other words, the above-mentioned pre-configured process set (specifically, the process information and adjustment priority and other information of each application process in the process set) can be represented or stored using a map data structure. The kernel space 202 can also support process detection, and specifically, it can mount / trigger the corresponding kernel code when the application process is created to load / start the corresponding program code of the application process. The kernel space 202 can also execute kernel code to adjust the priority of a specific target application process so as to subsequently start the target application process after the priority adjustment.

[0050] The following takes the Map data structure as an example, and a brief explanation is given as shown in Table 1 below.

[0051] Table 1

[0052]

[0053] As shown in Table 1 above, the map data structure is a key-value pair storage data structure that allows values ​​to be found by key. The structure also adds information such as the priority of the application process.

[0054] The application execution module 300 can load the target application process. For example, when a startup instruction for the target application process is detected, the target application process can be loaded in response to the instruction. Specifically, the target application process can be loaded by executing the file execve() system call (syscall), and then the priority of the target application process is adjusted through the eBPF module 200 to obtain the target priority of the target application process. Finally, the target application process is started through the task (schedule) scheduling. Usually, since the priority of the target application process is increased, the target application corresponding to the target application process will also start faster.

[0055] Based on the above examples, see Figure 3 FIG. 1 is a flow chart showing a method for managing application process priority according to an exemplary embodiment. Figure 3 The method shown is applied to a terminal device, and the method may include the following implementation steps:

[0056] S301. When it is detected that a terminal device loads a target application process, determine whether the target application process is an application process in a preconfigured process set, where the application processes in the process set are set with adjustment priorities.

[0057] When loading the target application process, the terminal device may first determine whether the target application process is an application process in a pre-configured process set (hereinafter referred to as a pre-configured process set in this disclosure). When the target application process is an application process in the pre-configured process set, step S302 may be continued; otherwise, the target application process may be started. Usually, application processes and applications correspond one to one. For an application, there is one application process corresponding to it. The process information of the application process includes, but is not limited to, for example, a process name, a process descriptor, a process ID, or other related information used to describe the application process.

[0058] The present disclosure does not limit the detection implementation method of the above-mentioned loading target application process. For example, when the terminal device receives a startup instruction for the target application process, it can respond to the startup instruction and load the target application process.

[0059] The present disclosure does not limit the above-mentioned pre-configured process set, which may include the process information of at least one application process and the adjustment priority of the application process, wherein the adjustment priority of the application process may be the priority customized by the terminal device system according to the actual situation, that is, the priority assigned by the system by default and not adjusted by the user, etc.; it may also be customized / configured according to the actual needs of the user, such as the priority customized or adjusted by the user according to the actual situation. For example, the terminal device (specifically, the user control module 100) may display a user interface, which includes at least one application process that supports user-defined selection and adjustment and the priority adjustment range supported by the application process, that is, at least one application process to be adjusted and the priority adjustment range of the application process are displayed on the user interface. The priority adjustment range is customized according to actual needs, such as 1 to 100, etc. Further, the configuration operation performed on the application process to be adjusted based on the priority adjustment range of the application process in the above-mentioned user interface may be detected, such as detecting that the user selects one or more application processes to be adjusted on the user interface, and configures the priority of the application process within the priority adjustment range of the application process, so as to obtain the above-mentioned pre-configured process set.

[0060] For another example, the terminal device (specifically, the user control module 100) can display a user interface, which includes at least one application to be adjusted that supports user-defined selection, each application to be adjusted includes at least one application process to be adjusted, and optionally each application process to be adjusted is provided with a corresponding priority adjustment range. The introduction of the priority adjustment range can be referred to the relevant introduction in the aforementioned embodiment, which will not be repeated here. Further, the configuration operation of the application process to be adjusted and the priority adjustment range of the application process in the above-mentioned application to be adjusted can be detected in the above-mentioned user interface, for example, the user selects an application to be adjusted that needs to be adjusted on the user interface, and selects one or more application processes to be adjusted under the application to be adjusted, and then the priority configuration operation is performed on the application process based on the priority adjustment range of each application process to be adjusted, so as to obtain the above-mentioned pre-configured process set.

[0061] In some embodiments, the above-mentioned pre-configured process set (specifically, the process information of each application process included in the set and the adjustment priority of the application process) can be stored or represented using a preset map data structure. The introduction of the map data structure can be referred to the relevant introduction in the above-mentioned embodiment, which will not be repeated here.

[0062] In a specific implementation, the terminal device (e.g., eBPF module 200) includes a user space and a kernel space. The terminal device can obtain a map handle in the system kernel in the user space, and then use the map handle to pass the above-mentioned pre-configured process set to the kernel space. It is convenient to load the target application process in the kernel space and determine whether the target application process is an application process in the above-mentioned pre-configured process set. For the content not introduced or described in this disclosure, please refer to the above-mentioned Figure 1 and Figure 2 The relevant introduction in the embodiments will not be repeated here.

[0063] S302: When the target application process is an application process in the process set, adjust the priority of the target application process based on the adjustment priority of the target application process, and run the target application process according to the adjusted target priority.

[0064] When the terminal device determines that the target application process is an application process in the pre-configured process set, it can adjust the priority of the target application process based on the adjustment priority of the target application process to obtain the target priority of the target application process, and further start or run the target application process according to the target priority.

[0065] The present disclosure does not limit the implementation method of adjusting the priority of the target application process. For example, the present disclosure can obtain the current priority of the target application process, and then determine the target priority of the target application process based on the current priority of the target application process and the adjusted priority of the target application process. The implementation method of determining the target priority of the target application process is also not limited. For example, the present disclosure can use a preset priority formula to calculate the current priority of the target application process and the adjusted priority of the target application process. The following formula (1) shows a possible target priority calculation formula:

[0066] Nice=ba%(b+20) formula (1)

[0067] Among them, Nice represents / is the target priority of the above target application process, b represents / is the current priority of the above target application process, a represents / is the adjusted priority of the above target application process, and % represents / is the remainder operation.

[0068] In some optional embodiments, after obtaining the target priority of the target application process, the terminal device may update the target priority of the target application process to the map data structure so that subsequent users can view or use it.

[0069] In some optional embodiments, after obtaining the target priority of the target application process, the terminal device may start the target application process based on the target priority of the target application process to start the target application corresponding to the target application process for normal use by the user, etc. Usually, when the target priority of the target application process is higher than the current priority of the target application process, the terminal device may speed up the start of the target application process based on the target priority of the target application process, so that the application corresponding to the target application process is started faster.

[0070] By implementing the embodiments of the present disclosure, the present disclosure can adjust the priority of the application process within a safe priority adjustment range, and while realizing the accelerated startup of the application process, it can also ensure the stability and security of the system operation, and also improve the running speed of the application process, which is beneficial to improving the user experience. In addition, the present disclosure also uses eBPF technology to adjust the priority of the application process, and can ensure the security of the system operation without affecting the system running speed. It can be seen that when the terminal device determines that the target application process is an application process in the pre-configured process set, it can automatically adjust the priority of the target application process according to the preset adjustment priority of the target application process, thereby being able to meet the user's usage needs and intelligently and flexibly realize the adjustment of the application process priority, which is beneficial to improving the flexibility and practicality of the application process priority adjustment.

[0071] Based on the above examples, see Figure 4 FIG. 1 is a schematic diagram showing a structure of an application process priority management device according to an exemplary embodiment. Figure 4 The device shown can be applied to a terminal device, and the device may include a determination module 401 and an adjustment module 402. Among them:

[0072] The determination module 401 is configured to determine, when detecting that the terminal device loads the target application process, whether the target application process is an application process in a pre-configured process set, where the application processes in the process set are set with an adjustment priority;

[0073] The adjustment module 402 is configured to adjust the priority of the target application process based on the adjustment priority of the target application process when the target application process is an application process in the process set, and run the target application process according to the adjusted target priority.

[0074] In some embodiments, the adjustment module 402 is configured to obtain the current priority of the target application process; adjust the priority of the target application process based on the current priority of the target application process and the adjusted priority of the target application process to obtain the target priority of the target application process.

[0075] In some embodiments, the target priority of the target application process is:

[0076] Nice = ba% (b + 20);

[0077] Wherein, Nice is the target priority of the target application process, b is the current priority of the target application process, a is the adjusted priority of the target application process, and % is a modulo operation.

[0078] In some embodiments, see Figure 5 FIG. 1 is a schematic diagram showing the structure of another device for managing application process priority according to an exemplary embodiment. Figure 5 The device shown may also include a processing module 403, wherein:

[0079] The processing module 403 is configured to display a user interface, which includes at least one application process to be adjusted and a priority adjustment range of the application process; detect the configuration operation performed on the application process to be adjusted based on the priority adjustment range of the application process in the user interface to obtain the pre-configured process set.

[0080] In some embodiments, the processing module 403 is configured to display a user interface, the user interface includes at least one application to be adjusted, the application to be adjusted includes at least one application process to be adjusted, and each application process to be adjusted is set with a corresponding priority adjustment range; detect the configuration operation selected in the user interface for the application process to be adjusted in the application to be adjusted and the priority adjustment range of the application process to be adjusted, and obtain the process set.

[0081] In some embodiments, the process set includes process information of at least one application process and an adjustment priority of the application process, and the process set is stored in a preconfigured map data structure.

[0082] In some embodiments, the processing module 403 is further configured to update the target priority of the target application process into the map data structure accordingly.

[0083] In some embodiments, the terminal device includes a user space and a kernel space, and the determination module 401 is configured to obtain a map handle in the system kernel in the user space, and pass a preconfigured process set to the kernel space based on the map handle; and execute in the kernel space the step of determining whether the target application process is an application process in the preconfigured process set when it is detected that the terminal device loads the target application process.

[0084] Regarding the device in the above embodiment, the specific manner in which each module performs operations has been described in detail in the embodiment of the method, and will not be elaborated here.

[0085] The present disclosure also provides a computer-readable storage medium having computer program instructions stored thereon, which, when executed by a processor, implement the steps of the application process priority management method provided by the present disclosure.

[0086] Figure 6 6 is a schematic diagram of a terminal device according to an exemplary embodiment. For example, the terminal device 600 may be a mobile phone, a computer, a digital broadcast terminal, a message transceiver, a game console, a tablet device, a medical device, a fitness device, a personal digital assistant, or the like.

[0087] Reference Figure 6 The terminal device 600 may include one or more of the following components: a processing component 602 , a memory 604 , a power component 606 , a multimedia component 608 , an audio component 610 , an input / output interface 612 , a sensor component 614 , and a communication component 616 .

[0088] The processing component 602 generally controls the overall operation of the device 600, such as operations associated with display, phone calls, data communications, camera operations, and recording operations. The processing component 602 may include one or more processors 620 to execute instructions to complete all or part of the steps of the above-mentioned application process priority management method. In addition, the processing component 602 may include one or more modules to facilitate the interaction between the processing component 602 and other components. For example, the processing component 602 may include a multimedia module to facilitate the interaction between the multimedia component 608 and the processing component 602.

[0089] The memory 604 is configured to store various types of data to support operations on the device 600. Examples of such data include instructions for any application or method operating on the device 600, contact data, phone book data, messages, pictures, videos, etc. The memory 604 can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, magnetic disk or optical disk.

[0090] The power supply component 606 provides power to the various components of the device 600. The power supply component 606 may include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power for the device 600.

[0091] The multimedia component 608 includes a screen that provides an output interface between the device 600 and the user. In some embodiments, the screen may include a liquid crystal display (LCD) and a touch panel (TP). If the screen includes a touch panel, the screen may be implemented as a touch screen to receive input signals from the user. The touch panel includes one or more touch sensors to sense touch, slide, and gestures on the touch panel. The touch sensor may not only sense the boundaries of the touch or slide action, but also detect the duration and pressure associated with the touch or slide operation. In some embodiments, the multimedia component 608 includes a front camera and / or a rear camera. When the terminal device 600 is in an operating mode, such as a shooting mode or a video mode, the front camera and / or the rear camera may receive external multimedia data. Each front camera and the rear camera may be a fixed optical lens system or have a focal length and optical zoom capability.

[0092] The audio component 610 is configured to output and / or input audio signals. For example, the audio component 610 includes a microphone (MIC), and when the device 600 is in an operating mode, such as a call mode, a recording mode, and a speech recognition mode, the microphone is configured to receive an external audio signal. The received audio signal can be further stored in the memory 604 or sent via the communication component 616. In some embodiments, the audio component 610 also includes a speaker for outputting audio signals.

[0093] The input / output interface 612 provides an interface between the processing component 602 and the peripheral interface modules, which may be keyboards, click wheels, buttons, etc. These buttons may include but are not limited to: a home button, a volume button, a start button, and a lock button.

[0094] The sensor assembly 614 includes one or more sensors for providing various aspects of status assessment for the device 600. For example, the sensor assembly 614 can detect the open / closed state of the device 600, the relative positioning of components, such as the display and keypad of the device 600, and the sensor assembly 614 can also detect the position change of the device 600 or a component of the device 600, the presence or absence of user contact with the device 600, the orientation or acceleration / deceleration of the device 600, and the temperature change of the device 600. The sensor assembly 614 may include a proximity sensor configured to detect the presence of nearby objects without any physical contact. The sensor assembly 614 may also include an optical sensor, such as a CMOS or CCD image sensor, for use in imaging applications. In some embodiments, the sensor assembly 614 may also include an accelerometer, a gyroscope sensor, a magnetic sensor, a pressure sensor, or a temperature sensor.

[0095] The communication component 616 is configured to facilitate wired or wireless communication between the device 600 and other devices. The device 600 can access a wireless network based on a communication standard, such as WiFi, 2G or 3G, or a combination thereof. In an exemplary embodiment, the communication component 616 receives a broadcast signal or broadcast-related information from an external broadcast management system via a broadcast channel. In an exemplary embodiment, the communication component 616 also includes a near field communication (NFC) module to facilitate short-range communication. For example, the NFC module can be implemented based on radio frequency identification (RFID) technology, infrared data association (IrDA) technology, ultra-wideband (UWB) technology, Bluetooth (BT) technology and other technologies.

[0096] In an exemplary embodiment, the device 600 may be implemented by one or more application-specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), controllers, microcontrollers, microprocessors or other electronic components to execute the above-mentioned application process priority management method.

[0097] In an exemplary embodiment, a non-transitory computer-readable storage medium including instructions is also provided, such as a memory 604 including instructions, and the instructions can be executed by the processor 620 of the device 600 to complete the above-mentioned upper application process priority management method. For example, the non-transitory computer-readable storage medium can be a ROM, a random access memory (RAM), a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, etc.

[0098] In addition to being an independent electronic device, the above-mentioned device can also be a part of an independent electronic device. For example, in one embodiment, the device can be an integrated circuit (IC) or a chip, wherein the integrated circuit can be an IC or a collection of multiple ICs; the chip can include but is not limited to the following types: GPU (Graphics Processing Unit), CPU (Central Processing Unit), FPGA (Field Programmable Gate Array), DSP (Digital Signal Processor), ASIC (Application Specific Integrated Circuit), SOC (System on Chip, SoC), etc. The above-mentioned integrated circuit or chip can be used to execute executable instructions (or codes) to implement the above-mentioned application process priority management method. The executable instructions can be stored in the integrated circuit or chip, or can be obtained from other devices or equipment, such as the integrated circuit or chip includes a processor, a memory, and an interface for communicating with other devices. The executable instruction can be stored in the memory, and when the executable instruction is executed by the processor, the above-mentioned application process priority management method can be implemented; alternatively, the integrated circuit or chip can receive the executable instruction through the interface and transmit it to the processor for execution, so as to implement the above-mentioned application process priority management method.

[0099] In another exemplary embodiment, a computer program product is also provided. The computer program product includes a computer program that can be executed by a programmable device. The computer program has a code portion for executing the above-mentioned application process priority management method when executed by the programmable device.

[0100] See also Figure 7 FIG. 1 is a schematic diagram showing the structure of a chip according to an exemplary embodiment. Figure 7 The chip 700 shown includes a processor 701 and an interface 702. Optionally, it may also include a memory 703. The number of the processor 701 may be one or more, and the number of the interface 702 may be more than one.

[0101] In one embodiment, for a case where a chip is used to implement the method embodiment of the present disclosure:

[0102] The interface 702 is used to receive or output signals;

[0103] The processor 701 is used to execute part or all of the content of the embodiment of the application process priority management method.

[0104] Understandably, the processor in the embodiment of the present disclosure may be an integrated circuit chip having signal processing capabilities. In the implementation process, each step of the above method embodiment may be completed by an integrated logic circuit of hardware in the processor or an instruction in the form of software. The above processor may be a general-purpose processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components.

[0105] It is understandable that the memory in the embodiments of the present disclosure may be a volatile memory or a non-volatile memory, or may include both volatile and non-volatile memories. Among them, the non-volatile memory may be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or a flash memory. The volatile memory may be a random access memory (RAM), which is used as an external cache. By way of example and not limitation, many forms of RAM are available, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous link DRAM (SLDRAM), and direct RAM (DR RAM). It should be noted that the memory of the systems and methods described herein is intended to include, but is not limited to, these and any other suitable types of memory.

[0106] It should be noted here that the description of the above storage medium, device and chip embodiments is similar to the description of the above method embodiments, and has similar beneficial effects as the method embodiments. For technical details not disclosed in the storage medium, storage medium and device embodiments of the present disclosure, please refer to the description of the method embodiments of the present disclosure for understanding.

[0107] Those skilled in the art will readily appreciate other embodiments of the present disclosure after considering the specification and practicing the present disclosure. The present disclosure is intended to cover any variations, uses or adaptations of the present disclosure that follow the general principles of the present disclosure and include common knowledge or customary techniques in the art that are not disclosed in the present disclosure. The description and examples are to be considered as exemplary only, and the true scope and spirit of the present disclosure are indicated by the following claims.

[0108] It should be understood that the present disclosure is not limited to the exact structures that have been described above and shown in the drawings, and that various modifications and changes may be made without departing from the scope thereof. The scope of the present disclosure is limited only by the appended claims.

Claims

1. A method for managing application process priority, characterized in that: include: When detecting that the terminal device loads the target application process, determining whether the target application process is an application process in a pre-configured process set, the application processes in the process set are set with adjustment priorities; When the target application process is an application process in the process set, the priority of the target application process is adjusted based on the adjustment priority of the target application process, and the target application process is run according to the target priority obtained after the adjustment.

2. The method according to claim 1, characterized in that The step of adjusting the priority of the target application process based on the adjustment priority of the target application process includes: Obtaining the current priority of the target application process; The priority of the target application process is adjusted based on the current priority of the target application process and the adjusted priority of the target application process to obtain a target priority of the target application process.

3. The method according to claim 2, characterized in that The target priority of the target application process is: Nice = ba% (b + 20); Wherein, Nice is the target priority of the target application process, b is the current priority of the target application process, a is the adjusted priority of the target application process, and % is a modulo operation.

4. The method according to claim 1, characterized in that: The method further comprises: Displaying a user interface, the user interface including at least one application process to be adjusted and a priority adjustment range of the application process; The configuration operation performed on the application process to be adjusted based on the priority adjustment range of the application process in the user interface is detected to obtain the process set.

5. The method according to claim 1, characterized in that The method further comprises: Displaying a user interface, the user interface including at least one application to be adjusted, the application to be adjusted including at least one application process to be adjusted, each application process to be adjusted being set with a corresponding priority adjustment range; The configuration operation performed on the application process to be adjusted and the priority adjustment range of the application process in the application to be adjusted is detected in the user interface to obtain the process set.

6. The method according to claim 1, characterized in that The process set includes process information of at least one application process and an adjustment priority of the application process, and the process set is stored in a preconfigured map data structure.

7. The method according to claim 6, characterized in that The method further comprises: The target priority of the target application process is updated accordingly to the map data structure.

8. The method according to any one of claims 1 to 7, characterized in that The terminal device includes a user space and a kernel space, and when detecting that the terminal device loads a target application process, determining whether the target application process is an application process in a preconfigured process set includes: Obtaining a map handle in the system kernel in the user space, and passing a preconfigured process set to the kernel space based on the map handle; The step of determining whether the target application process is an application process in a preconfigured process set when detecting that the terminal device loads the target application process is executed in the kernel space.

9. An application process priority management device, characterized in that: include: A determination module is configured to determine, when detecting that the terminal device loads a target application process, whether the target application process is an application process in a pre-configured process set, wherein the application processes in the process set are set with an adjustment priority; The adjustment module is configured to adjust the priority of the target application process based on the adjustment priority of the target application process when the target application process is an application process in the process set, and run the target application process according to the adjusted target priority.

10. A terminal device, characterized in that: include: processor; a memory for storing processor-executable instructions; The processor is configured to execute the executable instructions to implement the steps of the method according to any one of claims 1 to 8.

11. A computer-readable storage medium having computer program instructions stored thereon, characterized in that: When the computer program instructions are executed by a processor, the steps of the method according to any one of claims 1 to 8 are implemented.