Process control method and apparatus for electronic device, and electronic device

By detecting temperature and load in electronic devices, when a certain threshold is reached, the background application and boot startup process are suppressed to solve the problem of excessive equipment temperature and stutter caused by the application download and installation, and improve the user experience.

WO2025020945A1PCT designated stage expired Publication Date: 2025-01-30HUAWEI TECH CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2024/105078
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-07-25
Filing Date
2024-07-12
Publication Date
2025-01-30

AI Technical Summary

Technical Problem

With the development of mobile Internet technology, the size of the application package increases, resulting in an increase in the overhead of application download and installation. Especially during the batch installation and update of applications, excessive overhead will make the temperature of the device too high, which will lead to device jamming. It seriously affects the normal use of users.

Method used

By detecting the current temperature or load of the electronic equipment, when it reaches a certain degree, the start -up process of background or non -system applications is suppressed to ensure the relative balance of the system load and avoid excessive equipment temperature and stuck.

Benefits of technology

Effectively avoids the temperature of the electronic equipment due to the sudden high of the installation of the non -front platform application.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024105078_30012025_PF_FP_ABST
    Figure CN2024105078_30012025_PF_FP_ABST
Patent Text Reader

Abstract

The embodiments of the present application provide a process control method and apparatus for an electronic device, and an electronic device. The method comprises: detecting a first event occurring in a first electronic device, wherein the first event is a background installation event of a first application, or the first event is a startup event of a second application when the first electronic device is powered on; acquiring a current temperature or a current load of the first electronic device; on the basis of the current temperature or the current load of the first electronic device, determining whether to limit a first process, wherein the first process is a process of the first event; and when it is determined that the first process needs to be limited, limiting the first process. According to the method and apparatus or the electronic device, when the current temperature or load of the electronic device reaches a certain degree, installation processes of some background applications or startup processes of non-system applications are limited, so that the load allocation of the system is relatively balanced, thereby avoiding the freezing phenomenon of applications.
Need to check novelty before this filing date? Find Prior Art

Description

Method, device and electronic device for controlling electronic device process

[0001] This application claims priority to the Chinese patent application filed with the China Patent Office on July 25, 2023, with application number 202310922240.6 and application name “Method, device and electronic device for process control of electronic equipment”, the entire contents of which are incorporated by reference into this application. Technical Field

[0002] Embodiments of the present application relate to the field of electronic device process control, and more specifically, to a method, apparatus, and electronic device for electronic device process control. Background Art

[0003] With the development of mobile Internet technology, the size of application packages is getting larger and larger, which also leads to increasing costs for downloading and installing applications. Especially during the batch installation and update process of applications, excessive costs will cause the device temperature to be too high, which in turn causes the device to freeze, seriously affecting the normal use of users.

[0004] Summary of the Invention

[0005] The present application provides a method, device, and electronic device for controlling electronic device processes. Through this method, device, or electronic device, when the current temperature or load of the electronic device reaches a certain level, some background application processes or startup processes of non-system applications are suppressed, so that the system load distribution is relatively balanced, and application freezes can be avoided.

[0006] In a first aspect, a method for controlling a process of an electronic device is provided, the method comprising: detecting a first event occurring in a first electronic device, the first event being a background installation event of a first application, or the first event being a startup event of a second application, the startup event being a startup event of the second application when the first electronic device is turned on; obtaining a current temperature or a current load of the first electronic device; determining whether it is necessary to suppress a first process based on the current temperature or the current load of the first electronic device, the first process being the process of the first event; and suppressing the first process when it is determined that the first process needs to be suppressed.

[0007] In some embodiments, the second application is a third-party application.

[0008] In an embodiment of the present application, when the current temperature or current load of the electronic device reaches a certain level, the application installation process in the non-foreground scenario can be suppressed, so that the foreground and backend loads of the system are relatively balanced, and the electronic device temperature is too high or the foreground application is stuck due to the sudden high load during the non-foreground application installation process. In addition, during the startup process of the electronic device, when the current temperature or current load of the electronic device reaches a certain level, the startup process of the non-system application can be suppressed, which can improve the smoothness of the startup of the electronic device and thus improve the user experience of the electronic device.

[0009] In combination with the first aspect, in one possible implementation, whether the first process needs to be suppressed is determined based on the current temperature or current load of the first electronic device, including: when the current temperature of the first electronic device is higher than a first threshold, or the current load of the first electronic device is higher than a second threshold, determining that the first process needs to be suppressed.

[0010] In some embodiments, the first threshold is 40° C., and the second threshold is 35%.

[0011] In an embodiment of the present application, when the current temperature or current load of the electronic device reaches a certain level, the application installation process in a non-foreground scenario or the startup process of a non-system application can be suppressed, so that the foreground and backend loads of the system are relatively balanced, and the running smoothness of the foreground application is improved, thereby improving the user experience of the electronic device.

[0012] In combination with the first aspect, in a possible implementation, the method also includes: when the current temperature of the first electronic device is lower than a third threshold and the current load of the first electronic device is lower than a fourth threshold, releasing the suppression of the first process, wherein the third threshold is less than or equal to the first threshold, and the fourth threshold is less than or equal to the second threshold.

[0013] In some embodiments, when the installation scenario of the first application is switched from a non-foreground scenario to a foreground scenario, the suppression of the installation process of the first application is released.

[0014] In some embodiments, the third threshold is 37° C., and the fourth threshold is 30%.

[0015] In the embodiments of the present application, when the current temperature and current load pressure of the electronic device are not high, the suppression of the application installation process or the startup process can be released, thereby improving the running smoothness of the foreground application, thereby improving the user experience of the electronic device. In addition, the threshold for releasing the suppression can be lower than the threshold for applying the suppression, which can prevent the application download process in non-foreground scenarios from frequently switching between the released and suppressed states, thereby further improving the user experience of the electronic device.

[0016] In combination with the first aspect, in a possible implementation, suppressing the first process includes: binding the first process to a small core of a central processing unit (CPU) of the first electronic device for execution.

[0017] In an embodiment of the present application, by binding the installation process of the first application or the startup process of the second application to the small core of the CPU, the power consumption of the electronic device can be reduced. Moreover, since the foreground application and the system application generally run on the large core of the CPU, it can also avoid the impact of the operation of the installation process of the first application or the startup process of the second application on the operation of the foreground task and the system application.

[0018] In combination with the first aspect, in a possible implementation method, suppressing the first process also includes: detecting whether the running time of the first process in the i-th cycle of the first electronic device is greater than the first time length; if the running time in the i-th cycle is greater than the first time length, stopping the running of the first process in the i-th cycle, where i is a positive integer, i=1,2,3,…

[0019] In some embodiments, the duration of the i-th cycle is the same as the duration of an operating cycle of the CPU of the first electronic device.

[0020] In an embodiment of the present application, by limiting the maximum duration that the installation process of the first application is allowed to run within the CPU's operating cycle, it is possible to avoid the impact on other background installation processes caused by the suppressed installation process of the first application occupying the CPU core for a long time.

[0021] In combination with the first aspect, in a possible implementation method, suppressing the first process also includes: when the first process enters the i+1th cycle of the first electronic device, starting the operation of the first process in the i+1th cycle; detecting whether the running time of the first process in the i+1th cycle of the first electronic device is greater than the first time length; if the running time in the i+1th cycle is greater than the first time length, stopping the operation of the first process in the i+1th cycle.

[0022] In one example, if it is detected that the running time in the first cycle is greater than the first time length, the running of the first process in the first cycle is stopped; when the first cycle ends, it is continued to detect whether the running time of the first process in the second cycle of the first electronic device is greater than the first time length; if the running time in the second cycle is greater than the first time length, the running of the first process in the second cycle is stopped, and so on.

[0023] In some embodiments, each cycle of the first electronic device is 100,000 ns, and the first time length is 50,000 ns; in some other embodiments, each cycle of the first electronic device is 20,000 ns, and the first time length is 10,000 ns; in some other embodiments, each cycle of the first electronic device is 10,000 ns, and the first time length is 5,000 ns.

[0024] It should be understood that the CPU can have multiple operating cycles. The embodiment of the present application limits the running time of the installation process of the first application in each of the multiple operating cycles of the CPU. When the running time stops in the first cycle of the CPU due to reaching the first time length, when the second cycle starts, the installation process of the first application can run again in the second cycle, and stop running in the second cycle after accumulating to the first time length again.

[0025] In an embodiment of the present application, by limiting the maximum duration that the installation process of the first application is allowed to run in each of multiple cycles of the CPU, it is possible to avoid the impact on other background installation processes caused by the suppressed installation process of the first application occupying the CPU core for a long time.

[0026] In combination with the first aspect, in one possible implementation, after stopping the first process from running in the i-th cycle, the method also includes: obtaining the suppression time of the first electronic device on the first process; when the suppression time reaches a second time, waking up the first process.

[0027] The suppression duration can be understood as the duration during which the first process is in a stopped state during the CPU operation.

[0028] The second duration may be a duration determined based on user input, or a duration automatically determined by the system, and this application does not impose any limitation on this.

[0029] In some embodiments, the value of the second duration is related to the priority of the first process. The lower the priority of the first process, the longer the second duration. The priority of the first process refers to the priority of the first process among all currently running processes.

[0030] In some embodiments, the second duration is greater than or equal to the duration of the i-th cycle.

[0031] In an embodiment of the present application, a reasonable wake-up delay is set for the installation process of the first application in a suppressed state, which can avoid the stagnation of the installation process of the first application due to the fact that the installation process of the first application in a suppressed state cannot be scheduled for a long time.

[0032] In a second aspect, an electronic device is provided, which includes: a detection module for detecting a first event occurring in the electronic device, where the first event is a background installation event of a first application, or the first event is a startup event of a second application, where the startup event is a startup event of the second application when the electronic device is turned on; an acquisition module for acquiring a current temperature or a current load of the electronic device; a judgment module for judging whether it is necessary to suppress a first process based on the current temperature or the current load of the electronic device, where the first process is the process of the first event; and a suppression module for suppressing the first process when it is determined that the first process needs to be suppressed.

[0033] In some embodiments, the second application is a third-party application.

[0034] In an embodiment of the present application, when the current temperature or current load of the electronic device reaches a certain level, the application installation process in the non-foreground scenario can be suppressed, so that the foreground and backend loads of the system are relatively balanced, and the electronic device temperature is too high or the foreground application is stuck due to the sudden high load during the non-foreground application installation process. In addition, during the startup process of the electronic device, when the current temperature or current load of the electronic device reaches a certain level, the startup process of the non-system application can be suppressed, which can improve the smoothness of the startup of the electronic device and thus improve the user experience of the electronic device.

[0035] In combination with the second aspect, in a possible implementation, the judgment module is specifically used to: when the current temperature of the electronic device is higher than a first threshold, or the current load of the electronic device is higher than a second threshold, determine that the first process needs to be suppressed.

[0036] In some embodiments, the first threshold is 40° C., and the second threshold is 35%.

