Performance adjusting method and electronic equipment

By monitoring multiple events in the office application interface, identifying and subdividing scenes, determining and implementing corresponding performance strategies, the problem of inaccurate adjustment of high-performance demand subsceived in office scenarios is solved and the user experience is improved.

CN120255741APending Publication Date: 2025-07-04HONOR DEVICE CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202311812613.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-12-26
Publication Date
2025-07-04

AI Technical Summary

Technical Problem

When there are subscenarios with high performance requirements in office scenarios (such as Excel batch formula calculation, copy and save, text insertion, PDF file export, etc.), the existing technology cannot accurately adjust performance, resulting in a degradation of user experience.

Method used

By monitoring multiple events in the office application interface (such as mouse waiting status, mouse selection, insertion confirmation, file export confirmation, etc.), identify and subtract the scenes, determine the corresponding performance strategies for adjustment, including setting priority and timer management to optimize resource usage.

Benefits of technology

Accurate performance adjustment of high-performance demand subsceived in office scenarios is achieved, and user experience is improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120255741A_ABST
    Figure CN120255741A_ABST
Patent Text Reader

Abstract

The invention discloses a performance adjusting method and electronic equipment, and the method comprises the steps: responding to the starting operation of an office application, and displaying an office interface; based on the office interface as a focus window, monitoring a plurality of events triggered in the office interface; the plurality of events are events for transmitting information through a serial interface, and the focus window is a window for receiving keyboard input; in response to a first event triggered in the office interface, determining to enter a first office sub-scene corresponding to the first event; the first event is one of a plurality of events; and determining a first performance strategy corresponding to the first office sub-scene, and executing the first performance strategy. According to the method and the device, the performance of the computer can be accurately adjusted, so that sub-scenes with high-performance requirements in office scenes can be met.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] Embodiments of the present application relate to the field of computers, and in particular, to a performance adjustment method and an electronic device. Background Art

[0002] In the intelligent engine scheduling technology for computers, since most office scenarios are in a low-power state, the long-term turbo power consumption (power limit1, PL1) and the energy performance preference (EPP) parameter of the central processing unit (CPU) are usually adjusted to be biased towards the battery life state (for example, PL1 can be adjusted smaller and the EPP parameter can be adjusted larger) to save power and increase the battery life of the computer. Among them, the so-called office scenario refers to a scenario where operations are performed using office software in the computer, such as viewing and editing documents using Word office software, creating image reports using Excel office software, etc.

[0003] However, there are still sub-scenarios with high-performance requirements in the office scenario (such as Excel batch formula calculation, copy and save, text insertion, PDF file export, etc.). For these sub-scenarios, currently, only dynamic adjustment can be performed according to the system load. Due to limited adjustment capabilities, the performance adjustment is not accurate enough to support the performance requirements of these sub-scenarios. Summary of the Invention

[0004] Embodiments of the present application provide a performance adjustment method and an electronic device. Based on the method described in the present application, the performance of the computer can be accurately adjusted to meet the sub-scenarios with high-performance requirements in the office scenario.

[0005] In a first aspect, the present application provides a performance adjustment method, which includes: in response to an opening operation of an office application, displaying an office interface; based on the office interface as the focus window, listening for multiple events triggered on the office interface; the multiple events are events that transmit information through a serial interface, and the focus window is the window that receives keyboard input; in response to a first event triggered on the office interface, determining to enter a first office sub-scenario corresponding to the first event; the first event is one of the multiple events; determining a first performance policy corresponding to the first office sub-scenario, and executing the first performance policy.

[0006] Based on the method described in the first aspect, the user's operations can be identified more carefully, the currently used sub-scenarios in the office scenario can be further segmented, and the performance of the electronic device can be accurately adjusted according to different sub-scenarios to meet the sub-scenarios with high-performance requirements in the office scenario and improve the user experience.

[0007] In a possible implementation, the first office sub-scenario is the office sub-scenario with the highest priority among the office sub-scenarios corresponding to the events monitored on the office interface. Based on this method, the performance of the computer can be adjusted more accurately to meet the sub-scenarios with high-performance requirements in the office scenario.

[0008] In a possible implementation, the multiple events include one or more of the following events: mouse waiting state event, mouse selection event, insertion confirmation event, file export confirmation event, or parallel interface exit event; wherein, the mouse waiting state event corresponds to the waiting response sub-scenario, the mouse selection event corresponds to the batch processing sub-scenario, the insertion confirmation event corresponds to the insert object sub-scenario, the file export confirmation event corresponds to the file export sub-scenario, and the parallel interface exit event corresponds to the file closing sub-scenario.

[0009] In a possible implementation, the method further includes: based on the office interface not being the focus window, after a preset time period, stop monitoring the multiple events triggered on the office interface. Based on this method, it is possible to prevent frequent page switching from causing continuous thread creation and destruction and resource waste.

[0010] In a possible implementation, the first event is a mouse selection event, and the first office sub-scenario is the batch processing sub-scenario; in response to the first event triggered on the office interface, determining to enter the first office sub-scenario corresponding to the first event includes: in response to the mouse selection event triggered on the office interface and the system load being greater than or equal to the first preset threshold, determining to enter the batch processing sub-scenario. Based on this method, the performance of the batch processing sub-scenario can be adjusted more accurately to meet the performance requirements.

[0011] In a possible implementation, the first event is an insertion confirmation event, and the first office sub-scenario is the insert object sub-scenario; in response to the first event triggered on the office interface, determining to enter the first office sub-scenario corresponding to the first event includes: in response to an object insertion window being displayed on the office interface and the insertion confirmation event being triggered, determining to enter the insert object sub-scenario. Based on this method, the performance of the insert object sub-scenario can be adjusted more accurately to meet the performance requirements.

[0012] In a possible implementation, the first event is a file export confirmation event, and the first office sub-scenario is the file export sub-scenario; in response to the first event triggered on the office interface, determining to enter the first office sub-scenario corresponding to the first event includes: in response to a file export window being displayed on the office interface, the file export confirmation event being triggered, and the system load being greater than or equal to the second preset threshold, determining to enter the file export sub-scenario. Based on this method, the performance of the file export sub-scenario can be adjusted more accurately to meet the performance requirements.

[0013] In a possible implementation, the first event is a parallel interface exit event, and the first office sub-scenario is a file closing sub-scenario; in response to the first event triggered on the office interface, determining to enter the first office sub-scenario corresponding to the first event includes: in response to the parallel interface exit event and the first message triggered on the office interface, determining to enter the file closing sub-scenario; the first message indicates exiting the listening for the multiple events on the office interface. Based on this method, the performance of the file closing sub-scenario can be adjusted more accurately to meet the performance requirements.

[0014] In a second aspect, the present application provides a performance adjustment device, which may be an electronic device, or a device in an electronic device, or a device that can be used in conjunction with an electronic device; wherein, the performance adjustment device may also be a chip system, and the performance adjustment device can execute the method performed by the electronic device in the first aspect. The functions of the performance adjustment device can be implemented by hardware, or by hardware executing corresponding software. The hardware or software includes one or more units corresponding to the above functions. The unit may be software and / or hardware. The operations and beneficial effects performed by the performance adjustment device can refer to the method and beneficial effects in the first aspect above, and the repeated parts will not be elaborated.

[0015] In a third aspect, the present application provides a performance adjustment device, which includes a processor. When the processor calls a computer program in a memory, the method in the first aspect is executed.

[0016] In a fourth aspect, the present application provides a performance adjustment device, which includes a processor and a memory, and the processor and the memory are coupled; the processor is used to implement the method in the first aspect.

[0017] In a fifth aspect, the present application provides a performance adjustment device, which includes a processor, a memory and a transceiver, and the processor and the memory are coupled; the transceiver is used to transmit and receive data, and the processor is used to implement the method in the first aspect.

[0018] In a sixth aspect, the present application provides an electronic device, which includes one or more processors and one or more memories. The one or more memories are coupled to the one or more processors, and the one or more memories are used to store computer program code. The computer program code includes computer instructions. When the one or more processors execute the computer instructions, the electronic device executes the performance adjustment method in any possible implementation in the first aspect.

