Multi-screen resource scheduling method and electronic device

By setting priority and resource scheduling strategies for display screens in multi-screen devices, the problem of uneven allocation of front-end applications in multi-screen devices is solved, ensuring smooth operation and user experience of the application.

WO2025145839A1PCT designated stage expired Publication Date: 2025-07-10HUAWEI TECH CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2024/136455
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-01-05
Filing Date
2024-12-03
Publication Date
2025-07-10

AI Technical Summary

Technical Problem

In multi-screen devices, it is difficult for the prior art to effectively schedule system resources for multiple display screens, resulting in stuttering of applications running in the front desk and affecting the user experience.

Method used

By prioritizing the foreground running applications in multiple displays, using different resource scheduling strategies such as real-time scheduling and fully fair scheduling, ensure that high-priority applications get enough system resources, and adjust priority and turn off low-priority applications when the system load is too high.

Benefits of technology

It realizes the smooth operation of front-end applications in multi-screen devices, improves user experience, and avoids lag problems caused by uneven system resource allocation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024136455_10072025_PF_FP_ABST
    Figure CN2024136455_10072025_PF_FP_ABST
Patent Text Reader

Abstract

The present application provides a multi-screen resource scheduling method and an electronic device. In the method, the electronic device comprises a first display screen and a second display screen, the electronic device determines a first application running in the foreground on a first display screen, and sets the resource scheduling priority of the first application as a first priority; the electronic device determines a second application running in the foreground on a second display screen, and sets the resource scheduling priority of the second application as the first priority; and the electronic device schedules system resources for the first application and the second application on the basis of a first resource scheduling strategy corresponding to the first priority. By means of the solution, the electronic device may set all the resource scheduling priorities of applications running in the foreground on multiple display screens to a relatively high priority level, so that the electronic device can prioritize the scheduling of system resources for the applications running in the foreground on the multiple display screens, ensuring that the application running in the foreground on each display screen can run smoothly, ensuring the user experience.
Need to check novelty before this filing date? Find Prior Art

Description

Multi-screen resource scheduling method and electronic device

[0001] CROSS-REFERENCE TO RELATED APPLICATIONS

[0002] This application claims priority to the Chinese patent application filed with the State Intellectual Property Office of the People's Republic of China on January 5, 2024, with application number 202410029288.9 and application name "A multi-screen resource scheduling method and electronic device", the entire contents of which are incorporated by reference into this application. Technical Field

[0003] The present application relates to the field of Internet technology, and in particular to a multi-screen resource scheduling method and electronic device. Background Art

[0004] Typically, electronic devices with a single display screen utilize a "single-chip, single-screen" approach, where one chip drives one screen. In this approach, the electronic device's system resources are scheduled and managed around a single screen. However, with the emergence of multi-screen devices, a single chip needs to support multiple screens simultaneously, necessitating a "single-chip, multiple-screen" approach. For example, in a smart cockpit scenario, the chip in an in-vehicle device needs to support multiple screens, including the central control screen, instrument panel, passenger panel, rear screen, and armrest screen.

[0005] Currently, resource scheduling for multi-screen devices has become an urgent problem that needs to be solved. Summary of the Invention

[0006] The present application provides a multi-screen resource scheduling method and electronic device for improving the fluency of applications running in the foreground on multiple display screens.

[0007] In a first aspect, the present application provides a multi-screen resource scheduling method, which can be executed by an electronic device, the electronic device including a first display screen and a second display screen. The method comprises: the electronic device determines that a first application is running in the foreground of the first display screen, and sets the resource scheduling priority of the first application to a first priority; the electronic device determines that a second application is running in the foreground of the second display screen, and sets the resource scheduling priority of the second application to the first priority; the electronic device schedules system resources for the first application and the second application according to a first resource scheduling policy corresponding to the first priority.

[0008] In the above method, the electronic device can set the resource scheduling priority of the applications running in the foreground on multiple display screens to a higher priority, so that the electronic device can prioritize scheduling system resources for the applications running in the foreground on multiple display screens, ensuring that the applications running in the foreground on each display screen can run smoothly and ensure user experience.

[0009] In one possible design, setting the resource scheduling priority of the first application to a first priority includes: adding the application process of the first application to a first application process group, where the first application process group is an application process group corresponding to the first priority;

[0010] Setting the resource scheduling priority of the second application to the first priority includes: adding the application process of the second application to the first application process group.

[0011] Through this design, the electronic device can maintain multiple application process groups corresponding to multiple priorities, and set the resource scheduling priority of the application by adding the application process to the application process group, so as to facilitate the electronic device to manage the resource scheduling priority of the applications running on multiple display screens.

[0012] In one possible design, the method also includes: determining that a third application is running in the background of the first display screen, setting the resource scheduling priority of the third application to a second priority, and the second priority is lower than the first priority; determining that a fourth application is running in the background of the second display screen, setting the resource scheduling priority of the fourth application to the second priority; and scheduling system resources for the third application and the fourth application according to the second resource scheduling strategy corresponding to the second priority.

[0013] Through this design, the electronic device can set the resource scheduling priority of applications running in the background on multiple display screens to the second priority, which is lower than the first priority, thereby preventing applications running in the background from occupying system resources and affecting the smoothness of applications running in the foreground.

[0014] In one possible design, setting the resource scheduling priority of the third application to the second priority includes: adding the application process of the third application to a second application process group, where the second application process group is an application process group corresponding to the second priority;

[0015] Setting the resource scheduling priority of the fourth application to the second priority includes: adding the application process of the fourth application to the second application process group.

[0016] Through this design, the electronic device can also add the application programs of the applications running in the background of multiple display screens to the second application process group to set the resource scheduling priority of the applications running in the background of multiple display screens to the second priority, which facilitates the electronic device to manage the resource scheduling priority of the applications running in multiple display screens.

[0017] In one possible design, the method further includes: determining that the system load is greater than a preset threshold, and managing the application programs running on the first display and the second display in order of resource scheduling priority from low to high.

[0018] Through this design, when the system load of an electronic device is greater than a preset threshold, the electronic device can manage and control application processes in order of resource scheduling priority from low to high, such as killing the application process or turning off the display screen corresponding to the application process, thereby giving priority to ensuring system resources for application processes with higher priority.