[0037] In an embodiment of the present application, when the current temperature or current load of the electronic device reaches a certain level, the application installation process in a non-foreground scenario or the startup process of a non-system application can be suppressed, so that the foreground and backend loads of the system are relatively balanced, and the running smoothness of the foreground application is improved, thereby improving the user experience of the electronic device.

[0038] In combination with the second aspect, in one possible implementation, the device also includes: a decompression module, which is used to release the suppression of the first process when the current temperature of the electronic device is lower than a third threshold and the current load of the first electronic device is lower than a fourth threshold, wherein the third threshold is less than or equal to the first threshold, and the fourth threshold is less than or equal to the second threshold.

[0039] In some embodiments, when the installation scenario of the first application is switched from a non-foreground scenario to a foreground scenario, the suppression of the installation process of the first application is released.

[0040] In some embodiments, the third threshold is 37° C., and the fourth threshold is 30%.

[0041] In the embodiments of the present application, when the current temperature and current load pressure of the electronic device are not high, the suppression of the application installation process or the startup process can be released, thereby improving the running smoothness of the foreground application, thereby improving the user experience of the electronic device. In addition, the threshold for releasing the suppression can be lower than the threshold for applying the suppression, which can prevent the application download process in non-foreground scenarios from frequently switching between the released and suppressed states, thereby further improving the user experience of the electronic device.

[0042] In combination with the second aspect, in a possible implementation, the compression module is specifically used to: bind the first process to the central processing unit (CPU) small core of the electronic device to run.

[0043] In an embodiment of the present application, by binding the installation process of the first application or the startup process of the second application to the small core of the CPU, the power consumption of the electronic device can be reduced. Moreover, since the foreground application and the system application generally run on the large core of the CPU, it can also avoid the impact of the operation of the installation process of the first application or the startup process of the second application on the operation of the foreground task and the system application.

[0044] In combination with the second aspect, in a possible implementation method, the detection module is also used to: detect whether the running time of the first process in the i-th cycle of the electronic device is greater than the first time length; the suppression module is also specifically used to: when the running time of the first process in the i-th cycle of the electronic device is greater than the first time length, stop the running of the first process in the i-th cycle, where i is a positive integer, i=1,2,3,….

[0045] In some embodiments, the duration of the i-th cycle is the same as the duration of an operating cycle of a CPU of the electronic device.

[0046] In an embodiment of the present application, by limiting the maximum duration that the installation process of the first application is allowed to run within the CPU's operating cycle, it is possible to avoid the impact on other background installation processes caused by the suppressed installation process of the first application occupying the CPU core for a long time.

[0047] In combination with the first aspect, in a possible implementation, the electronic device further includes: a starting module, configured to start the operation of the first process in the (i+1)th cycle when the first process enters the (i+1)th cycle of the electronic device; the detection module is further configured to detect whether the running time of the first process in the (i+1)th cycle of the electronic device is greater than the first time length; the suppression module is further specifically configured to stop the operation of the first process in the (i+1)th cycle if the running time in the (i+1)th cycle is greater than the first time length.

[0048] In one example, if the detection module detects that the running time in the first cycle is greater than the first time length, the suppression module stops the running of the first process in the first cycle; when the first cycle ends, the detection module continues to detect whether the running time of the first process in the second cycle of the electronic device is greater than the first time length; if the running time in the second cycle is greater than the first time length, the suppression module stops the running of the first process in the second cycle, and so on.

[0049] In some embodiments, each cycle of the electronic device is 100,000 ns, and the first duration is 50,000 ns; in some other embodiments, each cycle of the electronic device is 20,000 ns, and the first duration is 10,000 ns; in some other embodiments, each cycle of the electronic device is 10,000 ns, and the first duration is 5,000 ns.

[0050] It should be understood that the CPU can have multiple operating cycles. The embodiment of the present application limits the running time of the installation process of the first application in each of the multiple operating cycles of the CPU. When the running time stops in the first cycle of the CPU due to reaching the first time length, when the second cycle starts, the installation process of the first application can run again in the second cycle, and stop running in the second cycle after accumulating to the first time length again.

[0051] In an embodiment of the present application, by limiting the maximum duration that the installation process of the first application is allowed to run in each of multiple cycles of the CPU, it is possible to avoid the impact on other background installation processes caused by the suppressed installation process of the first application occupying the CPU core for a long time.

[0052] In combination with the second aspect, in a possible implementation method, the acquisition module is also used to: after stopping the operation of the first process in the i-th cycle, obtain the suppression time of the first process by the electronic device; the suppression module is also specifically used to: when the suppression time reaches a second time, wake up the first process.

[0053] The suppression duration can be understood as the duration during which the first process is in a stopped state during the CPU operation.

[0054] The second duration may be a duration determined based on user input, or a duration automatically determined by the system, and this application does not impose any limitation on this.

[0055] In some embodiments, the value of the second duration is related to the priority of the first process. The lower the priority of the first process, the longer the second duration. The priority of the first process refers to the priority of the first process among all currently running processes.

[0056] In some embodiments, the second duration is greater than or equal to the duration of the i-th cycle.

[0057] In an embodiment of the present application, a reasonable wake-up delay is set for the installation process of the first application in a suppressed state, which can avoid the stagnation of the installation process of the first application due to the fact that the installation process of the first application in a suppressed state cannot be scheduled for a long time.

[0058] In a third aspect, an electronic device is provided, comprising a memory and a processor, wherein the memory is used to store computer program code, and the processor is used to execute the computer program code stored in the memory to implement the method in the above-mentioned first aspect or any possible implementation of the first aspect.

[0059] In a fourth aspect, a computer-readable storage medium is provided, in which a computer program or instruction is stored. When the computer program or instruction is executed, the method in the above-mentioned first aspect or any possible implementation of the first aspect is implemented.

[0060] In a fifth aspect, a chip is provided, in which instructions are stored. When the chip is run on a device, the chip executes the method in the above-mentioned first aspect or any possible implementation of the first aspect.

[0061] In a sixth aspect, a computer program product is provided, comprising: a computer program code, which, when executed, implements the method in the first aspect or any possible implementation of the first aspect. BRIEF DESCRIPTION OF THE DRAWINGS

[0062] FIG1 is a schematic structural diagram of an electronic device provided in an embodiment of the present application;

[0063] FIG2 is a software structure block diagram of an electronic device provided in an embodiment of the present application;

[0064] FIG3 is a schematic flow chart of a method for controlling a process of an electronic device provided in an embodiment of the present application;

[0065] FIG4 is a schematic flow chart of another method for controlling a process of an electronic device provided in an embodiment of the present application;

[0066] FIG5 is a schematic flowchart of another method for controlling a process of an electronic device provided in an embodiment of the present application;

[0067] FIG6 is a schematic flowchart of a method for suppressing the installation process of a first application provided in an embodiment of the present application;

[0068] FIG7 is a schematic flowchart of another method for suppressing the installation process of a first application provided in an embodiment of the present application;

[0069] FIG8 is a schematic flowchart of another method for controlling a process of an electronic device provided in an embodiment of the present application;

[0070] 9 is a load change curve diagram corresponding to before and after suppressing the installation process of the first application using the electronic device process control method provided by an embodiment of the present application;

[0071] 10 is a temperature change curve diagram corresponding to before and after suppressing the installation process of the first application using the electronic device process control method provided in an embodiment of the present application;

[0072] FIG11 is a schematic diagram of functional modules of an apparatus for controlling a process of an electronic device provided in an embodiment of the present application;

[0073] FIG12 is a system framework diagram of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0074] The technical solutions of this application will be described below in conjunction with the accompanying drawings. Obviously, the embodiments described are only part of the embodiments of this application, rather than all the embodiments.

[0075] The technical solutions in the embodiments of the present application will be described below in conjunction with the accompanying drawings in the embodiments of the present application. In the description of the embodiments of the present application, unless otherwise specified, " / " means or, for example, A / B can mean A or B; "and / or" in this article is only a description of the association relationship of associated objects, indicating that there can be three relationships, for example, A and / or B can mean: A exists alone, A and B exist at the same time, and B exists alone. In addition, in the description of the embodiments of the present application, "plurality" or "multiple" refers to two or more than two.

[0076] In the following, the terms "first" and "second" are used for descriptive purposes only and should not be understood to indicate or imply relative importance or implicitly specify the number of the technical features indicated. Therefore, a feature defined as "first" or "second" may explicitly or implicitly include one or more of the features. In the description of this embodiment, unless otherwise specified, "plurality" means two or more.

[0077] The terms used in the following embodiments are only for the purpose of describing specific embodiments and are not intended to limit the present application. As used in the specification of this application and the appended claims, the singular expressions "a", "an", "said", "above", "the" and "this" are intended to also include expressions such as "one or more", unless there is a clear contrary indication in the context. It should also be understood that in the following embodiments of the present application, "at least one", "one or more" refer to one, two or more. The term "and / or" is used to describe the association relationship of associated objects, indicating that three relationships can exist; for example, A and / or B can mean: A exists alone, A and B exist at the same time, and B exists alone, where A and B can be singular or plural. The character " / " generally indicates that the previous and subsequent associated objects are in an "or" relationship.

[0078] References to "one embodiment" or "some embodiments" in this specification mean that a particular feature, structure, or characteristic described in conjunction with that embodiment is included in one or more embodiments of the present application. Thus, phrases such as "one embodiment," "some embodiments," "another embodiment," and "other embodiments" appearing in various places in this specification do not necessarily refer to the same embodiment, but rather mean "one or more, but not all, embodiments," unless otherwise specifically stated. The terms "including," "comprising," "having," and variations thereof mean "including but not limited to," unless otherwise specifically stated.

[0079] The method provided in the embodiments of the present application can be applied to electronic devices such as mobile phones, tablet computers, wearable devices, in-vehicle devices, augmented reality (AR) / virtual reality (VR) devices, laptop computers, ultra-mobile personal computers (UMPCs), netbooks, and personal digital assistants (PDAs). The embodiments of the present application do not impose any restrictions on the specific types of electronic devices.

[0080] 1 shows a schematic structural diagram of an electronic device 100. The electronic device 100 may include a processor 110, an external memory interface 120, an internal memory 121, a universal serial bus (USB) interface 130, a charging management module 140, a power management module 141, a battery 142, an antenna 1, an antenna 2, a mobile communication module 150, a wireless communication module 160, an audio module 170, a speaker 170A, a receiver 170B, a microphone 170C, an earphone interface 170D, a sensor module 180, a button 190, a motor 191, an indicator 192, a camera 193, a display 194, and a subscriber identification module (SIM) card interface 195. The sensor module 180 may include a pressure sensor 180A, a gyroscope sensor 180B, an air pressure sensor 180C, a magnetic sensor 180D, an acceleration sensor 180E, a distance sensor 180F, a proximity light sensor 180G, a fingerprint sensor 180H, a temperature sensor 180J, a touch sensor 180K, an ambient light sensor 180L, a bone conduction sensor 180M, etc.