[0019] In a seventh aspect, the present application provides a chip, which includes a processor and an interface, and the processor is coupled to the interface; the interface is used to receive or output signals, and the processor is used to execute code instructions so that the method in the first aspect is executed.

[0020] In an eighth aspect, the present application provides a performance adjustment system, which includes an electronic device; wherein, the electronic device is used to execute the method in the first aspect.

[0021] In a ninth aspect, the present application provides a performance adjustment device, which includes functions or units for executing the method in any one of the first aspect.

[0022] In a tenth aspect, the present application provides a computer-readable storage medium, in which a computer program is stored, and the computer program includes program instructions. When the program instructions run on the performance adjustment device, the performance adjustment device is enabled to execute the performance adjustment method in any possible implementation manner of the above-mentioned first aspect.

[0023] In an eleventh aspect, the present application provides a computer program product. When the computer program product runs on a computer, the computer is enabled to execute the performance adjustment method in any possible implementation manner of the above-mentioned first aspect. Description of the Drawings

[0024] Figure 1 is a schematic diagram of the hardware structure of an electronic device provided by an embodiment of the present application;

[0025] Figure 2 is a schematic block diagram of the software structure of an electronic device provided by an embodiment of the present application;

[0026] Figure 3 is a schematic flowchart of a performance adjustment method provided by an embodiment of the present application;

[0027] Figure 4 is a schematic flowchart of another performance adjustment method provided by an embodiment of the present application;

[0028] Figure 5 is a schematic diagram of opening an office interface provided by an embodiment of the present application;

[0029] Figure 6A is a schematic diagram of a plurality of office sub-scenarios provided by an embodiment of the present application;

[0030] Figure 6B is a schematic diagram of a mouse waiting state event provided by an embodiment of the present application;

[0031] Figure 6C is a schematic diagram of a mouse selection event provided by an embodiment of the present application;

[0032] Figure 6D It is a schematic diagram of an insertion confirmation event provided by an embodiment of the present application;

[0033] Figure 6E It is a schematic diagram of a file export confirmation event provided by an embodiment of the present application;

[0034] Figure 7A It is a schematic flowchart of confirming entry into the waiting response sub-scenario provided by an embodiment of the present application;

[0035] Figure 7B It is a schematic flowchart of confirming entry into the batch processing sub-scenario provided by an embodiment of the present application;

[0036] Figure 7C It is a schematic flowchart of confirming entry into the insert object sub-scenario provided by an embodiment of the present application;

[0037] Figure 7D It is a schematic flowchart of confirming entry into the file export sub-scenario provided by an embodiment of the present application;

[0038] Figure 7E It is a schematic flowchart of confirming entry into the file closing sub-scenario provided by an embodiment of the present application;

[0039] Figure 8 It is a schematic flowchart of the priority decision for the office sub-scenario provided by an embodiment of the present application;

[0040] Figure 9 It is a schematic diagram of the structure of a performance adjustment device provided by an embodiment of the present application;

[0041] Figure 10 It is a schematic diagram of the structure of a chip provided by an embodiment of the present application. Detailed implementation manners

[0042] Next, the technical solutions in the embodiments of the present application will be clearly and elaborately described with reference to the accompanying drawings. Among them, in the description of the embodiments of the present application, unless otherwise specified, " / " means "or". For example, A / B can represent A or B; "and / or" in the text is only a description of the association relationship of the associated objects, indicating that there can be three relationships. For example, A and / or B can represent: A exists alone, A and B exist simultaneously, and B exists alone. In addition, in the description of the embodiments of the present application, "a plurality of" means two or more than two.

[0043] Hereinafter, the terms "first" and "second" are for descriptive purposes only and should not be construed as implying or suggesting relative importance or implicitly indicating the quantity of the indicated technical features. Thus, features defined with "first" and "second" may explicitly or implicitly include one or more of such features. In the description of the embodiments of the present application, unless otherwise specified, the meaning of "a plurality" is two or more.

[0044] The term "user interface (UI)" in the following embodiments of the present application is a media interface for interaction and information exchange between an application program or an operating system and a user, which realizes the conversion between the internal form of information and the form acceptable to the user. The user interface is source code written in a specific computer language such as Java and Extensible Markup Language (XML). The interface source code is parsed and rendered on an electronic device and finally presented as content recognizable by the user. The common manifestation form of the user interface is the graphical user interface (GUI), which refers to the user interface related to computer operation displayed in a graphical manner. It can be visual interface elements such as time, date, text, icons, buttons, menus, tabs, text boxes, dialog boxes, status bars, navigation bars, and Widgets displayed on the display screen of an electronic device.

[0045] To facilitate the understanding of the solutions provided in the embodiments of the present application, the following introduces the relevant concepts involved in the embodiments of the present application:

[0046] 1. Intelligent engine scheduling technology

[0047] The intelligent engine scheduling technology is a system-level performance and power consumption optimization engine technology. It is enabled by default in the system. It can intelligently identify the user usage scenarios and optimize and schedule the system, achieving the balance of computer performance and power consumption, and reasonably scheduling the computing resources of the underlying chip, so as to maintain the fast response and optimal energy efficiency ratio of the system according to the user scenario requirements. For example, in the case of office, browser, video, social, etc., without affecting the user experience, it can avoid the performance overcapacity of the central processing unit (CPU) and the graphics processing unit (GPU), thereby achieving the extension of the computer battery life and the precise release of performance.

[0048] 2. Office applications

[0049] Office applications refer to application software that can perform word processing, spreadsheet creation, slideshow creation, graphic image processing, simple database processing, etc. For example, Word office applications, Excel office applications, PowerPoint office applications, etc.

[0050] Illustratively, users can view documents, format documents, copy and save, insert text, view PDF (full name: portable document format, which can be considered as portable file format) files, export PDF files, etc. through the Word office application; can create image reports, batch formula calculations, etc. through the Excel office application; and can play slides, insert audio and video, play audio and video, etc. through the PowerPoint office application.

[0051] 3. Office scene

[0052] The so-called office scene refers to the scene where an operation is performed using an office application in a computer. At this time, the focus window is the office interface, such as using Word office software to view and edit documents, using Excel office software to make image reports, etc. The focus window here refers to the window with focus, and the focus window is the only window that can receive keyboard input.

[0053] In the intelligent engine scheduling technology for computers, since most office scenes are in a low-power state, the long-term turbo power consumption (power limit 1, PL1) and CPU energy efficiency ratio (energy performance preference, EPP) parameters are usually adjusted to a state that is biased towards battery life (for example, PL1 can be reduced and the EPP parameter can be increased) to save power consumption and increase the computer's battery life.

[0054] However, in office scenarios, there are still sub-scenarios with high performance requirements (such as batch formula calculation, copy and save, text insertion, PDF file export, etc.). For these sub-scenarios, dynamic adjustments can only be made according to the system load. Due to the limited adjustment capabilities, the performance adjustment is not accurate enough and cannot support the performance requirements of these sub-scenarios, thereby reducing the user experience.

[0055] In order to accurately adjust the performance of a computer to meet the sub-scenarios of high-performance requirements in an office scenario and improve the user experience, the present application provides a performance adjustment method and an electronic device. In a specific implementation, the above-mentioned performance adjustment method can be executed by the electronic device 100. Among them, the electronic device 100 can be a tablet computer, a notebook computer, an ultra-mobile personal computer (UMPC), a desktop computer, a personal digital assistant (PDA), etc., but is not limited thereto. The electronic device 100 is configured with a display screen and can be installed with a preset application (APP), such as an office application, which is not limited here. The office application here can be an Excel office application, a Word office application, a PowerPoint office application, etc.

[0056] The following introduces the hardware structure of the electronic device 100. Please refer to Figure 1 , Figure 1 which is a schematic diagram of the hardware structure of the electronic device 100 provided by an embodiment of the present application.

[0057] 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, a wireless communication module 150, a display screen 160, etc.

[0058] 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 video codec, a digital signal processor (DSP), a baseband processor, and / or a neural-network processing unit (NPU), etc. Among them, different processing units may be independent devices or integrated in one or more processors.

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