[0019] In one possible design, the method further includes: determining that the system load is greater than a preset threshold, determining that the priority of the first display screen is higher than the priority of the second display screen based on a preset display screen priority, and adjusting the resource scheduling priority of the second application from the first priority to the second priority, the first priority being higher than the second priority.

[0020] Through this design, when the system load of the electronic device is greater than a preset threshold, the electronic device can also adjust the resource scheduling priority of the application running in the foreground of the lower-priority display according to the preset display priority to ensure the smoothness of the application running on the higher-priority display.

[0021] In one possible design, the method further includes: determining that the first application switches from a foreground running state to a background running state, and setting the resource scheduling priority of the first application to a second priority, where the second priority is lower than the first priority.

[0022] With this design, the electronic device can adjust the resource scheduling priority of the application accordingly when the application switches the running state, thereby timely adjusting the resource scheduling strategy corresponding to the application.

[0023] In one possible design, the system resources include at least one of central processing unit (CPU) resources, memory resources, input and output (IO) resources, and network access resources.

[0024] Through this design, the electronic device can reasonably schedule at least one of the CPU resources, memory resources, IO resources and network access resources according to the resource scheduling priority corresponding to the application, thereby ensuring the smooth operation of the application.

[0025] In one possible design, the first resource scheduling policy is a real-time scheduling RT policy, and the second resource scheduling policy is a completely fair scheduling CFS policy.

[0026] In the second aspect, the present application provides a multi-screen resource scheduling method, which can be executed by an electronic device, wherein the electronic device includes a first display screen and a second display screen. The method includes: the electronic device determines that a first application is running in the foreground of the first display screen, and sets the resource scheduling priority of the first application to the first priority; the electronic device schedules system resources for the first application according to a first resource scheduling strategy corresponding to the first priority; the electronic device determines that a second application is running in the foreground of the second display screen, and sets the resource scheduling priority of the second application to the second priority; the electronic device schedules system resources for the second application according to a second resource scheduling strategy corresponding to the second priority; the electronic device wherein the first priority is higher than the second priority, and the first priority and the second priority are higher than the resource scheduling priorities of applications running in the background of the first display screen and the second display screen.

[0027] In the above method, the electronic device can set different resource scheduling priorities for applications running in the foreground of different display screens among multiple display screens, thereby giving priority to scheduling system resources for applications running in the foreground of display screens that are frequently used by users or are more important in user usage scenarios, and at the same time setting the resource scheduling priority of applications running in the foreground of other display screens to be higher than the resource scheduling priority of applications running in the background, to prevent lag in applications running in the foreground of other display screens.

[0028] In one possible design, setting the resource scheduling priority of the first application to a first priority includes: adding the application process of the first application to a first application process group, where the first application process group is an application process group corresponding to the first priority;

[0029] Setting the resource scheduling priority of the second application to the second priority includes: adding the application process of the second application to a second application process group, where the second application process group is an application process group corresponding to the second priority.

[0030] Through this design, the electronic device can maintain multiple application process groups corresponding to multiple priorities, and set the resource scheduling priority of the application by adding the application process to the application process group, so as to facilitate the electronic device to manage the resource scheduling priority of the applications running on multiple display screens.

[0031] In one possible design, the method also includes: determining that a third application is running in the background of the first display screen, setting the resource scheduling priority of the third application to a third priority, and the third priority is lower than the second priority; determining that a fourth application is running in the background of the second display screen, setting the resource scheduling priority of the fourth application to the third priority; and scheduling system resources for the third application and the fourth application according to a third resource scheduling strategy corresponding to the third priority.

[0032] Through this design, the electronic device can set the resource scheduling priority of applications running in the background on multiple displays to the third priority, which is lower than the second priority, thereby preventing applications running in the background from occupying system resources and affecting the smoothness of applications running in the foreground.

[0033] In one possible design, setting the resource scheduling priority of the third application to a third priority includes: adding the application process of the third application to a third application process group, where the third application process group is an application process group corresponding to the third priority;

[0034] Setting the resource scheduling priority of the fourth application to the third priority includes:

[0035] Add the application process of the fourth application to the third application process group.

[0036] Through this design, the electronic device can also add the application programs of the applications running in the background of multiple display screens to the third application process group to set the resource scheduling priority of the applications running in the background of multiple display screens to the third priority, which facilitates the electronic device to manage the resource scheduling priority of the applications running in multiple display screens.

[0037] In one possible design, the method further includes: determining that the system load is greater than a preset threshold, and managing the application programs running on the first display and the second display in order of resource scheduling priority from low to high.

[0038] In one possible design, the method further includes: determining that the first application switches from a foreground running state to a background running state, and setting the resource scheduling priority of the first application to a third priority, where the third priority is lower than the second priority.

[0039] In one possible design, the system resources include at least one of central processing unit (CPU) resources, memory resources, input and output (IO) resources, and network access resources.

[0040] Optionally, the electronic device in the multi-screen resource scheduling method provided in the first and second aspects may include one or more second display screens. This application does not limit the number of display screens of the electronic device.

[0041] In a third aspect, the present application provides an electronic device comprising multiple functional modules; the multiple functional modules interact with each other to implement the method performed by the electronic device in any of the above aspects and its respective embodiments. The multiple functional modules can be implemented based on software, hardware, or a combination of software and hardware, and the multiple functional modules can be arbitrarily combined or divided based on the specific implementation.

[0042] In a fourth aspect, the present application provides an electronic device comprising at least one processor and at least one memory, wherein the at least one memory stores computer program instructions. When the electronic device is running, the at least one processor executes the method executed by the electronic device in any of the above aspects and its various embodiments.

[0043] In a fifth aspect, the present application also provides a computer program product comprising instructions, which, when executed on a computer, enables the computer to execute the method executed by the electronic device in any of the above aspects and its various embodiments.

[0044] In a sixth aspect, the present application also provides a computer-readable storage medium, in which a computer program is stored. When the computer program is executed by a computer, the computer executes the method executed by the electronic device in any of the above aspects and its various embodiments.

[0045] In a seventh aspect, the present application also provides a chip, which is used to read a computer program stored in a memory and execute the method executed by the electronic device in any of the above aspects and its various embodiments.

[0046] In an eighth aspect, the present application further provides a chip system, comprising a processor for supporting a computer device in implementing any of the above aspects and methods executed by an electronic device in each of its embodiments. In one possible design, the chip system further comprises a memory for storing programs and data necessary for the computer device. The chip system may be composed of a chip or may include a chip and other discrete devices.