[0081] It should be understood that the structures illustrated in the embodiments of the present application do not constitute a specific limitation on the electronic device 100. In other embodiments of the present application, the electronic device 100 may include more or fewer components than shown, or may combine or separate certain components, or arrange the components differently. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.

[0082] The processor 110 may include one or more processing units. For example, the processor 110 may include an application processor (AP), a modem processor, a graphics processing unit (GPU), an image signal processor (ISP), a controller, a memory, a video codec, a digital signal processor (DSP), a baseband processor, and / or a neural-network processing unit (NPU). The different processing units may be independent devices or integrated into one or more processors.

[0083] The controller may be the nerve center and command center of the electronic device 100. The controller may generate an operation control signal according to the instruction operation code and the timing signal to complete the control of fetching and executing instructions.

[0084] Processor 110 may also include a memory for storing instructions and data. In some embodiments, the memory in processor 110 is a cache memory. This memory can store instructions or data that have just been used or are being recycled by processor 110. If processor 110 needs to use the same instruction or data again, it can directly access the memory. This avoids duplicate accesses, reduces processor 110 latency, and thus improves system efficiency.

[0085] In some embodiments, the processor 110 may include one or more interfaces. The interfaces may include an inter-integrated circuit (I2C) interface, an inter-integrated circuit sound (I2S) interface, a pulse code modulation (PCM) interface, a universal asynchronous receiver / transmitter (UART) interface, a mobile industry processor interface (MIPI), a general-purpose input / output (GPIO) interface, a subscriber identity module (SIM) interface, and / or a universal serial bus (USB) interface.

[0086] The I2C interface is a bidirectional synchronous serial bus that includes a serial data line (SDA) and a serial clock line (SCL). In some embodiments, the processor 110 may include multiple I2C bus lines. The processor 110 may be coupled to the touch sensor 180K, the charger, the flash, the camera 193, and the like via different I2C bus interfaces. For example, the processor 110 may be coupled to the touch sensor 180K via the I2C interface, enabling communication between the processor 110 and the touch sensor 180K via the I2C bus interface, thereby implementing the touch function of the electronic device 100.

[0087] The I2S interface can be used for audio communication. In some embodiments, the processor 110 can include multiple I2S buses. The processor 110 can be coupled to the audio module 170 via the I2S bus to enable communication between the processor 110 and the audio module 170. In some embodiments, the audio module 170 can transmit audio signals to the wireless communication module 160 via the I2S interface, enabling the function of answering calls through a Bluetooth headset.

[0088] The PCM interface can also be used for audio communication, sampling, quantizing, and encoding analog signals. In some embodiments, the audio module 170 and the wireless communication module 160 can be coupled via a PCM bus interface. In some embodiments, the audio module 170 can also transmit audio signals to the wireless communication module 160 via the PCM interface, enabling the function of answering calls via a Bluetooth headset. Both the I2S interface and the PCM interface can be used for audio communication.

[0089] The UART interface is a universal serial data bus used for asynchronous communication. This bus can be a bidirectional communication bus. It converts the data to be transmitted between serial communication and parallel communication. In some embodiments, the UART interface is typically used to connect the processor 110 and the wireless communication module 160. For example, the processor 110 communicates with the Bluetooth module in the wireless communication module 160 via the UART interface to implement Bluetooth functionality. In some embodiments, the audio module 170 can transmit audio signals to the wireless communication module 160 via the UART interface, enabling the function of playing music through Bluetooth headphones.

[0090] The MIPI interface can be used to connect the processor 110 to peripheral devices such as the display 194 and the camera 193. MIPI interfaces include the camera serial interface (CSI) and the display serial interface (DSI). In some embodiments, the processor 110 and the camera 193 communicate via the CSI interface to implement the camera function of the electronic device 100. The processor 110 and the display 194 communicate via the DSI interface to implement the display function of the electronic device 100.

[0091] The GPIO interface can be configured via software. The GPIO interface can be configured as either a control signal or a data signal. In some embodiments, the GPIO interface can be used to connect the processor 110 to the camera 193, display 194, wireless communication module 160, audio module 170, sensor module 180, etc. The GPIO interface can also be configured as an I2C interface, an I2S interface, a UART interface, a MIPI interface, etc.

[0092] The USB interface 130 is an interface that complies with USB standards and may be a Mini USB interface, a Micro USB interface, a USB Type-C interface, or the like. The USB interface 130 can be used to connect a charger to charge the electronic device 100, or to transfer data between the electronic device 100 and peripheral devices. It can also be used to connect headphones to play audio. This interface can also be used to connect other electronic devices, such as augmented reality devices.

[0093] It is understood that the interface connection relationship between the modules illustrated in the embodiments of the present application is merely an illustrative illustration and does not constitute a structural limitation on the electronic device 100. In other embodiments of the present application, the electronic device 100 may also adopt different interface connection methods from the above embodiments, or a combination of multiple interface connection methods.

[0094] The charging management module 140 is configured to receive charging input from a charger. The charger can be either a wireless charger or a wired charger. In some wired charging embodiments, the charging management module 140 can receive charging input from the wired charger via the USB interface 130. In some wireless charging embodiments, the charging management module 140 can receive wireless charging input via the wireless charging coil of the electronic device 100. While charging the battery 142, the charging management module 140 can also provide power to the electronic device via the power management module 141.

[0095] The power management module 141 is used to connect the battery 142, the charging management module 140 and the processor 110. The power management module 141 receives input from the battery 142 and / or the charging management module 140, and provides power to the processor 110, the internal memory 121, the external memory, the display 194, the camera 193, and the wireless communication module 160. The power management module 141 can also be used to monitor parameters such as battery capacity, battery cycle count, and battery health status (leakage, impedance). In some other embodiments, the power management module 141 can also be set in the processor 110. In other embodiments, the power management module 141 and the charging management module 140 can also be set in the same device.

[0096] The wireless communication function of the electronic device 100 can be implemented through the antenna 1, the antenna 2, the mobile communication module 150, the wireless communication module 160, the modem processor and the baseband processor.

[0097] Antenna 1 and Antenna 2 are used to transmit and receive electromagnetic wave signals. Each antenna in electronic device 100 can be used to cover a single or multiple communication frequency bands. Different antennas can also be reused to improve antenna utilization. For example, antenna 1 can be reused as a diversity antenna for a wireless local area network. In other embodiments, the antennas can be used in conjunction with a tuning switch.

[0098] The mobile communication module 150 can provide solutions for wireless communications including 2G / 3G / 4G / 5G applied to the electronic device 100. The mobile communication module 150 may include at least one filter, a switch, a power amplifier, a low noise amplifier (LNA), etc. The mobile communication module 150 can receive electromagnetic waves from the antenna 1, and filter, amplify, and process the received electromagnetic waves, and transmit them to the modulation and demodulation processor for demodulation. The mobile communication module 150 can also amplify the signal modulated by the modulation and demodulation processor, and convert it into electromagnetic waves for radiation through the antenna 1. In some embodiments, at least some of the functional modules of the mobile communication module 150 can be set in the processor 110. In some embodiments, at least some of the functional modules of the mobile communication module 150 can be set in the same device as at least some of the modules of the processor 110.

[0099] The modem processor may include a modulator and a demodulator. The modulator is used to modulate the low-frequency baseband signal to be transmitted into a medium-high frequency signal. The demodulator is used to demodulate the received electromagnetic wave signal into a low-frequency baseband signal. The demodulator then transmits the demodulated low-frequency baseband signal to the baseband processor for processing. After being processed by the baseband processor, the low-frequency baseband signal is passed to the application processor. The application processor outputs a sound signal through an audio device (not limited to the speaker 170A, the receiver 170B, etc.) or displays an image or video through the display screen 194. In some embodiments, the modem processor may be an independent device. In other embodiments, the modem processor may be independent of the processor 110 and be set in the same device as the mobile communication module 150 or other functional modules.

[0100] The wireless communication module 160 can provide wireless communication solutions including wireless local area networks (WLAN) (such as wireless fidelity (Wi-Fi) networks), Bluetooth (BT), global navigation satellite system (GNSS), frequency modulation (FM), near field communication (NFC), infrared (IR), etc., which are applied to the electronic device 100. The wireless communication module 160 can be one or more devices that integrate at least one communication processing module. The wireless communication module 160 receives electromagnetic waves via the antenna 2, frequency modulates and filters the electromagnetic wave signals, and sends the processed signals to the processor 110. The wireless communication module 160 can also receive the signal to be sent from the processor 110, frequency modulate it, amplify it, and convert it into electromagnetic waves for radiation through the antenna 2.

[0101] In some embodiments, the antenna 1 of the electronic device 100 is coupled to the mobile communication module 150, and the antenna 2 is coupled to the wireless communication module 160, so that the electronic device 100 can communicate with a network and other devices through wireless communication technologies. The wireless communication technologies may include global system for mobile communications (GSM), general packet radio service (GPRS), code division multiple access (CDMA), wideband code division multiple access (WCDMA), time-division code division multiple access (TD-SCDMA), long term evolution (LTE), BT, GNSS, WLAN, NFC, FM, and / or IR technology. The GNSS may include a global positioning system (GPS), a global navigation satellite system (GLONASS), a Beidou navigation satellite system (BDS), a quasi-zenith satellite system (QZSS) and / or a satellite based augmentation system (SBAS).

[0102] Electronic device 100 implements display functionality through a GPU, display screen 194, and an application processor. A GPU is a microprocessor for image processing that connects display screen 194 and the application processor. The GPU is used to perform mathematical and geometric calculations for graphics rendering. Processor 110 may include one or more GPUs that execute program instructions to generate or modify display information.

[0103] Display screen 194 is used to display images, videos, and the like. Display screen 194 includes a display panel. The display panel can be a liquid crystal display (LCD), an organic light-emitting diode (OLED), an active-matrix organic light-emitting diode (AMOLED), a flexible light-emitting diode (FLED), a MiniLED, a MicroLED, a Micro-oLed, or a quantum dot light-emitting diode (QLED). In some embodiments, electronic device 100 may include one or N display screens 194, where N is a positive integer greater than one.

[0104] The electronic device 100 can implement a shooting function through an ISP, a camera 193, a video codec, a GPU, a display screen 194, and an application processor.

[0105] The ISP processes data fed back by camera 193. For example, when taking a photo, the shutter is opened, and light is transmitted through the lens to the camera's photosensitive element. The light signal is converted into an electrical signal, which is then passed to the ISP for processing and converted into a visible image. The ISP can also perform algorithmic optimization on image noise, brightness, and skin tone. It can also optimize parameters such as exposure and color temperature of the captured scene. In some embodiments, the ISP can be located within camera 193.

[0106] The camera 193 is used to capture still images or videos. The object generates an optical image through the lens and projects it onto the photosensitive element. The photosensitive element can be a charge coupled device (CCD) or a complementary metal-oxide-semiconductor (CMOS) phototransistor. The photosensitive element converts the light signal into an electrical signal, and then passes the electrical signal to the ISP for conversion into a digital image signal. The ISP outputs the digital image signal to the DSP for processing. The DSP converts the digital image signal into an image signal in a standard RGB, YUV or other format. In some embodiments, the electronic device 100 may include 1 or N cameras 193, where N is a positive integer greater than 1.