[0060] A memory can also be provided in the processor 110 for storing instructions and data. Exemplarily, the memory in the processor 110 is a cache memory. This memory can hold the instructions or data that the processor 110 has just used or recycled. If the processor 110 needs to use the instruction or data again, it can directly call it from this memory. This avoids repeated accesses, reduces the waiting time of the processor 110, and thus improves the efficiency of the system.

[0061] In some embodiments, the processor 110 may include one or more interfaces, such as 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 USB interface, etc.

[0062] It can be understood that the interface connection relationships between the modules illustrated in the embodiments of the present application are only illustrative descriptions and do not constitute a structural limitation on the electronic device 100. In other embodiments, the electronic device 100 may also adopt different interface connection methods in the above embodiments, or a combination of multiple interface connection methods.

[0063] The charging management module 140 is configured to receive a charging input from a charger. The charger can be a wireless charger or a wired charger. While charging the battery 142, the charging management module 140 can also supply power to the electronic device 100 through the power management module 141.

[0064] 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 the inputs from the battery 142 and / or the charging management module 140 and supplies power to the processor 110, the internal memory 121, the external memory, the display screen 160, the wireless communication module 150, etc. In some embodiments, the power management module 141 and the charging management module 140 may also be provided in the same device.

[0065] The wireless communication module 150 may provide solutions for wireless communications applied to the electronic device 100, including wireless local area networks (WLANs) (such as wireless fidelity (Wi-Fi) networks), Bluetooth (BT), global navigation satellite system (GNSS), frequency modulation (FM), near field communication (NFC), infrared (IR), etc. For example, in the embodiments of the present application, the electronic device 100 may establish a Bluetooth connection with a device such as wireless headphones through the wireless communication module 150. The wireless communication module 150 may be one or more devices integrating at least one communication processing module. The wireless communication module 150 receives electromagnetic waves via an antenna, performs frequency modulation and filtering processing on the electromagnetic wave signals, and sends the processed signals to the processor 110. The wireless communication module 150 may also receive the signals to be sent from the processor 110, perform frequency modulation and amplification on them, and convert them into electromagnetic waves through the antenna for radiation.

[0066] The electronic device 100 realizes the display function through the GPU, the display screen 160, and the application processor, etc. The GPU is a microprocessor for image processing, connected to the display screen 160 and the application processor. The GPU is used to execute mathematical and geometric calculations for graphics rendering. The processor 110 may include one or more GPUs, which execute program instructions to generate or change the display information.

[0067] The display screen 160 is used to display images, videos, etc. The display screen 160 includes a display panel.

[0068] The external memory interface 120 may be used to connect to 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 through the external memory interface 120 to implement the data storage function, such as saving files such as music and videos in the external memory card.

[0069] The internal memory 121 can be used to store computer-executable program codes, and the executable program codes 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 can include a program storage area and a data storage area. Among them, the program storage area can store an operating system, application programs required for at least one function (such as a sound playback function, an image playback function, 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.). In addition, the internal memory 121 can include a high-speed random access memory, and can also include a non-volatile memory, such as at least one disk storage device, a flash memory device, a universal flash storage (UFS), etc.

[0070] It can be understood that the structure illustrated in the embodiments of the present application does 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 those illustrated, or combine certain components, or split certain components, or have different component arrangements. The illustrated components can be implemented in hardware, software, or a combination of software and hardware.

[0071] In addition, an operating system runs on top of the above components. For example, operating systems such as Windows, macOS, Linux, etc. The operating system of the electronic device 100 can adopt a layered architecture, an event-driven architecture, a microkernel architecture, a microservices architecture, or a cloud architecture. In the embodiments of the present application, taking the Windows system with a layered architecture as an example, the software structure of the electronic device 100 is exemplarily described. It should be noted that although the embodiments of the present application are described by taking the Windows system as an example, the basic principle also applies to electronic devices with other operating systems.

[0072] Figure 2 is the software structure block diagram of the electronic device 100 in the embodiments of the present application. Refer to Figure 2 In the layered architecture, the software is divided into several layers, and each layer has a clear role and division of labor. The layers communicate with each other through software interfaces. In some embodiments, the Windows system is divided into a user mode and a kernel mode. Among them, the user mode includes an application layer and a subsystem dynamic link library. The kernel mode is divided into a firmware layer, a hardware abstraction layer (HAL), a kernel, a driver layer, and an executive body from bottom to top.

[0073] As Figure 2As shown in the figure, the application layer includes application programs such as music, video, games, office work, and social networking. The application layer also includes an environment subsystem, a probe module, a scenario calculation module (such as an HSPP scenario calculation module / HSPP plug-in), an office process (such as an HnMonOfficeEvt process), etc. Among them, Figure 2 only some application programs are shown, and the application layer may also include other application programs such as shopping applications and browsers, which are not limited in the embodiments of the present application. In one embodiment, the environment subsystem, the probe module, the scenario calculation module, and the office process may be integrated into a personal computer (PC) housekeeper application program.

[0074] The environment subsystem can present certain subsets of the basic execution body system services to the application program in a specific form to provide an execution environment for the application program.

[0075] The probe module may include an application switching probe, a system status probe, etc., and is used to report information such as application switching indication messages and system status to the scenario calculation module. The scenario calculation module is used to perform main scenario recognition, sub-scenario recognition, event reception, performance policy distribution, etc. according to the information reported by the probe module. The scenario calculation module may be a process of HnPerformanceCenter running in the PC housekeeper application program. The office process (HnMonOfficeEvt process) is used to listen (monitor), parse, and distribute events when the main scenario is an office scenario. When the PC housekeeper application program exits, an exit inter-process communication (IPC) message will be sent to notify the HnMonOfficeEvt process to complete the process exit. The communication between the scenario calculation module and the HnMonOfficeEvt process is also implemented through IPC messages. Among them, the specific content of the probe module, the scenario calculation module, and the office process will be described later and will not be described here for the time being. In the embodiments of the present application, "listening" and "monitoring" can be interchanged. The so-called listening (monitoring) refers to a mechanism for listening or monitoring the occurrence of a certain event and performing corresponding operations when the event occurs.

[0076] The subsystem dynamic link library includes an application programming interface (API) module, and this API module includes Windows (window) APIs, Windows native APIs, etc. Among them, both Windows APIs and Windows native APIs can provide system call entry points and internal function support for application programs. The difference is that Windows native APIs are the native APIs of the Windows system. For example, Windows APIs can include user.dll and kernel.dll, and Windows native APIs can include ntdll.dll. Among them, user.dll is the Windows user interface interface and can be used to perform operations such as creating windows and sending messages. kernel.dll is used to provide an interface for application programs to access the kernel. ntdll.dll is an important Windows NT kernel-level file that describes the interfaces of the windows local NTAPI. When Windows starts, ntdll.dll resides in a specific write-protected area of memory, preventing other programs from occupying this memory area.

[0077] The executive body includes system modules, virtual memory manager, security reference monitor, Input / Output (I / O) manager, Windows Management Instrumentation (WMI) plug-in, power manager, etc., which are not limited here.

[0078] System modules are responsible for starting and managing the entire system service. System modules can include a process manager, system event module, driver module, etc. System modules can interact with the application layer. For example, they can interact with the probe module, scenario calculation module, and monitoring module. The event monitoring module in the office process can register and bind to the system module. Among them, the process manager is used to create and abort processes and threads. The system event module is responsible for and manages various events, such as events that transmit information through a serial interface (com interface) (i.e., com events). The driver module can interact with the application layer. For example, it can receive performance policies issued by the scenario calculation module in the application layer.

[0079] The virtual memory manager implements "virtual memory". The virtual memory manager also provides basic support for the cache manager.

[0080] The security reference monitor can enforce security policies on the local computer. It protects the operating system resources and enforces the protection and monitoring of runtime objects.

[0081] The I / O manager performs device-independent input / output and further processes calls appropriate device drivers.

[0082] The power manager manages power state changes for all devices that support power state changes.

[0083] The kernel and driver layer include the kernel and device drivers. The kernel is an abstraction of the processor architecture, isolating the executive body from the differences in the processor architecture to ensure the portability of the system. The kernel can perform thread scheduling and dispatching, trap handling and exception dispatching, interrupt handling and dispatching, etc. The device driver runs in kernel mode and is the interface between the I / O system and related hardware. The device driver may include a graphics card driver, an Intel dynamic tuning technology (DTT) driver, a mouse driver, an audio and video driver, a camera driver, a keyboard driver, etc. For example, a graphics card driver can drive the GPU to run, and an Intel DTT driver can drive the CPU to run.