[0047] The embodiments of the present application can be further combined to provide more implementations based on the implementations provided in the above aspects. For the beneficial effects of the third to eighth aspects, please refer to the description of the beneficial effects of the first to second aspects, which will not be repeated here. BRIEF DESCRIPTION OF THE DRAWINGS

[0048] FIG1 is a schematic diagram of a single-chip single-screen device provided in an embodiment of the present application;

[0049] FIG2 is a schematic diagram of an application scheduling priority according to an embodiment of the present application;

[0050] FIG3 is an example diagram of a one-chip multi-screen device provided in an embodiment of the present application;

[0051] FIG4 is a schematic diagram of a foreground running application on a multi-screen device provided by an embodiment of the present application;

[0052] FIG5 is a schematic diagram of the structure of an electronic device provided in an embodiment of the present application;

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

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

[0055] FIG8 is a flowchart of a multi-screen resource scheduling method provided in an embodiment of the present application;

[0056] FIG9 is a flowchart of a multi-screen resource scheduling method provided in an embodiment of the present application. DETAILED DESCRIPTION

[0057] In order to make the purpose, technical solutions and advantages of the embodiments of the present application more clear, the embodiments of the present application will be further described in detail below with reference to the accompanying drawings. In the description of the embodiments of the present application, the terms "first" and "second" are used for descriptive purposes only and should not be understood as indicating or implying relative importance or implicitly indicating the number of the indicated technical features. Therefore, the features defined as "first" and "second" may explicitly or implicitly include one or more of the features.

[0058] It should be understood that in the embodiments of the present application, "at least one" refers to one or more, and "more" refers to two or more. "And / or" describes the association relationship of associated objects, indicating that three relationships may exist. For example, A and / or B can represent: the existence of A alone, the existence of A and B at the same time, and the existence of B alone, where A and B can be singular or plural. The character " / " generally indicates that the previous and next associated objects are in an "or" relationship. "At least one of the following" or similar expressions refers to any combination of these items, including any combination of single or plural items. For example, at least one of a, b or c can represent: a, b, c, a and b, a and c, b and c, or a, b and c, where a, b, c can be single or multiple.

[0059] Typically, when an electronic device includes a display screen, a "single-chip, single-screen" approach is adopted, in which one chip drives one screen. In this approach, the electronic device's system resources are scheduled and managed around one screen. The system resources may include a central processing unit (CPU), memory, input / output (IO), network access, and other resources.

[0060] For example, Figure 1 is a schematic diagram of a one-core, single-screen device provided in an embodiment of the present application. Referring to Figure 1, taking an in-vehicle device as an example, when the in-vehicle device includes a central control screen, in the one-core, single-screen mode, the system resources of the in-vehicle device are all scheduled and managed around the central control screen. For example, assuming that the in-vehicle device processor adopts big and small core technology, the big core usually has a higher clock frequency and more cache to handle high-performance tasks; while the small core is more energy-efficient and suitable for handling light-load tasks. The in-vehicle device can give priority to scheduling the use of the big core for applications running in the foreground of the central control screen, and schedule the use of the small core for background applications that are not perceived by the user. When the system has insufficient available memory, the in-vehicle device can also give priority to cleaning up background applications to free up excess memory, thereby ensuring the memory required by the foreground application.

[0061] Optionally, the electronic device can set the resource scheduling priority of the application running in the foreground of the central control screen to the highest priority, and set the resource scheduling priority of the application running in the background to the lowest priority. For example, Figure 2 is a schematic diagram of an application scheduling priority provided in an embodiment of the present application. Referring to Figure 2, assuming that application A is running in the foreground and the electronic device has not started application B, the electronic device can add the process of application A to the foreground group (fg-group). The user operation switches application A to the background and starts application B, then application B is running in the foreground and application A is running in the background. The electronic device can set the resource scheduling priority of application B to the highest priority, such as the resource scheduling policy corresponding to application B can be a real-time scheduling (RT) policy, application B can preempt resources when scheduling resources, and can also give priority to the large core of the processor. When application A is running in the background, the electronic device can set the resource scheduling priority of application A to the lowest priority, such as the resource scheduling policy corresponding to application A can be a completely fair scheduling (CFS) policy, application A is restricted to scheduling only the small core in the processor, and when the electronic device is in a high load state, application A can be checked and killed.

[0062] However, with the emergence of multi-screen devices, a chip may need to support multiple display screens at the same time, and thus adopt a "one chip, multiple screens" approach in which one chip drives multiple display screens. For example, Figure 3 is an example diagram of a one-chip, multi-screen device provided in an embodiment of the present application. Figure 3 takes an in-vehicle device including multiple display screens as an example. Referring to Figure 3, the in-vehicle device may include multiple display screens such as a central control screen, an instrument screen, a co-pilot screen, a rear screen, an augmented reality head-up display (AR HUD), and an armrest screen. The user in the driver's seat can use the central control screen and the instrument screen, the user in the co-pilot seat can use the co-pilot screen and the armrest screen, and the user in the back seat can use the rear screen and the armrest screen. In some embodiments, when there are applications running in the foreground on multiple display screens of the in-vehicle device, the in-vehicle device can set the resource scheduling priority of the foreground application in the display screen where the focus is located to the highest priority, and set the resource scheduling priority of the foreground applications in other display screens to the lowest priority. Among them, the display screen where the focus is located can be the display screen where the user last triggered an operation. Alternatively, the vehicle device can set the resource scheduling priority of the foreground application on the central control screen to the highest priority, and the resource scheduling priority of the foreground applications on other displays to the lowest priority. When resource scheduling is performed based on this method, because the resource scheduling of the foreground application on only one display is prioritized, the foreground applications running on other displays may experience lag during operation, affecting the user experience.