[0107] The digital signal processor is used to process digital signals. In addition to processing digital image signals, it can also process other digital signals. For example, when the electronic device 100 selects a frequency point, the digital signal processor is used to perform Fourier transform on the frequency point energy.

[0108] Video codecs are used to compress or decompress digital video. Electronic device 100 may support one or more video codecs. This allows electronic device 100 to play or record videos in various encoding formats, such as Moving Picture Experts Group (MPEG) 1, MPEG2, MPEG3, and MPEG4.

[0109] The NPU is a neural network (NN) computing processor. Drawing on the structure of biological neural networks, such as the transmission patterns between neurons in the human brain, it rapidly processes input information and can continuously self-learn. The NPU can enable intelligent cognitive applications in electronic device 100, such as image recognition, face recognition, speech recognition, and text comprehension.

[0110] The external memory interface 120 can be used to connect an external memory card, such as a Micro SD card, to expand the storage capacity of the electronic device 100. The external memory card communicates with the processor 110 via the external memory interface 120 to implement data storage functions. For example, files such as music and videos can be stored on the external memory card.

[0111] The internal memory 121 can be used to store computer executable program codes, which include instructions. The processor 110 executes various functional applications and data processing of the electronic device 100 by running the instructions stored in the internal memory 121. The internal memory 121 may include a program storage area and a data storage area. Among them, the program storage area can store an operating system, an App required for at least one function (such as a sound playback function, an image playback function, etc.), etc. The data storage area can store data created during the use of the electronic device 100 (such as audio data, a phone book, etc.), etc. In addition, the internal memory 121 may include a high-speed random access memory, and may also include a non-volatile memory, such as at least one disk storage device, a flash memory device, a universal flash storage (UFS), etc.

[0112] The electronic device 100 can implement audio functions such as music playback and recording through the audio module 170, the speaker 170A, the receiver 170B, the microphone 170C, the headphone jack 170D, and the application processor.

[0113] The audio module 170 is used to convert digital audio information into analog audio signal output, and is also used to convert analog audio input into digital audio signals. The audio module 170 can also be used to encode and decode audio signals. In some embodiments, the audio module 170 can be provided in the processor 110, or some functional modules of the audio module 170 can be provided in the processor 110.

[0114] The speaker 170A, also called a "speaker", is used to convert audio electrical signals into sound signals. The electronic device 100 can listen to music or listen to hands-free calls through the speaker 170A.

[0115] The receiver 170B, also called a "handset", is used to convert audio electrical signals into sound signals. When the electronic device 100 receives a call or a voice message, the user can place the receiver 170B close to the ear to hear the voice.

[0116] Microphone 170C, also known as "microphone" or "microphone", is used to convert sound signals into electrical signals. When making a call or sending a voice message, the user can speak by putting their mouth close to the microphone 170C to input the sound signal into the microphone 170C. The electronic device 100 can be provided with at least one microphone 170C. In other embodiments, the electronic device 100 can be provided with two microphones 170C, which can not only collect sound signals but also realize noise reduction function. In other embodiments, the electronic device 100 can also be provided with three, four or more microphones 170C to collect sound signals, reduce noise, identify the source of sound, realize directional recording function, etc.

[0117] The headphone jack 170D is used to connect a wired headphone and can be the USB interface 130 or a 3.5mm open mobile terminal platform (OMTP) standard interface or a cellular telecommunications industry association of the USA (CTIA) standard interface.

[0118] Pressure sensor 180A is used to sense pressure signals and convert them into electrical signals. In some embodiments, pressure sensor 180A can be located on display screen 194. There are many types of pressure sensors 180A, such as resistive, inductive, and capacitive. A capacitive pressure sensor can include at least two parallel plates made of conductive material. When force acts on pressure sensor 180A, the capacitance between the electrodes changes. Electronic device 100 determines the intensity of the pressure based on this change in capacitance. When a touch operation is applied to display screen 194, electronic device 100 detects the touch intensity based on pressure sensor 180A. Electronic device 100 can also calculate the touch location based on the detection signal from pressure sensor 180A. In some embodiments, touch operations applied to the same touch location but with different touch intensities can correspond to different operation instructions. For example, when a touch operation with an intensity less than a first pressure threshold is applied to a short message application icon, a command to view short messages is executed. When a touch operation with an intensity greater than or equal to the first pressure threshold is applied to a short message application icon, a command to create a new short message is executed.

[0119] The gyroscope sensor 180B can be used to determine the motion posture of the electronic device 100. In some embodiments, the angular velocity of the electronic device 100 around three axes (i.e., x, y, and z axes) can be determined by the gyroscope sensor 180B. The gyroscope sensor 180B can be used for anti-shake shooting. For example, when the shutter is pressed, the gyroscope sensor 180B detects the angle of the electronic device 100 shaking, calculates the distance that the lens module needs to compensate based on the angle, and allows the lens to offset the shaking of the electronic device 100 through reverse movement to achieve anti-shake. The gyroscope sensor 180B can also be used for navigation and somatosensory game scenes.

[0120] The air pressure sensor 180C is used to measure air pressure. In some embodiments, the electronic device 100 calculates the altitude using the air pressure value measured by the air pressure sensor 180C to assist in positioning and navigation.

[0121] The magnetic sensor 180D includes a Hall sensor. The electronic device 100 can use the magnetic sensor 180D to detect the opening and closing of the flip case. In some embodiments, when the electronic device 100 is a flip phone, the electronic device 100 can detect the opening and closing of the flip cover based on the magnetic sensor 180D. Based on the detected opening and closing status of the case or flip cover, features such as automatic unlocking of the flip cover can be configured.

[0122] Accelerometer 180E can detect the magnitude of acceleration of electronic device 100 in all directions (generally three axes). It can also detect the magnitude and direction of gravity when electronic device 100 is stationary. It can also be used to identify the electronic device's posture, enabling applications such as switching between landscape and portrait modes and pedometers.

[0123] The distance sensor 180F is used to measure distance. The electronic device 100 can measure distance using infrared or laser. In some embodiments, when shooting a scene, the electronic device 100 can use the distance sensor 180F to measure distance to achieve fast focusing.

[0124] The proximity light sensor 180G may include, for example, a light emitting diode (LED) and a light detector, such as a photodiode. The light emitting diode may be an infrared light emitting diode. The electronic device 100 emits infrared light outward through the light emitting diode. The electronic device 100 uses a photodiode to detect infrared reflected light from nearby objects. When sufficient reflected light is detected, it can be determined that there is an object near the electronic device 100. When insufficient reflected light is detected, the electronic device 100 can determine that there is no object near the electronic device 100. The electronic device 100 can use the proximity light sensor 180G to detect that the user is holding the electronic device 100 close to the ear to talk, so as to automatically turn off the screen to save power. The proximity light sensor 180G can also be used in leather case mode and pocket mode to automatically unlock and lock the screen.

[0125] Ambient light sensor 180L is used to sense ambient light brightness. Electronic device 100 can adaptively adjust the brightness of display screen 194 based on the perceived ambient light. Ambient light sensor 180L can also be used to automatically adjust white balance when taking photos. Ambient light sensor 180L can also work with proximity light sensor 180G to detect whether electronic device 100 is in a pocket to prevent accidental touches.

[0126] The fingerprint sensor 180H is used to collect fingerprints. The electronic device 100 can use the collected fingerprint characteristics to implement fingerprint unlocking, access application locks, fingerprint photography, fingerprint call answering, etc.

[0127] The temperature sensor 180J is used to detect temperature. In some embodiments, the electronic device 100 uses the temperature detected by the temperature sensor 180J to execute a temperature processing strategy. For example, when the temperature reported by the temperature sensor 180J exceeds a threshold, the electronic device 100 reduces the performance of the processor located near the temperature sensor 180J to reduce power consumption and implement thermal protection. In other embodiments, when the temperature is lower than another threshold, the electronic device 100 heats the battery 142 to prevent the electronic device 100 from shutting down abnormally due to low temperature. In other embodiments, when the temperature is lower than another threshold, the electronic device 100 boosts the output voltage of the battery 142 to prevent abnormal shutdown due to low temperature.

[0128] The touch sensor 180K is also called a "touch panel." The touch sensor 180K can be disposed on the display screen 194. The touch sensor 180K and the display screen 194 form a touch screen, also called a "touch screen." The touch sensor 180K is used to detect touch operations applied thereto or in the vicinity thereof. The touch sensor can transmit the detected touch operations to the application processor to determine the type of touch event. Visual output related to the touch operations can be provided via the display screen 194. In other embodiments, the touch sensor 180K can also be disposed on the surface of the electronic device 100, at a location different from that of the display screen 194.

[0129] The bone conduction sensor 180M can obtain vibration signals. In some embodiments, the bone conduction sensor 180M can obtain vibration signals from the vibrating bones of the human body. The bone conduction sensor 180M can also contact the human pulse to receive blood pressure pulse signals. In some embodiments, the bone conduction sensor 180M can also be set in headphones to form bone conduction headphones. The audio module 170 can parse out voice signals based on the vibration signals of the vibrating bones of the human body obtained by the bone conduction sensor 180M to implement voice functions. The application processor can parse heart rate information based on the blood pressure pulse signals obtained by the bone conduction sensor 180M to implement heart rate detection functions.

[0130] The buttons 190 include a power button, a volume button, and the like. The buttons 190 may be mechanical buttons or touch buttons. The electronic device 100 may receive key inputs and generate key signal inputs related to user settings and function control of the electronic device 100.

[0131] Motor 191 can generate vibration prompts. Motor 191 can be used for incoming call vibration prompts, and can also be used for touch vibration feedback. For example, touch operations acting on different applications (such as taking pictures, audio playback, etc.) can correspond to different vibration feedback effects. For touch operations acting on different areas of the display screen 194, motor 191 can also correspond to different vibration feedback effects. Different application scenarios (for example: time reminders, receiving messages, alarm clocks, games, etc.) can also correspond to different vibration feedback effects. The touch vibration feedback effect can also support customization.

[0132] The indicator 192 may be an indicator light, which may be used to indicate the charging status, power level changes, messages, missed calls, notifications, etc.

[0133] The SIM card interface 195 is used to connect a SIM card. The SIM card can be connected to or disconnected from the electronic device 100 by inserting it into or removing it from the SIM card interface 195. The electronic device 100 can support 1 or N SIM card interfaces, where N is a positive integer greater than 1. The SIM card interface 195 can support Nano SIM cards, Micro SIM cards, SIM cards, and the like. Multiple cards can be inserted into the same SIM card interface 195 at the same time. The types of the multiple cards can be the same or different. The SIM card interface 195 can also be compatible with different types of SIM cards. The SIM card interface 195 can also be compatible with external memory cards. The electronic device 100 interacts with the network through the SIM card to implement functions such as calls and data communications. In some embodiments, the electronic device 100 uses an embedded SIM (eSIM) card. The eSIM card can be embedded in the electronic device 100 and cannot be separated from the electronic device 100.