[0084] HAL is a kernel-state module that can hide various hardware-related details, such as I / O interfaces, interrupt controllers, and multi-processor communication mechanisms, and provide a unified service interface for different hardware platforms running Windows, achieving portability on multiple hardware platforms. It should be noted that in order to maintain the portability of Windows, Windows internal components and user-written device drivers do not directly access the hardware, but call routines in HAL.

[0085] The firmware layer can include the basic input output system (BIOS) and embedded controller (EC). BIOS is a set of programs fixed to a read only memory (ROM) chip on the computer motherboard. It stores the most important basic input and output programs of the computer, the self-test program after power-on, and the system self-starting program. It can read and write specific information of system settings from complementary metal oxide semiconductor (CMOS). Its main function is to provide the lowest level and most direct hardware settings and control for the computer. The Intel DTT driver can send instructions to the CPU through BIOS. EC is a microcontroller fixed on the computer motherboard. Its main function is to control and manage computer hardware and provide some basic input / output interfaces and drivers. Specifically, EC controls and manages hardware devices such as keyboards, touchpads, displays, fans, batteries, and some sensors.

[0086] The hardware layer includes hardware devices such as GPU, CPU, mouse, microphone, camera, keyboard, etc.

[0087] It should be noted that the embodiments of this application only take the Windows system as an example for illustration. In other operating systems (such as Android system, macOS system, Linux system, etc.), as long as the functions implemented by each functional module are similar to those of the embodiments of this application, the solutions of this application can also be implemented.

[0088] Next, in combination with the above system structure, a performance adjustment method provided by the embodiments of this application will be specifically described:

[0089] As Figure 3 shown, when the user clicks to enter the office application, the electronic device will display the office interface. The probe module uses the application switching probe to detect the user's click and switch operation, and reports the application switching indication message to the scenario calculation module (HSPP scenario calculation module).

[0090] After the PC Butler application is started, the scenario calculation module will be initialized to complete the environment adaptation. The scenario calculation module determines whether the current main scenario is an office scenario according to the application switching indication message. Specifically, it can be detected whether the office interface entered by clicking and switching is the focus window. If the office interface is the focus window, it is considered that the main scenario is an office scenario.

[0091] When the main scenario is an office scenario, the PC Butler application will start the office process (HnMonOfficeEvt process). First, the environment of the office process will be initialized and the hidden window will be created, and the event listening module in the office process will be registered and bound to the system module; then the event listening module will be used to listen for Word events (i.e., listen for events in the Word office application), Excel events (i.e., listen for events in the Excel office application), and Powerpoint events (i.e., listen for events in the Powerpoint office application); further, the event parsing module in the office process will parse the listened events and send them to the message queue (the message queue here is controlled by the system event module in the system module), and distribute the listened events to the scenario calculation module.

[0092] After the scenario calculation module receives the event (such as the first event) monitored by the event monitoring module, it further calculates the sub-scenarios. The sub-scenarios here can include audio sub-scenarios, video sub-scenarios, file startup sub-scenarios, batch processing sub-scenarios, insert object sub-scenarios, file export sub-scenarios, file close sub-scenarios, wait for response sub-scenarios, etc., which are not limited here. If there are multiple sub-scenarios calculated at this time, then all sub-scenarios can be stored in a map, and the currently used sub-scenario is determined according to the sub-scenario priority. When any sub-scenario changes, it will trigger the corresponding sub-scenario change in the map, and at the same time, it will also trigger a new scenario priority decision, so as to achieve scenario priority scheduling. Among them, the sub-scenario priority here can be set by the user, can be set by the developer, or can be the system default, which is not limited here; and these sub-scenario priorities can also be adjusted according to requirements.

[0093] After the scenario calculation module determines the currently used sub-scenario (such as the first office sub-scenario), it determines the performance policy corresponding to the sub-scenario (such as the first performance policy), and sends the performance policy to the driver module in the system module for policy regulation. After receiving the performance policy, the driver module will execute the performance policy to achieve performance adjustment, so as to meet the performance requirements of the current sub-scenario. For example, assume that the currently used sub-scenario is the wait for response sub-scenario. At this time, the performance policy executed can be: set not to receive artificial intelligence (AI) control, turn on the smart fan, and increase PL1. Among them, the performance policies corresponding to different sub-scenarios here can be set by the user, can be set by the developer, or can be the system default, which is not limited here; and the execution of the performance policy corresponding to the sub-scenario can also be adjusted according to requirements.

[0094] It can be seen that based on Figure 3 the method described above, it is possible to more accurately identify the user's operations, further subdivide the currently used sub-scenarios in the office scenario, and accurately adjust the performance of the electronic device according to different sub-scenarios to meet the sub-scenarios with high performance requirements in the office scenario, improving the user experience.

[0095] Based on the above, taking the electronic device as the execution subject, another performance adjustment method provided by the embodiments of the present application will be further described in detail. As Figure 4 shown, the performance adjustment method includes the following steps S401 to S404. Figure 4 The execution subject of the method shown can be the above-mentioned electronic device. Or, Figure 4 the execution subject of the method shown can be the chip in the electronic device, which is not limited in the embodiments of the present application. Figure 4 Taking the electronic device as the execution subject of the method as an example for illustration.

[0096] S401. The electronic device displays an office interface in response to an operation to open an office application.

[0097] In the embodiment of the present application, the user enters the office interface by clicking (such as double - clicking) on the office application in the electronic device. Here, the office application refers to application software for performing tasks such as word processing, spreadsheet creation, slide production, graphic and image processing, and simple database processing. For example, Word office application, Excel office application, PowerPoint office application, etc., which are not limited herein. As Figure 5 shown, there are Word office application, Excel office application, PowerPoint office application, music application, video application, and recycle bin application on the computer desktop screen. The user can double - click on the "Word office application" in the desktop screen with the mouse to enter the Word document interface (i.e., the office interface).

[0098] S402. The electronic device monitors multiple events triggered in the office interface with the office interface as the focus window; the multiple events are events that transmit information through a serial interface, and the focus window is the window that receives keyboard input.

[0099] In the embodiment of the present application, since the user can open multiple windows, each window can display a different interface and operations can be performed in different windows. Only when the current window is the focus window (which can be understood as the window selected by the mouse) can the user perform operations in that window. Here, the focus window refers to the window that has the focus, and the focus window is the only window that can receive keyboard input.

[0100] Therefore, when the office interface is the focus window, it indicates that the user is currently performing office operations using the office application, and it can be considered that the current main scenario is the office scenario. At this time, it is necessary to monitor multiple events triggered in the office interface. Here, the multiple events can be events that transmit information through a serial interface (com interface), which can be simply referred to as com events.

[0101] Specifically, it is possible that the probe module uses the application switch probe to detect the user's click operation (i.e., the operation to start the office application), and reports the indication message of the application switch to the scenario calculation module (HSPP scenario calculation module / HSPP plug-in). After the PC Butler application is started, the scenario calculation module will be initialized to complete the environment adaptation. The scenario calculation module determines whether the current main scenario is the office scenario according to the indication message of the application switch, that is, it detects whether the office interface entered by clicking is the focus window. If the office interface is the focus window, it is considered that the main scenario is the office scenario. In the case where the main scenario is the office scenario, the PC Butler application will start the office process (HnMonOfficeEvt process). First, it will perform environment initialization and create a hidden window for the office process, and register and bind the event listening module in the office process to the system module; then it will use the event listening module to listen for Word events (i.e., listen for events in the Word office application), Excel events (i.e., listen for events in the Excel office application), and Powerpoint events (i.e., listen for events in the Powerpoint office application).