[0063] For example, Figure 4 is a schematic diagram of a foreground running application of a multi-screen device provided by an embodiment of the present application. Referring to Figure 4, the first user in the driving seat operates to start the music application in the central control screen, and the music application runs in the foreground of the central control screen. The first user can operate to start the navigation application in the navigation area of ​​the central control screen, and the music application and the navigation application are displayed in split screen on the central control screen. As shown in Figure 4, the music application occupies 1 / 3 of the display area of ​​the central control screen, and the navigation application occupies 2 / 3 of the display area of ​​the central control screen. The vehicle-mounted device can set the resource scheduling priority of the music application and the navigation application to the first priority. The second user in the co-pilot seat operates to start the gallery application in the co-pilot screen, and the second user slides to view the pictures in the gallery application. The vehicle-mounted device can set the resource scheduling priority of the gallery application to the second priority. The third user in the back seat can operate the back screen to run the video application and trigger the video playback. The vehicle-mounted device can set the resource scheduling priority of the video application to the second priority. In this example, the first priority is greater than the second priority, then the vehicle-mounted device can prioritize the resource supply of the foreground application of the central control screen. When the system load of the vehicle-mounted device is high, since the resource scheduling priority of the gallery application in the co-pilot screen and the video application in the rear screen is low, when the second user triggers the sliding operation on the co-pilot screen, he will feel that the interface switching is not smooth, and the video on the rear screen watched by the third user will also be stuck.

[0064] Based on the above problems, an embodiment of the present application provides a multi-screen resource scheduling method, which can be executed by an electronic device. In the multi-screen resource scheduling method provided in the embodiment of the present application, the electronic device includes a first display screen and a second display screen. In response to the user's first operation, the electronic device runs a first application in the foreground of the first display screen, and sets the resource scheduling priority of the first application to the first priority; in response to the user's second operation, the electronic device runs a second application in the foreground of the second display screen, and sets the resource scheduling priority of the second application to the first priority. The electronic device performs resource scheduling on the first application and the second application according to the first resource scheduling strategy corresponding to the first priority. Through this solution, the electronic device can set the resource scheduling priority of the applications running in the foreground of multiple display screens to a higher priority, so that the electronic device can prioritize scheduling system resources for the applications running in the foreground of multiple display screens, ensuring that the applications running in the foreground of each display screen can run smoothly, and ensuring user experience.

[0065] The following describes electronic devices and embodiments for using such electronic devices. The electronic devices of the embodiments of the present application may be in-vehicle devices including multiple screens, mobile phones, tablet computers, augmented reality (AR) / virtual reality (VR) devices, laptop computers, ultra-mobile personal computers (UMPCs), netbooks, personal digital assistants (PDAs), wearable devices, etc. The embodiments of the present application do not impose any restrictions on the specific types of electronic devices.

[0066] In some embodiments of the present application, the electronic device may also be a portable terminal device that also includes other functions such as a personal digital assistant and / or a music player. Or portable terminal devices with other operating systems.

[0067] FIG5 is a schematic diagram of the structure of an electronic device 100 provided in an embodiment of the present application. As shown in FIG5 , 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.

[0068] 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, 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. The controller may serve as the nerve center and command center of the electronic device 100. The controller may generate operation control signals based on instruction opcodes and timing signals to control instruction fetching and execution. The processor 110 may also include memory for storing instructions and data. In some embodiments, the memory in the processor 110 is a high-speed cache memory. This memory may store instructions or data that have just been used or are being recycled by the processor 110. If the processor 110 needs to use the instruction or data again, it can directly retrieve it from the memory. This avoids duplicate accesses, reduces the processor 110's waiting time, and thus improves system efficiency.

[0069] The USB interface 130 is an interface that complies with USB standards and specifications, 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, and can also be used to transfer data between the electronic device 100 and peripheral devices. The charging management module 140 is used to receive charging input from the charger. 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.

[0070] The wireless communication functionality of electronic device 100 can be implemented using antenna 1, antenna 2, mobile communication module 150, wireless communication module 160, a modem processor, and a baseband processor. 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.

[0071] 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.

[0072] 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.

[0073] 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).

[0074] The display screen 194 is used to display the display interface of the application, such as displaying the display page of the application installed on the electronic device 100. The 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 or an active-matrix organic light-emitting diode (AMOLED), a flexible light-emitting diode (FLED), a MiniLED, a MicroLed, a Micro-oLed, a quantum dot light-emitting diode (QLED), etc. In the embodiment of the present application, the electronic device 100 may include N display screens 194, where N is a positive integer greater than 1.

[0075] 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.