[0134] It should be understood that the phone cards in the embodiments of the present application include but are not limited to SIM cards, eSIM cards, universal subscriber identity modules (USIM), universal integrated circuit cards (UICC), and the like.

[0135] The software system of the electronic device 100 can adopt a layered architecture, an event-driven architecture, a micro-kernel architecture, a micro-service architecture, or a cloud architecture. In the embodiment of the present application, the Android system with a layered architecture is used as an example to illustrate the software structure of the electronic device 100.

[0136] Figure 2 is a software structure diagram of the electronic device 100 according to an embodiment of the present application. The layered architecture divides the software into several layers, each with clear roles and division of labor. The layers communicate with each other through software interfaces. In some embodiments, the Android system is divided into four layers, namely, the application layer, the application framework layer, the Android runtime (Android runtime) and the system library, and the kernel layer, from top to bottom. The application layer can include a series of application packages.

[0137] As shown in FIG2 , the application package may include applications such as camera, gallery, calendar, call, map, navigation, WLAN, Bluetooth, music, video, and short message.

[0138] The application framework layer provides an application programming interface (API) and programming framework for applications in the application layer. The application framework layer includes some predefined functions.

[0139] As shown in FIG2 , the application framework layer may include a window manager, a content provider, a view system, a telephony manager, a resource manager, a notification manager, and the like.

[0140] The window manager is used to manage window programs. The window manager can obtain the display size, determine whether there is a status bar, lock the screen, take screenshots, etc.

[0141] Content providers are used to store and retrieve data and make it accessible to applications. The data may include videos, images, audio, calls made and received, browsing history and bookmarks, phone books, etc.

[0142] The view system includes visual controls, such as those for displaying text and images. The view system is used to build applications. A display interface can consist of one or more views. For example, a display interface containing a text notification icon might include a view for displaying text and a view for displaying images.

[0143] The phone manager is used to provide communication functions of the electronic device 100, such as management of call status (including answering, hanging up, etc.).

[0144] The resource manager provides various resources for applications, such as localized strings, icons, images, layout files, video files, and so on.

[0145] The Notification Manager allows applications to display notifications in the status bar. These messages can be displayed briefly and then disappear automatically without user interaction. For example, the Notification Manager is used to notify users of completed downloads and message reminders. The Notification Manager can also display notifications in the top status bar of the system as icons or scrolling text, such as notifications from background applications, or as dialog windows on the screen. Examples include text messages in the status bar, beeps, vibrations on electronic devices, and flashing indicator lights.

[0146] Android Runtime includes core libraries and a virtual machine. Android runtime is responsible for scheduling and management of the Android system.

[0147] The core library consists of two parts: one is the function that needs to be called by the Java language, and the other is the Android core library.

[0148] The application layer and application framework layer run in a virtual machine. The virtual machine executes Java files in the application layer and application framework layer as binary files. The virtual machine manages object lifecycles, stack management, thread management, security and exception management, and garbage collection.

[0149] The system library can include multiple functional modules, such as a surface manager, media libraries, a 3D graphics processing library (such as OpenGL ES), and a 2D graphics engine (such as SGL).

[0150] The surface manager is used to manage the display subsystem and provide fusion of 2D and 3D layers for multiple applications.

[0151] The media library supports playback and recording of a variety of common audio and video formats, as well as static image files. The media library can support a variety of audio and video encoding formats, such as: MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, etc.

[0152] The 3D graphics processing library is used to implement 3D graphics drawing, image rendering, compositing, and layer processing.

[0153] A 2D graphics engine is a drawing engine for 2D drawings.

[0154] The kernel layer is the layer between hardware and software. The kernel layer includes at least display driver, camera driver, audio driver, and sensor driver.

[0155] It should be understood that the technical solutions in the embodiments of the present application can be used in Android, IOS, Hongmeng and other systems.

[0156] The technical solutions of the embodiments of the present application can be applied to application download or installation scenarios of electronic devices, for example, can be applied to batch download or batch installation scenarios of applications.

[0157] The technical solution of the embodiment of the present application can also be applied to the startup scenario of an electronic device, for example, it can be applied to the background associated startup scenario of non-system applications within a certain period of time after the electronic device system is started.

[0158] The electronic device in the embodiment of the present application may be a laptop computer, or a portable electronic device such as a mobile phone, a tablet computer, a camera, a video camera, a video recorder, or other electronic devices with download or installation functions, electronic devices in a 5G network, or electronic devices in a future evolved public land mobile communication network (PLMN), etc. This application does not limit this.

[0159] With the development of mobile Internet technology, the size of application packages (for example, Android application packages (APK)) is getting larger and larger, which also leads to increasing overhead in downloading and installing applications. Especially during the process of batch installation and updating of applications, excessive overhead can cause the device temperature to be too high, which in turn causes the device to freeze, seriously affecting the normal use of users.

[0160] To address the above technical issues, the current method is: during the download or installation process of an application, when an electronic device overheats, the electronic device is frequency-limited, or the download or installation of the current application is stopped to alleviate the overheating of the electronic device.

[0161] However, although limiting the frequency of the entire electronic device can alleviate the overheating of the electronic device, it can easily cause the electronic device to freeze and affect the user's use of the foreground application on the electronic device; and stopping the download or installation of the application when the electronic device overheats is a way to solve the problem by ending the process. This not only fails to fundamentally solve the problem, but also seriously affects the user's installation and use needs for the application.

[0162] In view of this, embodiments of the present application provide a method for controlling electronic device processes and an electronic device. This method and electronic device can suppress background applications when the current temperature or load of the electronic device is too high, and can release the suppression of background applications when the current temperature and load of the electronic device are low, thereby making the system load relatively balanced and avoiding overheating and freezing caused by excessive load on the electronic device.

[0163] For example, taking the application installation scenario as an example, FIG3 shows a schematic flow chart of a method 300 for controlling an electronic device process provided by an embodiment of the present application. As shown in FIG3 , the method 300 includes:

[0164] S301: Detecting a first application installation event of an electronic device.

[0165] In some embodiments, the first application installation event may be, for example, an event of downloading and installing the first application through the application store of the first electronic device; for example, it may also be an event of automatically downloading and installing the new version of the first application when the system of the first electronic device detects a new version of the first application; for example, it may also be an event of confirming the download and installation of the first application as needed when the user uses certain functions of the first electronic device; it may also be an event of installing the first application through an installation package; it may also be an event of installing other applications, which is not limited in this application.

[0166] In some embodiments, when the package manager service (PMS) of the first electronic device receives a dexOat process notification, it is determined that a first application installation event of the electronic device is detected.

[0167] Among them, the dexOat process is the process of compiling and optimizing the dex files issued by the system, that is, converting the bytecode of the dex file into machine code that the system can execute in advance. Its purpose is to improve the system startup speed and smoothness during use. The dexOat process occupies a very important position in the system operation process. The dexOat process is involved in events such as application installation, screen sliding, and system startup.

[0168] Among them, the first application installation process described in the embodiment of the present application can be understood as one or more application installation processes.

[0169] S302: When the installation scenario of the first application is a non-foreground scenario, determine whether the installation process of the first application needs to be suppressed according to the current temperature or current load of the first electronic device.

[0170] Among them, the installation scenario of the first application is a non-foreground scenario, which means that the first application is not an application that is currently needed or about to be used. Specifically, it can be determined whether the current process is a foreground process or a background process based on the process of the application. The foreground process is the process displayed on the current interface and interacts with the user, and the background process is a process without user-visible activity. For example: a user downloads a first application through the application store of a first electronic device. During the download of the first application, the user is using other applications on the first electronic device. In this case, the first application is currently a background application and its installation scenario is a non-foreground scenario. For another example: when the background of the first electronic device detects that a new version of the first application that is not currently in use exists, the first electronic device downloads and installs the new version of the first application in the background (that is, the first application automatically updates its version in the background when it is idle). In this case, the new version of the first application is currently a background application and its installation scenario is a non-foreground scenario. For another example: when a user needs to download and install the first application before using a certain function of the browser, the first application is currently a foreground application and its installation scenario is a foreground scenario. Among them, the determination of whether the application is currently a foreground application or a background application (that is, the determination of whether the installation scenario of the application is a non-foreground scenario) is a conventional technology in this field and will not be repeated here.

[0171] The first application described in the embodiment of the present application is currently a background application, and can also be described as the installation process of the first application occurring in a non-foreground scenario, where the non-foreground scenario can be understood as a scenario where the first application is not currently needed or is about to be used.

[0172] In some embodiments, when the installation scenario of the first application is a non-foreground scenario, if the current temperature of the first electronic device is higher than a first threshold, or the current load of the first electronic device is higher than a second threshold, it is determined that the installation process of the first application needs to be suppressed.

[0173] The current temperature of the first electronic device refers to the current chip temperature of the first electronic device; and the current load of the first electronic device refers to the current central processing unit (CPU) load of the first electronic device.

[0174] S303: When it is determined that the installation process of the first application needs to be suppressed, suppress the installation process of the first application.

[0175] Suppressing the installation process of the first application may include reducing the installation speed of the first application, reducing the installation priority of the first application, or reducing both the installation speed and the installation priority of the first application. The specific method for suppressing the first application will be described in detail in subsequent embodiments.

[0176] In an embodiment of the present application, when the current temperature or current load of the electronic device reaches a certain level, the application installation process in the non-foreground scenario can be suppressed, so that the foreground and backend loads of the system are relatively balanced, and the electronic device temperature is avoided from being too high or the foreground application is stuck due to the sudden high load during the non-foreground application installation process, thereby improving the user experience of the electronic device.

[0177] For example, taking the application installation scenario as an example, FIG4 shows a schematic flow chart of another electronic device process control method 400 provided by an embodiment of the present application. As shown in FIG4, the method 400 includes:

[0178] S401: A first application installation event of an electronic device is detected.

[0179] The explanation of this step is the same as that of step S301 in the embodiment shown in FIG3 , and will not be repeated here for the sake of brevity.

[0180] S402: Determine that the installation scenario of the first application is a non-foreground scenario.

[0181] For the explanation of the non-foreground scenario, please refer to the relevant description in step S302 in the embodiment shown in FIG3 , which will not be repeated here for the sake of brevity.

[0182] S403: Determine whether the condition is met: the current temperature of the electronic device is higher than the first threshold or the current load of the electronic device is higher than the second threshold. If so, execute step S404; if not, execute step S405.

[0183] The current temperature of the first electronic device refers to the current chip temperature of the first electronic device; and the current load of the first electronic device refers to the current CPU load of the first electronic device.

[0184] The first threshold is a temperature threshold, and the value of the first threshold can be any value between 35°C and 50°C, for example, 40°C.