[0102] In a possible implementation, the multiple events include one or more of the following events: mouse waiting state event, mouse selection event, insertion confirmation event, file export confirmation event, or parallel interface exit event; among them, the mouse waiting state event corresponds to the waiting response sub-scenario, the mouse selection event corresponds to the batch processing sub-scenario, the insertion confirmation event corresponds to the insert object sub-scenario, the file export confirmation event corresponds to the file export sub-scenario, and the parallel interface exit event corresponds to the file closing sub-scenario. Of course, the multiple events may also include audio playback events, video playback events, file opening events, file saving events, etc. Among them, the audio playback event corresponds to the audio sub-scenario, the video playback event corresponds to the video sub-scenario, the file opening event corresponds to the file opening sub-scenario, and the file saving event may correspond to the file saving sub-scenario.

[0103] It can be understood that according to different events, the office scenario can be further decomposed into multiple office sub-scenarios, and these office sub-scenarios can be identified by using technologies such as the probe ability of the electronic device, com event listening, and hook. As Figure 6A shown below, these events and the corresponding sub-scenarios will be introduced.

[0104] 1. Waiting response sub-scenario

[0105] The waiting response sub-scenario here refers to the scenario where the office process is being processed and the mouse shows a waiting state (such as a spinning phenomenon). Among them, the mouse waiting state event corresponds to the waiting response sub-scenario. That is to say, when the mouse waiting state event is monitored, there is a possibility that the current sub-scenario is the waiting response sub-scenario. The so-called mouse waiting state event refers to the event that the mouse shows a waiting shape (such as Figure 6B shown in (a) below), or the event that the mouse shows a pointer shape and a waiting shape (such as Figure 6B shown in (b) below).

[0106] 2. Batch processing sub-scenario

[0107] The batch processing sub-scenario here refers to scenarios such as batch formula calculation, batch copy and paste, and undo and redo in office applications. Among them, the mouse selection event corresponds to the batch processing sub-scenario. That is to say, when the mouse selection event is monitored, there is a possibility that the current sub-scenario is the batch processing sub-scenario. The so-called mouse selection event refers to the event of selecting text, pictures and other information by using the mouse (such as Figure 6C shown below. The user uses the mouse to select the text "With the rapid development of science and technology, electronic products with comprehensive functions such as mobile phones and computers are constantly popularized", and at this time, the selected text will be marked with a long bar box). Among them, for Excel office applications, the mouse selection event can be called the SheetSelectionChange event; for Word office applications and PowerPoint office applications, the mouse selection event can be called the WindowSelectionChange event.

[0108] 3. Insert object sub-scenario

[0109] The insert object sub-scenario here refers to scenarios such as inserting documents, tables, pictures, videos, etc. Among them, the insert confirmation event corresponds to the insert object sub-scenario. That is to say, when the insert confirmation event is monitored, there is a possibility that the current sub-scenario is the insert object sub-scenario. The so-called insert confirmation event refers to the event of clicking the confirmation button in the insert window (such as Figure 6D shown below).

[0110] 4. File export sub-scenario

[0111] The file export sub-scenario here refers to the functions provided by the menu bar, and there are fixed options to operate, such as scenarios for exporting PDF files, etc. Among them, the file export confirmation event corresponds to the file export sub-scenario. That is to say, when the file export confirmation event is monitored, there is a possibility that the current sub-scenario is the file export sub-scenario. The so-called file export confirmation event refers to the event of clicking the confirmation button in the file export window (such as Figure 6E shown below).

[0112] 5. File Closing Sub - scenario

[0113] The file closing sub - scenario here refers to the scenario where the user clicks to close a file. Among them, the parallel interface (COM interface) exit event corresponds to the file closing sub - scenario. That is to say, when the parallel interface (COM interface) exit event is monitored, there is a possibility that the current sub - scenario is the file closing sub - scenario. The so - called parallel interface (COM interface) exit event refers to the event that the COM interface exits to transfer information, that is, the electronic device cannot transfer information through the COM interface.

[0114] 6. File Opening Sub - scenario

[0115] The file opening sub - scenario here refers to the scenario where the user clicks to open a file, such as the scenario where a file with a large storage space is opened for the first time. Among them, the file opening event corresponds to the file opening sub - scenario. That is to say, when the file opening event is monitored, there is a possibility that the current sub - scenario is the file opening sub - scenario. The so - called file opening event refers to the event of opening a file using an office application.

[0116] 7. File Saving Sub - scenario

[0117] The file saving sub - scenario here refers to the scenario where the content written in the file is saved. Among them, the file saving event can correspond to the file saving sub - scenario. That is to say, when the file saving event is monitored, there is a possibility that the current sub - scenario is the file saving sub - scenario. The so - called file saving event refers to the event of clicking the save button in the office application or the event of clicking the confirmation button in the file saving window.

[0118] 8. Audio Sub - scenario

[0119] The audio sub - scenario here refers to the scenario of playing music in the background. Among them, the audio playing event corresponds to the audio sub - scenario. That is to say, when the audio playing event is monitored, there is a possibility that the current sub - scenario is the audio sub - scenario. The audio playing event here refers to the event of playing music in the background in the office application.

[0120] 9. Video Sub - scenario

[0121] The video sub - scenario here refers to the scenario where a video is played in the front - end office window and the back - end non - focused application (such as playing a video in a Word office application, PowerPoint office application, etc.). Among them, the video playing event corresponds to the video sub - scenario. That is to say, when the video playing event is monitored, there is a possibility that the current sub - scenario is the video sub - scenario. The so - called video playing event refers to the event of playing a video in the background in the office application.

[0122] Of course, the office scenario here can also be further divided into other sub - scenarios, which are not limited here.

[0123] S403. The electronic device determines to enter a first office sub-scene corresponding to the first event in response to the first event triggered on the office interface; the first event is one of the multiple events.

[0124] S404. The electronic device determines a first performance policy corresponding to the first office sub-scene and executes the first performance policy.

[0125] In the embodiment of the present application, assuming that the electronic device monitors the first event triggered on the office interface, it can be considered that the sub-scene currently entered by the electronic device is the first office sub-scene corresponding to the first event, and the first performance policy corresponding to the first office sub-scene is sent down for execution, so as to realize the performance optimization for the first office sub-scene, more accurately adjust the performance of the electronic device, and improve the user experience. The first event here is one of the multiple events mentioned above. For example, assuming that the electronic device monitors the mouse waiting state event triggered on the office interface, it determines to enter the waiting response sub-scene. In addition, the first performance policy here can be set by the user himself, can be set by the developer, or can be the system default, which is not limited here; and the execution of the first performance policy can also be adjusted according to requirements.

[0126] In a possible implementation manner, for different office sub-scenes, when the electronic device determines to enter a first office sub-scene corresponding to the first event in response to the first event triggered on the office interface, the specific implementation manner may include the following situations, and these situations will be described in detail below. Based on this method, the performance of the computer can be adjusted more accurately to meet the sub-scenes with high-performance requirements in the office scenario.

[0127] 1. The first event is the mouse waiting state event, and the first office sub-scene is the waiting response sub-scene

[0128] Optionally, the method further includes: the electronic device confirms to exit the waiting response sub-scene in response to the mouse non-waiting state event triggered on the office interface.

[0129] In the specific implementation, as Figure 7A shown, first, the HSPP main scene calculation is performed. When it is calculated that the main scene is the office scene, the monitoring of the waiting response sub-scene is enabled. Assuming that the electronic device monitors the mouse waiting state event triggered on the office interface (that is, the current mouse presents a waiting state), it is considered that the electronic device enters the waiting response sub-scene, and the performance policy 2 (that is, the first performance policy, for example, the first performance policy can be not receiving AI control, turning on the intelligent fan, and raising PL1) can be sent down for execution to give sufficient performance.

[0130] Subsequently, it is possible to cyclically detect whether a mouse waiting state event is monitored in the office interface at preset time intervals (such as 2 seconds). If a mouse waiting state event is not monitored in the office interface (i.e., a mouse non-waiting state event), it is necessary to determine whether the waiting response sub-scenario has been entered: If the waiting response sub-scenario has been entered, it means that the mouse is no longer in the waiting state, and it is necessary to exit the waiting response sub-scenario and can issue and execute Performance Policy 1 (i.e., the second performance policy) to save performance power consumption; if the waiting response sub-scenario has not been entered, the waiting response sub-scenario monitoring thread is terminated.

[0131] 2. The first event is a mouse selection event, and the first office sub-scenario is a batch processing sub-scenario