[0076] 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, and the software code of at least one application, etc. The data storage area can store data generated during the use of the electronic device 100 (such as captured images, recorded videos, 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.

[0077] 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. 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 pictures and videos can be stored on the external memory card.

[0078] 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.

[0079] Among them, the sensor module 180 may include a pressure sensor 180A, an acceleration sensor 180B, a touch sensor 180C, etc.

[0080] The pressure sensor 180A is used to sense the pressure signal and convert the pressure signal into an electrical signal. In some embodiments, the pressure sensor 180A can be disposed on the display screen 194 .

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

[0082] The buttons 190 include a power button, a volume button, etc. The button 190 can be a mechanical button. It can also be a touch button. The electronic device 100 can receive button input and generate key signal input related to the user settings and function control of the electronic device 100. The motor 191 can generate a vibration prompt. The 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. The touch vibration feedback effect can also support customization. The indicator 192 can be an indicator light, which can be used to indicate the charging status, power changes, and can also be used to indicate messages, missed calls, notifications, etc. The SIM card interface 195 is used to connect the SIM card. The SIM card can be inserted into the SIM card interface 195 or pulled out from the SIM card interface 195 to achieve contact and separation with the electronic device 100.

[0083] It is understood that the components shown in FIG5 do not constitute a specific limitation on the electronic device 100. The electronic device may include more or fewer components than shown, or may combine or separate certain components, or arrange the components differently. In addition, the combination / connection relationship between the components in FIG5 may also be adjusted and modified.

[0084] Figure 6 is a block diagram of the software structure of an electronic device provided in an embodiment of the present application. As shown in Figure 6, the software structure of the electronic device can be a layered architecture. For example, the software can be divided into several layers, each with a clear role and division of labor. The layers communicate with each other through software interfaces. In some embodiments, the operating system is divided into four layers, from top to bottom, namely, the application layer, the application framework layer (framework, FWK), the runtime (runtime) and system library, and the kernel layer.

[0085] The application layer may include a series of application packages. As shown in Figure 6, the application layer may include a camera, settings, skin module, user interface (UI), third-party applications, etc. Among them, third-party applications may include gallery, calendar, call, map, navigation, WLAN, Bluetooth, music, video, short message, etc. In an embodiment of the present application, the application layer may include a target installation package of a target application that the electronic device requests to download from a server, and the function files and layout files in the target installation package are adapted to the electronic device.

[0086] The application framework layer provides an application programming interface (API) and programming framework for applications in the application layer. The application framework layer may include some predefined functions. As shown in Figure 6, the application framework layer may include a window manager, content provider, view system, telephony manager, resource manager, notification manager, and resource scheduling and control subsystem.

[0087] A window manager, also known as a window management subsystem, manages windowed programs. The window manager can obtain the display screen size, determine whether a status bar is present, lock the screen, take screenshots, and more. In embodiments of the present application, the window manager can also monitor changes in applications running in the foreground across multiple displays.

[0088] 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.

[0089] 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.

[0090] The phone manager is used to provide communication functions for electronic devices, such as call status management (including answering, hanging up, etc.).

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

[0092] 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.

[0093] The resource scheduling and control subsystem is used to set the resource scheduling priority of the application according to the running status of the application. The resource scheduling and control subsystem can add the application running in the foreground of each display screen in multiple display screens to the first group. The first group corresponds to the first priority, and performs system resource scheduling for the application running in the foreground according to the resource scheduling strategy corresponding to the first group to ensure that the application running in the foreground can run smoothly.

[0094] The runtime includes the core library and the virtual machine. The runtime is responsible for the scheduling and management of the operating system.

[0095] The core library consists of two parts: one containing the Java language's callable functions and the other containing the operating system's core libraries. The application layer and application framework layer run in a virtual machine. The virtual machine executes the 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.

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

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

[0098] 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.

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

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

[0101] 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.

[0102] The hardware layer can include various sensors, such as accelerometers, gyroscopes, touch sensors, etc.

[0103] It should be noted that the structures shown in Figures 5 and 6 are merely examples of electronic devices provided in the embodiments of the present application and do not limit the electronic devices provided in the embodiments of the present application. In specific implementations, the electronic device may have more or fewer devices or modules than those in the structures shown in Figures 5 or 6.

[0104] The multi-screen resource scheduling method provided in the embodiment of the present application is introduced below with reference to the accompanying drawings.

[0105] The embodiments of the present application can be applied to scenarios where the electronic device includes multiple display screens. For example, the electronic device can be a vehicle-mounted device as shown in Figure 3. For another example, the electronic device can be a foldable mobile phone. The electronic device includes two display screens, an inner screen and an outer screen. Of course, it can also include more screens. Multiple display screens in the electronic device all support running applications installed on the electronic device. In some embodiments, the electronic device can display application icons of different applications in the main interfaces of different display screens, or the electronic device can display application icons of the same application in the main interfaces of different display screens. The user can click the application icon in any display screen to trigger the electronic device to start the application. The electronic device can run the application in the foreground of the display screen where the user triggers the start of the application.

[0106] It should be noted that the applications started in the electronic device include two running states: foreground running state and background running state. Among them, the foreground running state means that the electronic device displays the application interface of the application on the display screen, and the user can directly operate the application running in the foreground on the display screen. The background running state means that the electronic device does not display the application interface of the application on the display screen, but the related services provided by the application can still be retained. For example, when the electronic device runs a music application in the background, the electronic device does not display the application interface of the music application, but the music application can continue to play music. In some embodiments, after the user triggers to minimize the application displayed in the foreground, the electronic device can switch the application from the foreground running state to the background running state.

[0107] In some embodiments of the present application, an electronic device may monitor applications running in the foreground on multiple display screens. The electronic device may set the resource scheduling priority of the application running in the foreground on each display screen to a first priority, and set the resource scheduling priority of the application running in the background on each display screen to a second priority, where the first priority is higher than the second priority. Optionally, in embodiments of the present application, the first priority may be the highest resource scheduling priority, and the second priority may be the lowest resource scheduling priority.

[0108] In other embodiments of the present application, the electronic device may monitor applications running in the foreground on multiple display screens, the electronic device may store the priority order of the multiple display screens, and set a resource scheduling priority for the application running in the foreground on each display screen according to the priority order of the multiple display screens. Optionally, the resource scheduling priorities of the applications running in the background on multiple display screens may be the same, for example, both are the lowest priority. For example, assuming that the electronic device includes a first display screen and a second display screen, the electronic device may set the resource scheduling priority of the application running in the foreground on the first display screen to the first priority, and set the resource scheduling priority of the application running in the background on the first display screen to the third priority; the electronic device may set the resource scheduling priority of the application running in the foreground on the second display screen to the second priority, and set the resource scheduling priority of the application running in the background on the second display screen to the third priority, the first priority being higher than the second priority, and the second priority being higher than the third priority.

[0109] In an optional implementation, the electronic device can maintain multiple application process groups, with different groups corresponding to different resource scheduling priorities. The electronic device can execute different resource scheduling strategies for the application processes in different groups. The following describes the two application process grouping methods provided in the embodiments of the present application:

[0110] Method 1

[0111] The electronic device can maintain a first application process group and a second application process group, wherein the first application process group includes application processes of applications that are in the foreground running state on multiple display screens, and the second application process group includes application processes of applications that are in the background running state on multiple display screens. Optionally, the electronic device can execute an RT policy on the application processes in the first application process group, wherein the application processes that execute the RT policy have absolute priority use rights to system resources, so that the electronic device can timely schedule system resources for the application processes in the first application process group. The electronic device can execute a CFS policy on the application processes in the second application process group, wherein when executing the CFS policy, the electronic device can dynamically calculate the weight of each application process according to the demand for system resources occupied by each application process, and the electronic device can allocate system resources to each application process according to the weight of the application process, thereby avoiding background-running applications from occupying system resources and affecting the smoothness of foreground-running applications.

[0112] For example, taking an electronic device including a first display and a second display, in response to a first operation triggered by a user on the first display (e.g., a click operation on an application icon of a first application triggered by the user on the first display), the electronic device may run the first application in the foreground of the first display, add the application process of the first application to a first application process group, and set the resource scheduling priority of each application included in the first application process group to the first priority. Specifically, the electronic device may add the process identifier of the application process of the first application to the first application process group. In response to a second operation triggered by a user on the second display (e.g., a click operation on an application icon of a second application triggered by the user on the second display), the electronic device may run the second application in the foreground of the second display, add the application process of the second application to the first application process group, and set the resource scheduling priority of the second application to the first priority. Specifically, the electronic device may add the process identifier of the application process of the second application to the first application process group. The electronic device may schedule system resources for the first and second applications based on the resource scheduling policy corresponding to the first application process group to ensure the system resource requirements of the first and second applications.

[0113] Method 2

[0114] In the embodiment of the present application, the electronic device can also maintain more groups and add application processes of applications running in the foreground of different display screens to different application process groups, so that the electronic device can set different priorities for applications running in the foreground of different display screens.

[0115] For example, taking an electronic device including a first display, a second display, and a third display, the electronic device may add the application process of a first application running in the foreground on the first display to a first application process group and set the resource scheduling priority of the first application to the first priority. The electronic device may add the application process of a second application running in the foreground on the second display to a second application process group and set the resource scheduling priority of the second application to the second priority. The electronic device may add the application process of a third application running in the foreground on the third display to a third application process group and set the resource scheduling priority of the third application to the third priority. The electronic device may add the application processes of applications running in the background on the first, second, and third displays to a fourth application process group and set a fourth priority for the application processes of each application included in the fourth application process group. The first priority is higher than the second priority, the second priority is higher than the third priority, and the third priority is higher than the fourth priority. The first display may be the display most frequently used by the user among the multiple displays of the electronic device. The electronic device may schedule system resources for the application processes within each group based on the resource scheduling policy corresponding to that group. Since the first priority corresponding to the first application process group is the highest priority, when scheduling system resources for the application processes of the first application based on the resource scheduling policy corresponding to the first application process group, system resources can be preempted first, thereby ensuring the smooth operation of the first application.

[0116] In the embodiment of the present application, system resources may include at least one of CPU resources, memory resources, IO resources and network resources. Optionally, the electronic device scheduling CPU resources may include adjusting CPU frequency, specifying application processes to bind large and small cores, raising threads to real-time scheduling priority, freezing background applications, etc. The electronic device scheduling memory resources may include: applying for large memory for application processes, clearing memory, etc. The electronic device scheduling IO resources may include controlling the speed at which applications write files, etc. The electronic device scheduling network resources may include restricting applications from downloading data without restriction and consuming traffic when running in the background. In the embodiment of the present application, system resources may be scheduled preferentially based on high-priority resource scheduling strategies, such as specifying application processes to bind large processor cores, applying for large memory for application processes, increasing IO read and write speeds, giving priority to network resources, etc.

[0117] It should be noted that the above-mentioned system resources and scheduling methods are only examples and not limitations. The implementation may also include more or fewer system resources and scheduling methods, and the embodiments of this application are not limited to this.

[0118] In some embodiments, the electronic device monitors applications running on multiple display screens. When it determines that an application in the foreground running state on any display screen is switched to the background running state, the application process of the application switched to the background running state can be deleted from the application process group to which it belongs, and the application process can be added to the background application group, such as adding the application process to the second application group in the above method 1, or the fourth application group in the above method 2.

[0119] When the system load of an electronic device exceeds a preset threshold, the electronic device can also manage and control application processes in order of resource scheduling priority from low to high. Optionally, the electronic device can kill applications with lower resource scheduling priorities, or turn off the display screens to which applications with lower resource scheduling priorities belong. When the system load of an electronic device exceeds a preset threshold, and the resource scheduling priorities of applications currently running in the foreground of multiple display screens of the electronic device are all high, the electronic device can adjust the resource scheduling priorities of applications on some display screens to reduce the system load.

[0120] For example, in the above-mentioned method 1, the priority order of the first display screen and the second display screen can be stored in the electronic device. For example, assuming that the priority of the first display screen is higher than the priority of the second display screen, when the electronic device determines that the system load is greater than a preset threshold, the application process of the second application in the foreground running state of the second display screen can be deleted from the first application group, and the application process of the second application can be added to the second application group to reduce the load of the electronic device.

[0121] For another example, in the above-mentioned method 2, when the electronic device determines that the system load is greater than a preset threshold, it can delete the application process of the third application in the foreground running state on the third display screen from the third application group, and add the application process of the third application to the fourth application group; if the system load is still greater than the preset threshold after executing the above-mentioned processing, the electronic device can also continue to delete the application process of the second application in the foreground running state on the second display screen from the second application group, and add the application process of the second application to the fourth group, and then manage the applications in multiple display screens in order from low to high resource scheduling priority, so as to meet the user experience as much as possible while ensuring the performance of the electronic device.

[0122] The following is a further introduction to the multi-screen resource scheduling method provided by an embodiment of the present application using an example. Figure 7 is a schematic diagram of the structure of an electronic device provided by an embodiment of the present application. Referring to Figure 7, the electronic device may include a window management subsystem and a resource scheduling control subsystem. Among them, the window management subsystem is used to monitor changes in foreground applications on multiple display screens of the electronic device. As shown in Figure 7, the electronic device includes a first display screen, a second display screen, and a third display screen. Each display screen can independently start an application. The applications running in the foreground on different display screens can be the same or different. For example, as shown in Figure 7, the first display screen runs the first application in the foreground, the second display screen runs the second application in the foreground, and the third display screen runs the third application in the foreground; for another example, the first display screen runs the first application in the foreground, the second display screen can also run the first application in the foreground, and the third display screen runs the third application in the foreground. The window management subsystem monitors the applications running in the foreground on the first display screen, the second display screen, and the third display screen respectively. The resource scheduling control subsystem is used to manage the resource scheduling policies of applications running on multiple display screens. As shown in Figure 7, the resource scheduling control subsystem can manage multiple default groups, such as the first application process group, the second application process group, the third application process group, and the fourth application process group; the resource scheduling priority corresponding to the first application process group is higher than the resource scheduling priority corresponding to the second application process group. Optionally, the grouping mechanism in the embodiment of the present application can adopt the Linux cgroup mechanism. The first application process group can also be called the foreground group, and the first application process group includes the application processes of applications that are in the foreground running state on multiple display screens; the second application process group can also be called the background group, and the second application process group includes the application processes of applications that are in the background running state on multiple display screens; the third application process group can also be called the system application group, and the third group includes the application processes of system applications running on multiple display screens; the fourth application process group can also be called the graphics group, and the fourth group includes processes for drawing graphics. Different groups correspond to different resource scheduling strategies.

[0123] Based on the structure of the electronic device described in FIG7 , FIG8 is a flow chart of a multi-screen resource scheduling method provided in an embodiment of the present application. The method can be executed by the window management subsystem and resource scheduling control subsystem shown in FIG7 . Referring to FIG8 , the method includes the following steps:

[0124] S801: The window management subsystem determines that a first application is running in the foreground of a first display screen.

[0125] For example, the first application may be a navigation application, and the first display screen may display an application interface of the navigation application.

[0126] S802: The window management subsystem sends first information to the resource scheduling and control subsystem.

[0127] Optionally, the first information is used to instruct the first display screen to run the first application in the foreground.

[0128] S803: The resource scheduling control subsystem adds the application process of the first application to the first application process group, and performs resource scheduling on the first application according to the resource scheduling policy corresponding to the first application process group.

[0129] S804: The window management subsystem determines that a second application is running in the foreground of the second display screen.

[0130] For example, the second application may be a music application, and the second display screen may display the application interface of the music application.

[0131] S805: The window management subsystem sends second information to the resource scheduling and control subsystem.

[0132] Optionally, the second information is used to instruct the second application to run in the foreground of the second display screen.

[0133] S806: The resource scheduling control subsystem adds the application process of the second application to the first application process group, and performs resource scheduling on the second application according to the resource scheduling policy corresponding to the first application process group.

[0134] S807: The window management subsystem determines that a third application is running in the foreground of the third display screen.

[0135] For example, the third application may be a video application, and the second display screen may display the application interface of the video application.

[0136] S808: The window management subsystem sends third information to the resource scheduling and control subsystem.

[0137] Optionally, the third information is used to instruct the third application to run in the foreground of the third display screen.

[0138] S809: The resource scheduling control subsystem adds the application process of the third application to the first application process group, and performs resource scheduling on the third application according to the resource scheduling policy corresponding to the first application process group.

[0139] It should be noted that the embodiment of the present application does not limit the execution order of S801-S803, S804-S806 and S807-S809. During implementation, S801-S803, S804-S806 and S807-S809 can be executed in any order, or S801-S803, S804-S806 and S807-S809 can be executed simultaneously.

[0140] S810: The window management subsystem determines that the first application on the first display screen is switched to background operation.

[0141] S811: The window management subsystem sends fourth information to the resource scheduling and control subsystem.

[0142] Optionally, the fourth information is used to instruct the first application on the first display screen to switch to background operation.

[0143] S812: The resource scheduling control subsystem deletes the application process of the first application from the first application process group, adds the application process of the first application to the second application process group, and schedules resources for the first application according to the resource scheduling policy corresponding to the second application process group.

[0144] S813: The resource scheduling and control subsystem determines that the system load is greater than a preset threshold, and kills the application processes in the second application process group.

[0145] S814: The resource scheduling and control subsystem determines that the system load is greater than the preset threshold, and determines that the priority of the second display screen in the preset display screen priority order is higher than the priority order of the third display screen. The resource scheduling and control subsystem then deletes the application process of the third application from the first application process group, and adds the application process of the third application to the second application process group, and performs resource scheduling on the first application according to the resource scheduling policy corresponding to the second application process group.

[0146] It should be noted that the embodiment of the present application does not limit the execution order of S813 and S814. During implementation, S813 can be executed first and then S814, or S814 can be executed first and then S813, or S813 and S814 can be executed at the same time.

[0147] Based on the same concept, an embodiment of the present application further provides a multi-screen resource scheduling method, which can be executed by an electronic device, and the electronic device can have the structure shown in Figure 5 and / or Figure 6. Figure 9 is a flowchart of a multi-screen resource scheduling method provided by an embodiment of the present application. Referring to Figure 9, the method includes the following steps:

[0148] S901: The electronic device determines that a first application is running on the foreground of a first display screen of the electronic device, and sets the resource scheduling priority of the first application to a first priority.

[0149] S902: The electronic device determines that a second application is running on the foreground of a second display screen of the electronic device, and sets the resource scheduling priority of the second application to the first priority.

[0150] S903: The electronic device schedules system resources for the first application and the second application according to a first resource scheduling policy corresponding to the first priority.

[0151] It should be noted that the embodiment of the present application does not limit the execution order of S901 and S902. When the multi-screen resource scheduling method shown in Figure 9 of the present application is specifically implemented, reference can be made to the above embodiments of the present application, and the repeated parts will not be repeated.

[0152] Based on the above embodiments, the present application also provides an electronic device, which includes multiple functional modules; the multiple functional modules interact with each other to implement the functions performed by the electronic device or the electronic device in each method described in the embodiments of the present application. For example, the steps performed by the electronic device in the embodiment shown in Figure 9 are executed. The multiple functional modules can be implemented based on software, hardware, or a combination of software and hardware, and the multiple functional modules can be arbitrarily combined or divided based on the specific implementation. For example, the electronic device may include the window management subsystem and the resource scheduling and control subsystem in the electronic device shown in Figure 7.

[0153] Based on the above embodiments, the present application further provides an electronic device, comprising at least one processor and at least one memory, wherein the at least one memory stores computer program instructions, and when the electronic device is running, the at least one processor executes the functions performed by the first electronic device or the second electronic device in each method described in the embodiments of the present application. For example, the steps performed by the electronic device in the embodiment shown in FIG. 9 are executed.

[0154] Based on the above embodiments, the present application further provides a computer program product comprising instructions, which, when executed on a computer, enables the computer to execute the methods described in the embodiments of the present application.

[0155] Based on the above embodiments, the present application further provides a computer-readable storage medium, in which a computer program is stored. When the computer program is executed by a computer, the computer executes the methods described in the embodiments of the present application.

[0156] Based on the above embodiments, the present application further provides a chip, which is used to read a computer program stored in a memory to implement the methods described in the embodiments of the present application.

[0157] Based on the above embodiments, the present application provides a chip system, which includes a processor for supporting a computer device to implement the various methods described in the embodiments of the present application. In one possible design, the chip system also includes a memory for storing the necessary programs and data for the computer device. The chip system can be composed of a chip or can include a chip and other discrete devices.

[0158] Those skilled in the art will appreciate that the embodiments of the present application can be provided as methods, systems, or computer program products. Therefore, the present application can adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment in combination with software and hardware. Moreover, the present application can adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to magnetic disk storage, CD-ROM, optical storage, etc.) that contain computer-usable program code.