[0185] The second threshold is a load threshold, and the value of the second threshold can be any value between 30% and 50%, for example, 35%.

[0186] In some embodiments, step S403 may be performed periodically during the installation process of the first application.

[0187] S404: Suppress the installation process of the first application.

[0188] Suppressing the installation process of the first application may include reducing the installation speed of the first application, reducing the installation priority of the first application, or reducing both the installation speed and the installation priority of the first application. The specific method for suppressing the first application will be described in detail in subsequent embodiments.

[0189] It should be understood that after executing step S404, if the installation process of the first application is still in an incomplete state (i.e., the first application has not been installed completely), the process returns to step S403. In other words, for the installation process of the first application in a non-foreground scenario, the operation of determining whether to suppress the installation process is not performed only once, but is performed multiple times throughout the entire installation process of the first application (either periodically or through real-time monitoring).

[0190] S405: Do not suppress the installation process of the first application, or release the suppression of the installation process of the first application.

[0191] In some embodiments, when the installation scenario of the first application is the foreground scenario, the installation process of the first application will not be suppressed from beginning to end.

[0192] In some further embodiments, when the installation process of the first application is currently in an unsuppressed state, if the current temperature of the electronic device is lower than or equal to a first threshold, and the current load of the electronic device is lower than or equal to a second threshold, the installation process of the first application is not currently suppressed.

[0193] In some further embodiments, when the installation process of the first application is currently in a suppressed state, if the current temperature of the electronic device is lower than or equal to a first threshold and the current load of the electronic device is lower than or equal to a second threshold, the suppression of the installation process of the first application is released.

[0194] It should be understood that after executing step S404, if the installation process of the first application is still in an incomplete state (that is, the first application has not been installed completely), then return to step S403; similarly, after executing step S405, if the installation process of the first application is still in an incomplete state (that is, the first application has not been installed completely), then return to step S403. That is to say: for the installation process of the first application in a non-foreground scenario, the operation of determining whether it needs to suppress the installation process is not performed only once, but is performed multiple times in the entire installation process of the first application (it can be performed periodically or monitored in real time). It is suppressed when the suppression conditions are met, and the suppression is released when the suppression conditions are not met. In an example, if the temperature of the electronic device is higher than the first threshold in the first time period of the installation process, the installation process of the first application is suppressed in the first time period; when the installation process enters the second time period, the temperature of the electronic device is lower than the first threshold, and the load of the electronic device is less than the second threshold, the suppression of the installation process of the first application is released in the second time period; when the installation process enters the third time period, the load of the electronic device is higher than the second threshold, the installation process of the first application is suppressed in the third time period, and the decision is repeated in this way until the installation process of the first application is completed.

[0195] In some embodiments, when the installation scenario of the first application is switched from a non-foreground scenario to a foreground scenario, the suppression of the installation process of the first application is released.

[0196] In an embodiment of the present application, when the current temperature or current load of the electronic device reaches a certain level, the application installation process in the non-foreground scenario can be suppressed. When the current temperature and current load pressure of the electronic device are not large, the suppression of the application installation process can be released, so that the front-end and back-end loads of the system are relatively balanced. While allowing the application in the non-foreground scenario to be downloaded smoothly, it can avoid the electronic device temperature being too high or the foreground application being stuck due to the sudden high load during the non-foreground application installation process, thereby improving the user experience of the electronic device.

[0197] For example, taking the application installation scenario as an example, FIG5 shows a schematic flow chart of another electronic device process control method 500 provided by an embodiment of the present application. As shown in FIG5, the method 500 includes:

[0198] S501: When an installation event of a first application of an electronic device is detected in a non-foreground scenario, it is determined whether a suppression condition is met: the current temperature of the electronic device is higher than a first threshold, or the current load of the electronic device is higher than a second threshold. If so, step S502 is executed.

[0199] For the explanation of this step, please refer to the relevant description of steps S401 to S403 in the embodiment shown in FIG4 , which will not be repeated here for the sake of brevity.

[0200] S502: Suppress the installation process of the first application.

[0201] The explanation of this step is the same as that of step S404 in the embodiment shown in FIG. 4 , and will not be repeated here for the sake of brevity.

[0202] In one example, if the temperature of the electronic device is higher than a first threshold value in the first time period of the installation process, the installation process of the first application is suppressed in the first time period; when the installation process enters the second time period, the temperature of the electronic device is lower than a third threshold value, and the load of the electronic device is less than a fourth threshold value, the suppression of the installation process of the first application is lifted in the second time period; when the installation process enters the third time period, the load of the electronic device is higher than the second threshold value, the installation process of the first application is suppressed in the third time period, and the decision is repeated in this way until the installation process of the first application is completed.

[0203] S503: Determine whether the conditions for releasing the suppression are met: the current temperature of the electronic device is lower than the third threshold, and the current load of the electronic device is lower than the fourth threshold. If so, proceed to step S504.

[0204] The third threshold is a temperature threshold, which is lower than the first threshold. The third threshold can be any value between 30° C. and 50° C., for example, 37° C.

[0205] The fourth threshold is a load threshold, which is smaller than the second threshold. The value of the fourth threshold can be any value between 25% and 50%, for example, 30%.

[0206] It should be understood that step S503 is performed only when the installation process of the first application has not been completed. If the installation process of the first application has been completed (ie, the first application has been installed), the current process is terminated.

[0207] S504: Release the suppression of the installation process of the first application, and return to step S501.

[0208] For the explanation of this step, please refer to the relevant description of step S405 in the embodiment shown in FIG4 , which will not be repeated here for the sake of brevity.

[0209] In one example, if the temperature of the electronic device is higher than a first threshold value in the first time period of the installation process, the installation process of the first application is suppressed in the first time period; when the installation process enters the second time period, the temperature of the electronic device is lower than a third threshold value, and the load of the electronic device is less than a fourth threshold value, the suppression of the installation process of the first application is lifted in the second time period; when the installation process enters the third time period, the load of the electronic device is higher than the second threshold value, the installation process of the first application is suppressed in the third time period, and the decision is repeated in this way until the installation process of the first application is completed.

[0210] It should be understood that the process will return to step S501 only when the installation process of the first application has not been completed. If the installation process of the first application has been completed (ie, the first application has been installed), the current process will be terminated.

[0211] In an embodiment of the present application, when the current temperature or current load of the electronic device reaches a certain level, the application installation process in the non-foreground scenario can be suppressed, and when the current temperature and current load pressure of the electronic device are not large, the suppression of the application installation process can be released, so that the front-end and back-end loads of the system are relatively balanced, and while allowing the application in the non-foreground scenario to be downloaded smoothly, it can avoid the electronic device temperature being too high or the foreground application being stuck due to the sudden high load during the non-foreground application installation process. In addition, in this embodiment, the threshold for releasing the suppression is lower than the threshold for applying the suppression, which can avoid the application download process in the non-foreground scenario from frequently switching between the released and suppressed states, thereby further improving the user experience of the electronic device.

[0212] To more clearly understand the process of suppressing the installation process of the first application, illustratively, FIG6 shows a schematic flow chart of a method 600 for suppressing the installation process of the first application provided in an embodiment of the present application. As shown in FIG6 , the method 600 includes:

[0213] S601: When it is determined that the installation process of the first application is to be suppressed, the installation process of the first application is bound to run on the small core of the CPU.

[0214] In some embodiments, when the installation process of the first application is not suppressed, the installation process of the first application runs on the large core of the CPU. When it is determined that the installation process of the first application needs to be suppressed, the system sends a scheduling instruction to the CPU. The scheduling instruction is used to instruct the installation process of the first application to be adjusted and bound to the small core of the CPU to continue running, wherein the running progress before and after the adjustment is not affected.

[0215] The CPU of an electronic device includes a large core, a medium core and a small core. Among them, the frequency of the small core is lower and the corresponding operating load is also lower. In this step, by binding the installation process of the first application to the small core, the power consumption of the electronic device can be reduced. Moreover, since the foreground application generally runs on the large core of the CPU, it can also avoid the impact of the operation of the foreground task due to the operation of the installation process of the first application.

[0216] S602: Determine whether the running time of the installation process of the first application in the first cycle of the CPU is greater than the first duration. If so, execute step S603; if not, execute step S604, wherein the duration of the first cycle is the same as the duration of an operating cycle of the CPU of the first electronic device.

[0217] It should be understood that the CPU of the first electronic device includes one or more operating cycles.

[0218] Optionally, the duration of the first cycle is the same as the duration of an operating cycle of the CPU core of the first electronic device.

[0219] Among them, the first period can be, for example, 20,000 nanoseconds; the first duration can be, for example, one-third of the first period, one-half of the first period, two-thirds of the first period, or any duration less than the first period determined by user input or the system.

[0220] In this step, the running time of the installation process of the first application in the first period is greater than the first time period, which means that the cumulative running time of the installation process of the first application in the first period is greater than the first time period.

[0221] S603: Stop the installation process of the first application in the first cycle.

[0222] S604: Continue the installation process of the first application in the first cycle and return to step S602.

[0223] That is, S602 may be executed continuously (eg, periodically) until the running time of the installation process of the first application in the first period is greater than the first time length.

[0224] S605: When the installation process of the first application enters the Nth cycle, start running the installation process of the first application in the Nth cycle.

[0225] Wherein, N is a positive integer, N=2, 3, 4, ..., and the duration of the Nth cycle is the same as the duration of one operation cycle of the CPU of the first electronic device.

[0226] S606: Determine whether the running time of the installation process of the first application in the Nth cycle is greater than the first time length. If so, execute step S607; if not, execute step S608.

[0227] S607: Stop the installation process of the first application in the Nth cycle.

[0228] S608: Continue the installation process of the first application in the Nth cycle and return to step S606.

[0229] That is to say, in the embodiment of the present application, the running time of the installation process of the first application in each of the multiple cycles of the CPU is limited. When the running time reaches the first time length in the first cycle of the CPU and stops running, when the second cycle starts, the installation process of the first application can be run again in the second cycle, and after accumulating to the first time length again, it stops running in the second cycle, and so on, until the installation process of the first application ends. In some embodiments, when step S601 is executed before steps S602-S603, the above-mentioned first cycle refers to an operating cycle of the CPU small core of the first electronic device, and the installation process of the first application runs on the CPU small core; when step S601 is not executed before steps S602-S603, the above-mentioned first cycle may refer to an operating cycle of the CPU large core of the first electronic device or an operating cycle of the CPU medium core of the first electronic device, and the installation process of the first application runs on the CPU large core or the CPU medium core.

[0230] In this step, by limiting the maximum duration of the first application's installation process allowed to run in each of multiple cycles, it is possible to avoid the suppressed first application's installation process occupying the CPU core for a long time and affecting other background installation processes.