[0132] Optionally, when the electronic device determines to enter the first office sub-scenario corresponding to the first event in response to the first event triggered in the office interface, the specific implementation method may be: The electronic device determines to enter the batch processing sub-scenario in response to a mouse selection event triggered in the office interface and the system load being greater than or equal to the first preset threshold.

[0133] Optionally, the method further includes: The electronic device determines to exit the batch processing sub-scenario in response to receiving a batch processing end event and the system load being less than the first preset threshold.

[0134] In specific implementation, as Figure 7B shown, first, the HSPP main scenario is calculated. When the calculated main scenario is the office scenario, the monitoring of the batch processing sub-scenario is enabled. The electronic device detects whether a mouse selection event triggered in the office interface is monitored. If the electronic device monitors a mouse selection event in the office interface, it further obtains the system load and determines whether the system load is greater than or equal to the first preset threshold. If the system load is greater than or equal to the first preset threshold, the electronic device determines to enter the batch processing sub-scenario and issues the first performance policy to provide sufficient performance; if the system load is less than the first preset threshold, the batch processing sub-scenario monitoring thread is terminated.

[0135] Subsequently, it is possible to cyclically detect whether a mouse selection event triggered on the office interface is monitored at intervals of a preset time period (such as 2 seconds). If no mouse selection event is monitored on the office interface, it is further determined whether a batch processing end event is monitored on the office interface. If a batch processing end event is monitored, the system load is further obtained, and it is determined whether the system load is less than a first preset threshold. If the system load is less than the first preset threshold, it means that the batch processing has ended, and it is necessary to exit the batch processing sub-scenario, and a second performance policy can be issued to save performance power consumption; if the system load is greater than or equal to the first preset threshold, the monitoring thread of the batch processing sub-scenario is ended. If no batch processing end event is monitored on the office interface, the monitoring thread of the batch processing sub-scenario also needs to be ended.

[0136] 3. The first event is an insertion confirmation event, and the first office sub-scenario is an insert object sub-scenario

[0137] Optionally, when the electronic device determines to enter the first office sub-scenario corresponding to the first event in response to the first event triggered on the office interface, the specific implementation method may be: the electronic device responds to the display of an object insertion window on the office interface and triggers an insertion confirmation event, and determines to enter the insert object sub-scenario.

[0138] Optionally, the method further includes: after a preset time period, in response to receiving an insert object end event, exiting the insert object sub-scenario.

[0139] In a specific implementation, as Figure 7C shown, first, the HSPP main scenario calculation is performed. When the calculated main scenario is the office scenario, the monitoring of the insert object sub-scenario is enabled. The electronic device detects whether it hooks the window message of the insert object. If it hooks the window message of the insert object, it further detects whether an insertion confirmation event triggered on the office interface is monitored. If an insertion confirmation event is monitored on the office interface, the electronic device determines to enter the insert object sub-scenario and issues a first performance policy to provide sufficient performance; if no insertion confirmation event is monitored on the office interface, it means that the user may have opened the insert object window but finally did not perform the confirmation operation for inserting the object. At this time, the monitoring thread of the batch processing sub-scenario can be ended.

[0140] Subsequently, it is possible to cyclically detect whether the window message of the insert object is hooked at intervals of a preset time period (such as 2 seconds). If the window message of the insert object is not hooked, it is further detected whether an insert object end event is monitored. If an insert object end event is monitored, it is necessary to exit the insert object sub-scenario, and a second performance policy can be issued to save performance power consumption; if no insert object end event is monitored, the monitoring thread of the insert object sub-scenario is ended.

[0141] 4. The first event is a file export confirmation event, and the first office sub-scenario is a file export sub-scenario

[0142] Optionally, when the electronic device determines to enter the first office sub-scenario corresponding to the first event in response to the first event triggered on the office interface, it is specifically used for: when the electronic device responds to the display of a file export window on the office interface, triggers a file export confirmation event, and the system load is greater than or equal to a second preset threshold, it determines to enter the file export sub-scenario.

[0143] Optionally, the method further includes: after a preset time period, in response to receiving a file export end event, exiting the file export sub-scenario.

[0144] In a specific implementation, as Figure 7D shown, first, the HSPP main scenario is calculated. When the calculated main scenario is the office scenario, the monitoring of the file export sub-scenario is enabled. The electronic device detects whether it hooks the window message of file export. If it hooks the window message of inserting an object, it further detects whether it monitors the file export confirmation event triggered on the office interface. If it monitors the file export confirmation event on the office interface, it further obtains the system load and determines whether the system load is greater than or equal to the second preset threshold. If the system load is greater than or equal to the second preset threshold, the electronic device determines to enter the file export sub-scenario and issues a first performance policy to provide sufficient performance; if the system load is less than the second preset threshold, the monitoring thread of the file export sub-scenario is ended. If it does not monitor the file export confirmation event on the office interface, the monitoring thread of the file export sub-scenario also needs to be ended.

[0145] Subsequently, it can cyclically detect whether it hooks the window message of file export at intervals of a preset time period (such as 2 seconds). If it does not hook the window message of file export, it further detects whether it monitors the file export end event. If it monitors the file export end event, it needs to exit the file export sub-scenario and can issue a second performance policy to save performance power consumption; if it does not monitor the file export end event, the monitoring thread of the file export sub-scenario is ended.

[0146] 5. The first event is a parallel interface exit event, and the first office sub-scenario is a file closing sub-scenario

[0147] Optionally, when the electronic device determines to enter the first office sub-scenario corresponding to the first event in response to the first event triggered on the office interface, the specific implementation method can be: when the electronic device responds to the parallel interface exit event and the first message triggered on the office interface, it determines to enter the file closing sub-scenario; the first message indicates exiting the monitoring of multiple events on the office interface.

[0148] Optionally, the method further includes: after a preset time period, in response to receiving a file closing end event, exiting the file closing sub-scenario.

[0149] In a specific implementation, as Figure 7E shown, first, the HSPP main scenario is calculated. When the calculated main scenario is an office scenario, the monitoring of the file closing sub-scenario is enabled. The electronic device detects whether a parallel interface exit event and a first message triggered on the office interface are monitored. If a parallel interface exit event and a first message are monitored on the office interface, the electronic device confirms entering the file closing sub-scenario and issues a first performance policy to provide the required performance; if a parallel interface exit event and a first message are not monitored on the office interface, the file closing sub-scenario monitoring thread is ended.

[0150] Subsequently, it is possible to periodically detect at preset time intervals (such as 2 seconds) whether a parallel interface exit event and a first message triggered on the office interface are monitored. If a parallel interface exit event and a first message are not monitored on the office interface, it is further determined whether a file closing end event is monitored. If a file closing end event is monitored, the file closing sub-scenario is exited, and a second performance policy can be issued to save performance power consumption; if a file closing end event is not monitored, the file closing sub-scenario monitoring thread is ended.

[0151] 6. The first event is a file opening event, and the first office sub-scenario is a file opening sub-scenario

[0152] In a specific implementation, similar to the fifth case, first, the HSPP main scenario is calculated. When the calculated main scenario is an office scenario, the monitoring of the file opening sub-scenario is enabled. The electronic device detects whether a file opening event triggered on the office interface is monitored. If a file opening event is monitored on the office interface, the electronic device confirms entering the file opening sub-scenario and issues a first performance policy to provide the required performance; if a file opening event is not monitored on the office interface, the file opening sub-scenario monitoring thread is ended.

[0153] Subsequently, it is possible to periodically detect at preset time intervals (such as 2 seconds) whether a file opening event triggered on the office interface is monitored. If a file opening event is not monitored on the office interface, it is further determined whether a file opening end event is monitored. If a file opening end event is monitored, the file opening sub-scenario is exited, and a second performance policy can be issued to save performance power consumption; if a file opening end event is not monitored, the file opening sub-scenario monitoring thread is ended.

[0154] 7. The first event is a file saving event, and the first office sub-scenario is a file saving sub-scenario