[0159] The present application is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the present application. It should be understood that each flow and / or box in the flow chart and / or block diagram, as well as the combination of the flow chart and / or box in the flow chart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device produce a device for implementing the functions specified in one or more flow charts and / or one or more boxes in the block diagram.

[0160] These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce a product including an instruction device that implements the functions specified in one or more processes in the flowchart and / or one or more boxes in the block diagram.

[0161] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, so that the instructions executed on the computer or other programmable device provide steps for implementing the functions specified in one or more processes in the flowchart and / or one or more boxes in the block diagram.

[0162] Obviously, those skilled in the art may make various modifications and variations to this application without departing from the scope of protection of this application. Thus, if these modifications and variations of this application fall within the scope of the claims of this application and their equivalents, this application is intended to include these modifications and variations.

Claims

1. A multi-screen resource scheduling method, characterized in that Applied to an electronic device, the electronic device includes a first display screen and a second display screen, and the method includes: Determine that a first application is running foreground on the first display screen, and set the resource scheduling priority of the first application to a first priority; Determine that a second application is running foreground on the second display screen, and set the resource scheduling priority of the second application to the first priority; Schedule system resources for the first application and the second application according to a first resource scheduling policy corresponding to the first priority.

2. The method according to claim 1, wherein The setting the resource scheduling priority of the first application to the first priority includes: Adding the application process of the first application to a first application process group, where the first application process group is the application process group corresponding to the first priority; The setting the resource scheduling priority of the second application to the first priority includes: Adding the application process of the second application to the first application process group.