[0231] It should be noted that the specific implementation process and implementation order of step S601 and step S602-step S604 are not necessarily related, and the two can be implemented independently or in combination. For example, only step S601 can be executed, that is, the installation process of the first application can be suppressed by binding the installation process of the first application to the CPU small core of the first electronic device; steps S602-S604 can also be executed, that is, the installation process of the first application can be suppressed by controlling the maximum running time of the installation process of the first application on the CPU core of the first electronic device; steps S601-S604 can also be executed, that is, the installation process of the first application can be suppressed by binding the installation process of the first application to the CPU small core of the first electronic device and controlling the maximum running time of the installation process of the first application on the CPU small core of the first electronic device.

[0232] For example, FIG7 shows a schematic flow chart of another method 700 for suppressing the installation process of a first application provided in an embodiment of the present application. As shown in FIG7 , the method 700 includes:

[0233] S701 to S703 are the same as S601 to S603 in the embodiment shown in FIG6 , and are not described again for the sake of brevity.

[0234] S704: Determine whether the duration of suppressing the installation process of the first application reaches a second duration. If so, execute step S705; if not, execute step S706.

[0235] The suppression duration can be understood as the duration during which the installation process of the first application is in a stopped state while the CPU is running.

[0236] The second duration may be a duration determined based on user input or a duration automatically determined by the system, and this application does not impose any limitation on this.

[0237] In some embodiments, the value of the second duration is related to the priority of the installation process of the first application. The lower the priority of the installation process of the first application, the longer the second duration. The priority of the installation process of the first application refers to the priority of the installation process of the first application among all current installation event processes.

[0238] In some embodiments, the second duration is greater than or equal to the first period, or the second duration is less than the difference between the first period and the first duration.

[0239] S705: Wake up the installation process of the first application and release the suppression of the installation process of the first application.

[0240] In this step, a reasonable wake-up delay is set for the installation process of the first application in the suppressed state, which can avoid the stagnation of the installation process of the first application due to the installation process of the first application being in the suppressed state for a long time and not being scheduled.

[0241] In one example, each cycle of the first electronic device is 100,000ns, the first duration is 50,000ns, and the second duration is 120,000ns. When the cumulative running time of the installation process of the first application in the first cycle reaches 50,000ns, the running of the installation process of the first application in the first cycle is stopped, and the timing of the suppression duration is started at this time. If it is detected that the suppression duration exceeds 120,000ns and the installation process of the first application is not started in the second cycle, the installation process of the first application is woken up.

[0242] S706: Keep the installation process of the first application stopped, and return to step S704 to continue judging.

[0243] That is, S706 may be executed continuously (eg, periodically) until the suppression time of the installation process of the first application is greater than the second time.

[0244] It should be noted that the specific implementation process and implementation order of step S701, step S702-step S703, and step S704-step S706 are not necessarily related. The three can be implemented independently or in combination. For example, only step S701 can be executed, that is, the installation process of the first application is suppressed by binding the installation process of the first application to the CPU small core of the first electronic device; steps S702-S703 can also be executed, that is, the installation process of the first application is suppressed by controlling the maximum running time of the installation process of the first application on the CPU core of the first electronic device; steps S701-S703 can also be executed, that is, the installation process of the first application is suppressed by binding the installation process of the first application to the CPU small core of the first electronic device and controlling the maximum running time of the installation process of the first application on the CPU small core of the first electronic device. Suppression of the installation process; Steps S702-S706 can also be executed to suppress the installation process of the first application by controlling the maximum running time of the installation process of the first application on the CPU core of the first electronic device, and wake up the installation process of the first application when the suppression time reaches a second time; Steps S701-S706 can also be executed, namely: by binding the installation process of the first application to run on the CPU small core of the first electronic device, and controlling the maximum running time of the installation process of the first application on the CPU small core of the first electronic device to suppress the installation process of the first application, and wake up the installation process of the first application when the suppression time reaches the second time.

[0245] For example, FIG8 shows a schematic flow chart of another method 800 for controlling a process of an electronic device provided by an embodiment of the present application. As shown in FIG8 , the method 800 includes:

[0246] S801: When it is detected that the system has an installation process of a first application, it is determined whether the installation process of the first application is in a suppressed state. If so, step S802 is executed; if not, step S803 is executed.

[0247] Here, S801 is periodically executed after the installation process of the first application is detected until the installation process of the first application is completed.

[0248] In some embodiments, when the package manager service (PMS) of the first electronic device receives a dexOat process notification, it determines that an installation process of the first application is detected in the system.

[0249] In some embodiments, when the installation process of the first application is bound to the CPU small core for execution, it is determined that the installation process of the first application is in a suppressed state.

[0250] In some embodiments, when the installation process speed of the first application is significantly lower than a normal installation speed, it is determined that the installation process of the first application is in a suppressed state.

[0251] S802: Determine whether it is necessary to release the suppression of the installation process of the first application. If necessary, execute step S804.

[0252] The method for determining whether to release the suppression of the installation process of the first application is described in detail in the embodiments shown in FIG. 4 and FIG. 5 , and will not be repeated here for the sake of brevity.

[0253] S803: Determine whether the installation process of the first application needs to be suppressed. If so, execute step S805.

[0254] The method for determining whether the installation process of the first application needs to be suppressed has been described in detail in the embodiments shown in FIG. 3 to FIG. 5 , and will not be repeated here for the sake of brevity.

[0255] S804: Release the suppression of the installation process of the first application.

[0256] S805: Suppress the installation process of the first application.

[0257] The method for suppressing the installation process of the first application is described in detail in the embodiments shown in FIG. 6 and FIG. 7 , and will not be repeated here for the sake of brevity.

[0258] Optionally, in this embodiment, the installation process of the first application can be replaced by the startup process of the first application, wherein the first application is a non-system application.

[0259] In order to more clearly reflect the beneficial effects of the embodiments provided in the present application, the performance curves corresponding to the method for electronic device process control provided in the embodiments of the present application are introduced below by way of example in combination with Figures 9 and 10.

[0260] For example, Figure 9 shows a load change curve corresponding to the suppression of the installation process of the first application using the electronic device process control method provided in an embodiment of the present application. As shown in Figure 9, before suppressing the installation process of the first application, the load of the electronic device experienced sudden increases and decreases, and the overall load of the electronic device was at a high level; after suppressing the installation process of the first application, the load level of the electronic device was relatively stable throughout the test time, and the load of the electronic device remained at a low level throughout the test time.

[0261] It can be seen from this that by using the electronic device process control method provided in the embodiment of the present application to suppress the installation process of the first application, the overall load of the electronic device can be made more stable, and the suppression of sudden processes can be achieved, thereby avoiding the occurrence of application freezes and maintaining the smooth operation of the foreground application.

[0262] For example, Figure 10 shows a temperature change curve before and after suppressing the installation process of a first application using the electronic device process control method provided in an embodiment of the present application. As shown in Figure 10, before suppressing the installation process of the first application, the chip temperature of the electronic device is generally at a high level; after suppressing the installation process of the first application, the chip temperature of the electronic device is lower than the lowest temperature before suppressing, and the chip temperature of the electronic device remains within a reasonable range throughout the test time.

[0263] It can be seen from this that by using the electronic device process control method provided in the embodiment of the present application to suppress the installation process of the first application, the chip temperature of the electronic device can be maintained within a more reasonable range, overheating of the electronic device can be avoided, and system power consumption can be reduced.

[0264] For example, FIG11 shows a functional module diagram of an electronic device process control device 1100 provided in an embodiment of the present application. As shown in FIG11 , the device 1100 includes:

[0265] The detection module 1110 is configured to detect a first application installation event of the electronic device.

[0266] In some embodiments, the first application installation event may be, for example, an event of downloading and installing the first application through the application store of the first electronic device; for example, it may also be an event of automatically downloading and installing the new version of the first application when the system of the first electronic device detects a new version of the first application; for example, it may also be an event of confirming the download and installation of the first application as needed when the user uses certain functions of the first electronic device; it may also be an event of installing the first application through an installation package; it may also be an event of installing other applications, which is not limited in this application.

[0267] In some embodiments, when the package manager service (PMS) of the first electronic device receives a dexOat process notification, the detection module 1110 determines that a first application installation event of the electronic device is detected.

[0268] Among them, the first application installation process described in the embodiment of the present application can be understood as one or more application installation processes.

[0269] The judgment module 1120 is configured to judge whether the installation process of the first application needs to be suppressed according to the current temperature or current load of the first electronic device when the installation scenario of the first application is a non-foreground scenario.

[0270] Among them, the installation scenario of the first application is a non-foreground scenario, which means that the first application is not an application that is currently needed or is about to be used. Specifically, it can be determined whether the current process is a foreground process or a background process based on the process of the application. The foreground process is the process displayed on the current interface and interacts with the user. The background process refers to a process without user-visible activity. For example: a user downloads a first application through the application store of a first electronic device. During the download of the first application, the user is using other applications on the first electronic device. In this case, the first application is currently a background application and its installation scenario is a non-foreground scenario. For another example: when the background of the first electronic device detects that a new version of the first application that is not currently in use exists, it downloads and installs the new version of the first application (that is, when the first application is idle, the version is automatically updated in the background). In this case, the new version of the first application is currently a background application and its installation scenario is a non-foreground scenario. For another example: when a user needs to download and install the first application before using a certain function of the browser, the first application is currently a foreground application and its installation scenario is a foreground scenario. Among them, the determination of whether the application is currently a foreground application or a background application (that is, the determination of whether the installation scenario of the application is a non-foreground scenario) is a conventional technology in this field and will not be repeated here.

[0271] The first application described in the embodiment of the present application is currently a background application, and can also be described as the installation process of the first application occurring in a non-foreground scenario, where the non-foreground scenario can be understood as a scenario where the first application is not currently needed or is about to be used.

[0272] In some embodiments, when the installation scenario of the first application is a non-foreground scenario, if the current temperature of the first electronic device is higher than a first threshold, or the current load of the first electronic device is higher than a second threshold, the judgment module 1120 determines that the installation process of the first application needs to be suppressed.

[0273] The first threshold is a temperature threshold, and the value of the first threshold can be any value between 35°C and 50°C, for example, 40°C.

[0274] The second threshold is a load threshold, and the value of the second threshold can be any value between 30% and 50%, for example, 35%.

[0275] The current temperature of the first electronic device refers to the current chip temperature of the first electronic device; and the current load of the first electronic device refers to the current central processing unit (CPU) load of the first electronic device.

[0276] The suppression module 1130 is configured to suppress the installation process of the first application when it is determined that the installation process of the first application needs to be suppressed.

[0277] Suppressing the installation process of the first application may include reducing the installation speed of the first application, reducing the installation priority of the first application, or reducing both the installation speed and the installation priority of the first application. The specific method by which the suppression module 1130 suppresses the first application is described in the embodiments shown in FIG6 and FIG7 , and is not further described here for the sake of brevity.

[0278] In some embodiments, the device 1100 further includes a decompression module, which is configured to decompress the installation process of the first application when it is necessary to decompress the installation process of the first application.

[0279] In some embodiments, when the installation process of the first application is currently in a suppressed state, if the current temperature of the electronic device is lower than or equal to a first threshold and the current load of the electronic device is lower than or equal to a second threshold, the suppression of the installation process of the first application is released.