[0155] In a specific implementation, similar to the fourth case, first, the HSPP main scenario is calculated. When the calculated main scenario is the office scenario, the monitoring of the file saving sub-scenario is enabled. The electronic device detects whether it hooks the window message of file saving. If it hooks the window message of file saving, it further detects whether it monitors the file saving confirmation event triggered in the office interface. If the file saving confirmation event is monitored in the office interface, it further obtains the system load and determines whether the system load is greater than or equal to the third preset threshold. If the system load is greater than or equal to the third preset threshold, the electronic device determines to enter the file saving sub-scenario and issues the first performance policy to provide sufficient performance. If the system load is less than the third preset threshold, the monitoring thread of the file saving sub-scenario is ended. If the file saving confirmation event is not monitored in the office interface, the monitoring thread of the file saving sub-scenario also needs to be ended.

[0156] Subsequently, it can periodically detect (such as every 2 seconds) whether it hooks the window message of file saving. If it does not hook the window message of file saving, it further detects whether it monitors the file saving end event. If it monitors the file saving end event, it needs to exit the file saving sub-scenario and can issue the second performance policy to save performance power consumption. If it does not monitor the file saving end event, the monitoring thread of the file saving sub-scenario is ended.

[0157] 8. The first event is an audio playing event, and the first office sub-scenario is the audio sub-scenario

[0158] In a specific implementation, first, the HSPP main scenario is calculated. When the calculated main scenario is the office scenario, the monitoring of the audio sub-scenario is enabled. If the electronic device monitors the event of playing music in the background (i.e., the audio playing event), it determines that the electronic device enters the audio sub-scenario. After a preset time period, if the electronic device does not monitor the audio playing event, the electronic device exits the audio sub-scenario.

[0159] 9. The first event is a video playing event, and the first office sub-scenario is the video sub-scenario

[0160] In a specific implementation, first, the HSPP main scenario is calculated. When the calculated main scenario is the office scenario, the monitoring of the video sub-scenario is enabled. If the electronic device monitors the event of playing a video in the non-focus application at the back end while there is a front-end office window (such as playing a video in a Word office application, a PowerPoint office application, etc.) (i.e., the video playing event), it determines that the electronic device enters the video sub-scenario. After a preset time period, if the electronic device does not monitor the video playing event, the electronic device exits the video sub-scenario.

[0161] In a possible implementation, the first office sub-scenario is the office sub-scenario with the highest priority among the office sub-scenarios corresponding to the events monitored on the office interface. It can be understood that, as Figure 8 shown, when there are multiple first events monitored on the office interface, there will also be multiple calculated office sub-scenarios at this time. All office sub-scenarios can be stored in a map (which can be understood as a storage container), sorted according to the preset priority of the office sub-scenarios, the office sub-scenario with the highest priority is determined, and the office sub-scenario with the highest priority is used as the currently used office sub-scenario (i.e., the first office sub-scenario). Among them, the priority of the office sub-scenarios here can be set by the user, can be set by the developer, or can be the system default, which is not limited here; and the priorities of these office sub-scenarios can also be adjusted according to requirements. For example, the priority of the waiting response sub-scenario can be set to the highest, followed by the batch processing sub-scenario.

[0162] It should be noted that once the main scenario or sub-scenario changes, it will trigger changes in the scenarios in the map, and at the same time, it will also trigger a new scenario priority decision, thus realizing scenario priority scheduling. For example, when the main scenario changes from the office scenario to other scenarios, the monitoring of events will be exited at this time, and all scenarios in the map will be cleared. Another example is that when the mouse exits the waiting state, the waiting response sub-scenario will be exited at this time, and the waiting response sub-scenario previously stored in the map will be cleared, and it is necessary to re-sort according to the priority of the office sub-scenarios to determine the office sub-scenario with the highest priority.

[0163] Among them, as Figure 8 shown, the conditions for triggering scenario changes here can be that the main scenario changes, such as the focus window switching; or the sub-scenario changes, such as background audio and video switching, system load changes, video barrage on / off, power state switching, office sub-scenario switching, professional software sub-scenario switching, assessment sub-scenario switching, etc.

[0164] In a possible implementation, the method further includes: when the office interface is not the focus window, after a preset time period, the electronic device stops monitoring multiple events triggered on the office interface.

[0165] It can be understood that when the office interface is not the focus window, it indicates that the user is not currently using the office application to perform office operations. In order to prevent frequent page switching, resulting in continuous thread creation and destruction and resource waste, a timer protection can be set, so that after a preset time period, the monitoring thread will be destroyed, that is, the monitoring of multiple events triggered on the office interface will be stopped.

[0166] It can be seen that based on Figure 4For the described method, the electronic device displays an office interface in response to an operation to open an office application; based on this office interface as the focus window, it monitors multiple events triggered on this office interface; the multiple events are events that transmit information through a serial interface, and the focus window is a window that receives keyboard input; the electronic device determines to enter a first office sub-scenario corresponding to the first event in response to the first event triggered on this office interface; the first event is one of the multiple events; then it determines a first performance policy corresponding to the first office sub-scenario and executes the first performance policy. This can more precisely identify the user's operations, further subdivide the currently used sub-scenario in the office scenario, and can accurately adjust the performance of the electronic device according to different sub-scenarios to meet the sub-scenarios with high-performance requirements in the office scenario, improving the user experience.

[0167] Please refer to Figure 9 , Figure 9 FIG. shows a schematic structural diagram of a performance adjustment device 900 according to an embodiment of the present application. Figure 9 The described performance adjustment device can be an electronic device, or a device in an electronic device, or a device that can be used in combination with an electronic device. Figure 9 The described performance adjustment device may include a display unit 901, a monitoring unit 902, and a processing unit 903.

[0168] Among them:

[0169] The display unit 901 is configured to display an office interface in response to an operation to open an office application;

[0170] The monitoring unit 902 is configured to monitor multiple events triggered on this office interface based on this office interface as the focus window; the multiple events are events that transmit information through a serial interface, and the focus window is a window that receives keyboard input;

[0171] The processing unit 903 is configured to determine to enter a first office sub-scenario corresponding to the first event in response to the first event triggered on this office interface; the first event is one of the multiple events;

[0172] The processing unit 903 is further configured to determine a first performance policy corresponding to the first office sub-scenario and execute the first performance policy.

[0173] In a possible implementation, the first office sub-scenario is the office sub-scenario with the highest priority among the office sub-scenarios corresponding to the events monitored on this office interface.

[0174] In a possible implementation, the multiple events include one or more of the following events: a mouse waiting state event, a mouse selection event, an insertion confirmation event, a file export confirmation event, or a parallel interface exit event; wherein, the mouse waiting state event corresponds to a waiting response sub-scenario, the mouse selection event corresponds to a batch processing sub-scenario, the insertion confirmation event corresponds to an insert object sub-scenario, the file export confirmation event corresponds to a file export sub-scenario, and the parallel interface exit event corresponds to a file closing sub-scenario.

[0175] In a possible implementation, the monitoring unit 902 is further configured to: based on the office interface not being the focus window, stop monitoring the multiple events triggered on the office interface after a preset time period.

[0176] In a possible implementation, the first event is a mouse selection event, and the first office sub-scenario is a batch processing sub-scenario; when the processing unit 903 determines to enter the first office sub-scenario corresponding to the first event in response to the first event triggered on the office interface, it is specifically configured to: in response to the mouse selection event triggered on the office interface and the system load being greater than or equal to a first preset threshold, determine to enter the batch processing sub-scenario.

[0177] In a possible implementation, the first event is an insertion confirmation event, and the first office sub-scenario is an insert object sub-scenario; when the processing unit 903 determines to enter the first office sub-scenario corresponding to the first event in response to the first event triggered on the office interface, it is specifically configured to: in response to the object insertion window being displayed on the office interface and the insertion confirmation event being triggered, determine to enter the insert object sub-scenario.

[0178] In a possible implementation, the first event is a file export confirmation event, and the first office sub-scenario is a file export sub-scenario; when the processing unit 903 determines to enter the first office sub-scenario corresponding to the first event in response to the first event triggered on the office interface, it is specifically configured to: in response to the file export window being displayed on the office interface, the file export confirmation event being triggered, and the system load being greater than or equal to a second preset threshold, determine to enter the file export sub-scenario.