3. The method according to claim 1 or 2, characterized in that, The method further includes: Determine that a third application is running background on the first display screen, and set the resource scheduling priority of the third application to a second priority, where the second priority is lower than the first priority; Determine that a fourth application is running background on the second display screen, and set the resource scheduling priority of the fourth application to the second priority; Schedule system resources for the third application and the fourth application according to a second resource scheduling policy corresponding to the second priority.

4. The method according to claim 3, wherein The setting the resource scheduling priority of the third application to the second priority includes: Adding the application process of the third application to a second application process group, where the second application process group is the application process group corresponding to the second priority; The setting the resource scheduling priority of the fourth application to the second priority includes: Adding the application process of the fourth application to the second application process group.

5. The method according to any one of claims 1-4, characterized in that, The method further includes: Determine that the system load is greater than a preset threshold, and control the application programs of the applications running on the first display screen and the second display screen in ascending order of resource scheduling priority.

6. The method according to any one of claims 1-5, characterized in that, The method further includes: Determine that the system load is greater than a preset threshold, determine that the priority of the first display screen is higher than the priority of the second display screen according to a preset display screen priority, and adjust the resource scheduling priority of the second application from the first priority to a second priority, where the first priority is higher than the second priority.

7. The method according to any one of claims 1-6, characterized in that, The method further includes: Determine that the first application switches from the foreground running state to the background running state, and set the resource scheduling priority of the first application to a second priority, where the second priority is lower than the first priority.