[0280] In some further embodiments, when the installation process of the first application is currently in a suppressed state, if the current temperature of the electronic device is lower than or equal to a third threshold and the current load of the electronic device is lower than or equal to a fourth threshold, the suppression of the installation process of the first application is released.

[0281] The third threshold is a temperature threshold, which is lower than the first threshold. The third threshold can be any value between 30° C. and 50° C., for example, 37° C.

[0282] The fourth threshold is a load threshold, which is smaller than the second threshold. The value of the fourth threshold can be any value between 25% and 50%, for example, 30%.

[0283] In an embodiment of the present application, when the current temperature or current load of the electronic device reaches a certain level, the application installation process in the non-foreground scenario can be suppressed, so that the foreground and backend loads of the system are relatively balanced, and the electronic device temperature is avoided from being too high or the foreground application is stuck due to the sudden high load during the non-foreground application installation process, thereby improving the user experience of the electronic device.

[0284] It should be understood that the embodiments provided in this application are illustrated using the application installation scenario as an example, but this does not limit the scenarios to which the present application solution is applicable. The embodiments provided in this application can also be used in the power-on startup scenarios of electronic devices, for example, they can be applied to the background-related startup scenarios of non-system applications within a certain period of time after the electronic device system is powered on.

[0285] In one example, the startup items of an electronic device include a first application, a second application, a third application, and a fourth application, wherein the first application and the second application are non-system applications. Then, when the electronic device is powered on, if the suppression conditions are met (for an explanation of the suppression conditions, see the relevant description in the embodiments shown in any one of Figures 3 to 7), the startup of the first application and the second application is suppressed (which may be by suppressing their startup speed, etc.) to improve the system fluency of the electronic device.

[0286] For example, Figure 12 shows a system framework diagram of an electronic device provided by an embodiment of the present application. As shown in Figure 12, the system framework includes an application layer, a framework layer, a system library, and a kernel layer. Multiple applications are located in the application layer, such as a first application, a second application, and a third application; a detection module 1210 and a judgment module 1220 are located in the framework layer; and a compression module 1230 and a decompression module 1240 are located in the kernel layer.

[0287] Among them, the explanation of the detection module 1210, the judgment module 1220, the compression module 1230 and the decompression module 1240 has been described in detail in the embodiment described in Figure 11, and for the sake of brevity, it will not be repeated here.

[0288] One or more of the modules or units described herein can be implemented in software, hardware, or a combination of the two. When any of the above modules or units is implemented in software, the software exists in the form of computer program instructions and is stored in a memory, and a processor can be used to execute the program instructions and implement the above method flow. The processor may include, but is not limited to, at least one of the following: a central processing unit (CPU), a microprocessor, a digital signal processor (DSP), a microcontroller (MCU), or an artificial intelligence processor, etc., a computing device that runs software, each computing device may include one or more cores for executing software instructions to perform operations or processing. The processor may be built into an SoC (system on chip) or an application specific integrated circuit (ASIC), or it may be an independent semiconductor chip. In addition to the core for executing software instructions to perform operations or processing within the processor, it may further include necessary hardware accelerators, such as a field programmable gate array (FPGA), a PLD (programmable logic device), or a logic circuit that implements dedicated logic operations.

[0289] When the modules or units described in this document are implemented in hardware, the hardware can be any one or any combination of a CPU, a microprocessor, a DSP, an MCU, an artificial intelligence processor, an ASIC, a SoC, an FPGA, a PLD, a dedicated digital circuit, a hardware accelerator, or a non-integrated discrete device, which can run the necessary software or not rely on the software to execute the above method flow.

[0290] When the modules or units described herein are implemented using software, they can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the process or function described in the embodiment of the present application is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices. The computer instructions can be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions can be transmitted from a website, computer, server, or data center to another website, computer, server, or data center by wired (e.g., coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) mode. The computer-readable storage medium can be any available medium with a configuration capability similar to a cache that a computer can access, or a data storage device such as a server, a data center, etc. that includes one or more available media integrated with a configuration capability similar to a cache.

[0291] Those skilled in the art will appreciate that the units and method steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

[0292] Those skilled in the art will clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.

[0293] In the several embodiments provided in this application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are merely schematic. For example, the division of the units is merely a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.

[0294] The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of these units may be selected to achieve the purpose of this embodiment according to actual needs.

[0295] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.

[0296] If the functions are implemented in the form of software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art, or the part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes several instructions for enabling a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.

[0297] The above description is merely a specific embodiment of the present application, but the scope of protection of the present application is not limited thereto. Any changes or substitutions that can be easily conceived by a person skilled in the art within the technical scope disclosed in this application should be included in the scope of protection of this application. Therefore, the scope of protection of this application should be based on the scope of protection of the claims.

Claims

1. A process control method for an electronic device, characterized in that: The method comprises: A first event occurring in a first electronic device is detected, where the first event is a background installation event of a first application, or the first event is a startup event of a second application, where the startup event is a startup event of the second application when the first electronic device is turned on; Acquiring a current temperature or a current load of the first electronic device; determining whether it is necessary to suppress a first process according to a current temperature or a current load of the first electronic device, where the first process is a process of the first event; When it is determined that the first process needs to be suppressed, the first process is suppressed.

2. The method according to claim 1, characterized in that The determining whether the first process needs to be suppressed according to the current temperature or current load of the first electronic device includes: When the current temperature of the first electronic device is higher than a first threshold, or the current load of the first electronic device is higher than a second threshold, it is determined that the first process needs to be suppressed.

3. The method according to claim 2, characterized in that The method further comprises: When the current temperature of the first electronic device is lower than a third threshold and the current load of the first electronic device is lower than a fourth threshold, the suppression of the first process is released, wherein the third threshold is less than or equal to the first threshold and the fourth threshold is less than or equal to the second threshold.

4. The method according to any one of claims 1 to 3, characterized in that The suppressing the first process includes: The first process is bound to a small core of a central processing unit (CPU) of the first electronic device for execution.

5. The method according to any one of claims 1 to 4, characterized in that The suppressing the first process further includes: Detecting whether the running time of the first process in the i-th cycle of the first electronic device is greater than a first time length; If the running time in the i-th period is greater than the first time length, the running of the first process in the i-th period is stopped, where i is a positive integer, i=1, 2, 3, ...

6. The method according to claim 5, characterized in that The suppressing the first process further includes: When the first process enters the (i+1)th cycle of the first electronic device, starting the first process to run in the (i+1)th cycle; Detecting whether the running time of the first process in the (i+1)th cycle of the first electronic device is greater than a first time length; If the running time in the (i+1)th cycle is greater than the first time length, the running of the first process in the (i+1)th cycle is stopped.

7. The method according to claim 5 or 6, characterized in that: The duration of the i-th cycle is the same as the duration of an operation cycle of the CPU of the first electronic device.

8. The method according to any one of claims 5 to 7, characterized in that After stopping the execution of the first process in the i-th cycle, the method further includes: Obtaining a duration for which the first electronic device suppresses the first process; When the suppression time reaches a second time, the first process is awakened.

9. The method according to claim 8, characterized in that The second duration is greater than or equal to the duration of the i-th cycle.

10. The method according to any one of claims 1 to 9, characterized in that The second application is a third-party application.

11. An electronic device, characterized in that: The electronic device comprises: a detection module, configured to detect a first event occurring in the electronic device, wherein the first event is a background installation event of a first application, or the first event is a startup event of a second application, wherein the startup event is a startup event of the second application when the electronic device is turned on; An acquisition module, used to acquire the current temperature or current load of the electronic device; a judging module, configured to judge whether it is necessary to suppress a first process according to a current temperature or a current load of the electronic device, the first process being a process of the first event; The suppression module is used to suppress the first process when it is determined that the first process needs to be suppressed.

12. The electronic device according to claim 11, characterized in that: The judgment module is specifically used for: When the current temperature of the electronic device is higher than a first threshold, or the current load of the electronic device is higher than a second threshold, it is determined that the first process needs to be suppressed.

13. The electronic device according to claim 12, characterized in that: The electronic device further comprises: A decompression module is used to release the suppression of the first process when the current temperature of the electronic device is lower than a third threshold and the current load of the electronic device is lower than a fourth threshold, wherein the third threshold is less than or equal to the first threshold, and the fourth threshold is less than or equal to the second threshold.

14. The electronic device according to any one of claims 11 to 13, characterized in that: The pressing module is specifically used for: The first process is bound to a small core of a central processing unit (CPU) of the electronic device for execution.

15. The electronic device according to any one of claims 11 to 14, characterized in that: The detection module is also used for: Detecting whether the running time of the first process in the i-th cycle of the electronic device is greater than a first time length; The compression module is also specifically used for: When the running time of the first process in the i-th cycle of the electronic device is greater than the first time length, the running of the first process in the i-th cycle is stopped, where i is a positive integer, i=1, 2, 3, ...

16. The electronic device according to claim 15, characterized in that: The electronic device further comprises: a starting module, configured to start the operation of the first process in the (i+1)th cycle when the first process enters the (i+1)th cycle of the electronic device; The detection module is also used for: Detecting whether the running time of the first process in the (i+1)th cycle of the electronic device is greater than a first time length; The compression module is also specifically used for: If the running time in the (i+1)th cycle is greater than the first time length, the running of the first process in the (i+1)th cycle is stopped.

17. The electronic device according to claim 15 or 16, characterized in that: The duration of the i-th cycle is the same as the duration of an operation cycle of the CPU of the electronic device.

18. The electronic device according to any one of claims 15 to 17, characterized in that: The acquisition module is also used for: After the suppression module stops the operation of the first process in the i-th operation cycle, obtaining the suppression time of the first process by the electronic device; The compression module is also specifically used for: When the suppression time reaches a second time, the first process is awakened.

19. The electronic device according to claim 18, characterized in that: The second duration is greater than or equal to the duration of the i-th cycle.

20. The electronic device according to any one of claims 11 to 19, characterized in that: The second application is a third-party application.

21. An electronic device, characterized in that: include: one or more processors; one or more memories; and one or more computer programs, wherein the one or more computer programs are stored in the one or more memories, and the one or more computer programs include instructions, which, when executed by the one or more processors, enable the electronic device to perform the method as described in any one of claims 1 to 10.

22. A computer-readable storage medium, characterized in that: The storage medium stores a program or an instruction, and when the program or the instruction is executed, the method according to any one of claims 1 to 10 is implemented.

23. A chip, characterized in that: include: one or more processors; One or more memories, the one or more processors are coupled to the one or more memories, and are configured to read and execute instructions in the one or more memories to perform the method according to any one of claims 1 to 10.

Citation Information

Patent Citations

  • Application installation method and device

    CN106020893A

  • Application program installing method and device as well as computer equipment

    CN106775828A

  • CPU resource scheduling method of dex2oat process and electronic equipment

    CN112948074A

  • Method and device for controlling CPU resource occupancy and electronic equipment

    CN113791868A