[0179] In a possible implementation, the first event is a parallel interface exit event, and the first office sub-scenario is a file closing sub-scenario; when the processing unit 903 determines to enter the first office sub-scenario corresponding to the first event in response to the first event triggered on the office interface, it is specifically configured to: in response to the parallel interface exit event and the first message triggered on the office interface, determine to enter the file closing sub-scenario; the first message indicates the exit of the monitoring of the multiple events on the office interface.

[0180] For the case where the performance adjustment device can be a chip or a chip system, reference can be made to Figure 10 the structural schematic diagram of the chip shown. Figure 10 The chip 1000 shown includes a processor 1001 and an interface 1002. Optionally, it may further include a memory 1003. Among them, the number of processors 1001 can be one or more, and the number of interfaces 1002 can be multiple.

[0181] For the case where the chip is used to implement the electronic device in the embodiments of the present application:

[0182] The interface 1002 is used to receive or output signals;

[0183] The processor 1001 is used to execute the data processing operations of the electronic device.

[0184] It can be understood that some optional features in the embodiments of the present application can, in some scenarios, be implemented independently without relying on other features, such as the current scheme it is based on, to solve the corresponding technical problems and achieve the corresponding effects. In some scenarios, they can also be combined with other features according to requirements. Correspondingly, the performance adjustment device given in the embodiments of the present application can also correspondingly implement these features or functions, which will not be elaborated here.

[0185] It should be understood that the processor in the embodiments of the present application can be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method embodiments can be completed by the integrated logic circuit in the hardware of the processor or instructions in software form. The above processor can be a general-purpose processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components.

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

[0187] The present application also provides a performance adjustment system, and the performance adjustment system includes an electronic device; wherein, the electronic device is used to execute the method executed by the electronic device in any of the above method embodiments.

[0188] The present application also provides a computer-readable storage medium, and a computer program is stored in the computer-readable storage medium. The computer program includes program instructions, and when the program instructions run on the electronic device, the functions of any of the above method embodiments are implemented.

[0189] The present application also provides a computer program product, and when the computer program product runs on a computer, the computer is enabled to implement the functions of any of the above method embodiments.

[0190] As used in the description and the appended claims of the present application, the singular forms "a", "an", "the", "above", "said", "this" are intended to include the plural forms as well, unless the context clearly indicates otherwise. It should also be understood that the term "and / or" used in the present application refers to and encompasses any and all possible combinations of one or more of the listed items. As used in the foregoing embodiments, depending on the context, the term "when" may be construed to mean "if" or "after" or "in response to determining" or "in response to detecting". Similarly, depending on the context, the phrase "when determining" or "if detecting (the stated condition or event)" may be construed to mean "if determining" or "in response to determining" or "when detecting (the stated condition or event)" or "in response to detecting (the stated condition or event)".

[0191] In the foregoing embodiments, it can be implemented in whole or in part by software, hardware, firmware, or any combination thereof. When implemented using software, it 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 instructions are loaded and executed on a computer, the processes or functions described in the embodiments of the present application are 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. For example, the computer instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center by wire (such as coaxial cable, fiber optic, digital subscriber line (DSL)) or wirelessly (such as infrared, wireless, microwave, etc.). The computer-readable storage medium can be any available medium that can be accessed by a computer or a data storage device such as a server, data center, etc. that includes one or more integrated available media. The available medium can be a magnetic medium (such as a floppy disk, hard disk, magnetic tape), an optical medium (such as a high-density digital video disc (DVD)), or a semiconductor medium (such as a solid state disk (SSD)), etc. Those of ordinary skill in the art can understand all or part of the processes in the foregoing embodiments of the method, and the processes can be completed by relevant hardware instructed by a computer program. The program can be stored in a computer-readable storage medium. When the program is executed, it can include the processes of the foregoing method embodiments. The foregoing storage media include: various media that can store program codes such as ROM or random access memory RAM, magnetic disks, or optical discs.

[0192] As described above, it is only the specific implementation manner of the present application, but the protection scope of the present application is not limited thereto. Any person skilled in the art within the technical scope disclosed by the present application can easily think of changes or substitutions, which should all be covered within the protection scope of the present application. Therefore, the protection scope of the present application shall be subject to the protection scope of the claimed rights.

Claims

1. A performance adjustment method, characterized in that, The method includes: In response to an opening operation of an office application, display an office interface; Based on the office interface being the focused window, monitor multiple events triggered on the office interface; the multiple events are events that transfer information through a serial interface, and the focused window is the window that receives keyboard input; In response to a first event triggered on the office interface, determine to enter a first office sub-scene corresponding to the first event; the first event is one of the multiple events; Determine a first performance policy corresponding to the first office sub-scene, and execute the first performance policy.

2. The method according to claim 1, characterized in that The first office sub-scene is the office sub-scene with the highest priority among the office sub-scenes corresponding to the events monitored on the office interface.

3. The method according to claim 1 or 2, characterized in that, The multiple events include one or more of the following events: mouse waiting state event, mouse selection event, insertion confirmation event, file export confirmation event, or parallel interface exit event; Among them, the mouse waiting state event corresponds to a waiting response sub-scene, the mouse selection event corresponds to a batch processing sub-scene, the insertion confirmation event corresponds to an insert object sub-scene, the file export confirmation event corresponds to a file export sub-scene, and the parallel interface exit event corresponds to a file closing sub-scene.

4. The method according to any one of claims 1 to 3, characterized in that The method further includes: Based on the office interface not being the focused window, after a preset time period, stop monitoring the multiple events triggered on the office interface.

5. The method according to any one of claims 1-4, characterized in that, The first event is a mouse selection event, and the first office sub-scene is a batch processing sub-scene; The step of, in response to a first event triggered on the office interface, determining to enter a first office sub-scene corresponding to the first event includes: In response to a mouse selection event triggered on the office interface and the system load being greater than or equal to a first preset threshold, determine to enter the batch processing sub-scene.

6. The method according to any one of claims 1-4, characterized in that, The first event is an insertion confirmation event, and the first office sub-scene is an insert object sub-scene; The step of, in response to a first event triggered on the office interface, determining to enter a first office sub-scene corresponding to the first event includes: In response to an object insertion window being displayed on the office interface and an insertion confirmation event being triggered, determine to enter the insert object sub-scene.

7. The method according to any one of claims 1-4, characterized in that, The first event is a file export confirmation event, and the first office sub-scene is a file export sub-scene; The step of, in response to a first event triggered on the office interface, determining to enter a first office sub-scene corresponding to the first event includes: In response to a file export window being displayed on the office interface, a file export confirmation event being triggered, and the system load being greater than or equal to a second preset threshold, determine to enter the file export sub-scene.

8. The method according to any one of claims 1 to 4, characterized in that, The first event is a parallel interface exit event, and the first office sub-scene is a file closing sub-scene; The step of, in response to a first event triggered on the office interface, determining to enter a first office sub-scene corresponding to the first event includes: In response to a parallel interface exit event and a first message being triggered on the office interface, determine to enter the file closing sub-scene; The first message indicates exiting the monitoring of the multiple events on the office interface.

9. An electronic device, characterized in that, Includes: One or more processors, one or more memories; wherein the one or more memories are coupled to the one or more processors, and the one or more memories are configured to store computer program code, the computer program code including computer instructions, and when the one or more processors execute the computer instructions, the electronic device is caused to perform the method according to any one of claims 1-8.

10. A performance adjustment system, characterized in that, An electronic device is included; wherein the electronic device is configured to perform the method according to any one of claims 1-8.

11. A chip, characterized in that, A processor and an interface are included, and the processor and the interface are coupled; the interface is configured to receive or output signals, and the processor is configured to execute code instructions to cause the method according to any one of claims 1-8 to be performed.

12. A computer storage medium, characterized in that, The computer storage medium stores a computer program, the computer program including program instructions, and when the program instructions run on an electronic device, the electronic device is caused to perform the method according to any one of claims 1-8.

13. A computer program product, characterized in that, When the computer program product runs on a computer, the computer is caused to perform the method according to any one of claims 1-8.

Citation Information

Patent Citations

  • Resource scheduling method and electronic equipment

    CN114443256A

  • Scheduling strategy determination method and device, equipment and storage medium

    CN116028207A