8. The method according to any one of claims 1-7, characterized in that, The system resources include at least one of central processing unit (CPU) resources, memory resources, input / output (IO) resources, and network access resources.

9. A multi-screen resource scheduling method, characterized in that, Applied to an electronic device, the electronic device includes a first display screen and a second display screen, and the method includes: Determine that a first application is running foreground on the first display screen, and set the resource scheduling priority of the first application to a first priority; Schedule system resources for the first application according to the first resource scheduling policy corresponding to the first priority; Determine that the second application is running foreground on the second display screen, and set the resource scheduling priority of the second application to the second priority; Schedule system resources for the second application according to the second resource scheduling policy corresponding to the second priority; Wherein, the first priority is higher than the second priority, and the first priority and the second priority are higher than the resource scheduling priorities of the applications running background on the first display screen and the second display screen.

10. The method according to claim 9, characterized in that, The setting the resource scheduling priority of the first application to the first priority includes: Adding the application process of the first application to the first application process group, and the first application process group is the application process group corresponding to the first priority; The setting the resource scheduling priority of the second application to the second priority includes: Adding the application process of the second application to the second application process group, and the second application process group is the application process group corresponding to the second priority.

11. The method according to claim 9 or 10, characterized in that, The method further includes: Determine that the third application is running background on the first display screen, and set the resource scheduling priority of the third application to the third priority, and the third priority is lower than the second priority; Determine that the fourth application is running background on the second display screen, and set the resource scheduling priority of the fourth application to the third priority; Schedule system resources for the third application and the fourth application according to the third resource scheduling policy corresponding to the third priority.

12. The method according to claim 11, wherein The setting the resource scheduling priority of the third application to the third priority includes: Adding the application process of the third application to the third application process group, and the third application process group is the application process group corresponding to the third priority; The setting the resource scheduling priority of the fourth application to the third priority includes: Adding the application process of the fourth application to the third application process group.

13. The method according to any one of claims 9-12, characterized in that, The method further includes: Determine that the system load is greater than a preset threshold, and control the application programs of the applications running on the first display screen and the second display screen in ascending order of resource scheduling priority.

14. The method according to any one of claims 9 to 13, characterized in that, The method further includes: Determine that the first application switches from the foreground running state to the background running state, and set the resource scheduling priority of the first application to the third priority, and the third priority is lower than the second priority.

15. The method according to any one of claims 9 to 14, characterized in that The system resources include at least one of central processing unit (CPU) resources, memory resources, input / output (IO) resources, and network access resources.

16. An electronic device, characterized in that, The electronic device includes a memory and a processor; wherein, the memory and the processor are coupled, and the memory is used to store a computer program. When the processor executes and calls the computer program, the electronic device executes the method described in any one of claims 1-8, or executes the method described in any one of claims 9-15.

17. A computer-readable storage medium, characterized in that, Instructions are stored in the computer-readable storage medium, which, when run on a computer, cause the computer to execute the method described in any one of claims 1-8, or execute the method described in any one of claims 9-15.

Citation Information

Patent Citations

  • Resource distribution method and resource distribution device of vehicle-mounted device

    CN103577267A

  • Information display method and device

    CN107133031A

  • Application scheduling method and electronic equipment

    CN112231077A

  • Resource allocation method, device and equipment

    CN117130773A