WO2022127341A1 - 系统切换方法、装置、设备及存储介质 - Google Patents
系统切换方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- WO2022127341A1 WO2022127341A1 PCT/CN2021/124766 CN2021124766W WO2022127341A1 WO 2022127341 A1 WO2022127341 A1 WO 2022127341A1 CN 2021124766 W CN2021124766 W CN 2021124766W WO 2022127341 A1 WO2022127341 A1 WO 2022127341A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- processor
- event
- processing
- switching
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 149
- 238000012545 processing Methods 0.000 claims abstract description 106
- 230000004044 response Effects 0.000 claims abstract description 44
- 230000001960 triggered effect Effects 0.000 claims abstract description 39
- 230000008569 process Effects 0.000 claims description 72
- 230000000875 corresponding effect Effects 0.000 claims description 36
- 238000004891 communication Methods 0.000 claims description 33
- 230000001360 synchronised effect Effects 0.000 claims description 32
- 238000012546 transfer Methods 0.000 claims description 15
- 230000026676 system process Effects 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 11
- 238000013500 data storage Methods 0.000 claims description 11
- 230000002596 correlated effect Effects 0.000 claims description 3
- 230000007246 mechanism Effects 0.000 abstract description 9
- 230000006870 function Effects 0.000 description 21
- 238000010586 diagram Methods 0.000 description 11
- 230000003993 interaction Effects 0.000 description 10
- 238000007726 management method Methods 0.000 description 9
- 230000009977 dual effect Effects 0.000 description 6
- 230000036541 health Effects 0.000 description 6
- 230000002618 waking effect Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000001747 exhibiting effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 239000004984 smart glass Substances 0.000 description 1
- 210000000707 wrist Anatomy 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3206—Monitoring of events, devices or parameters that trigger a change in power modality
- G06F1/3228—Monitoring task completion, e.g. by use of idle timers, stop commands or wait commands
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4406—Loading of operating system
- G06F9/441—Multiboot arrangements, i.e. selecting an operating system to be loaded
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/3293—Power saving characterised by the action undertaken by switching to a less power-consuming processor, e.g. sub-CPU
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4418—Suspend and resume; Hibernate and awake
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/485—Task life-cycle, e.g. stopping, restarting, resuming execution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/4557—Distribution of virtual machine instances; Migration and load balancing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/48—Indexing scheme relating to G06F9/48
- G06F2209/483—Multiproc
Definitions
- the embodiments of the present application relate to the field of wearable devices, and in particular, to a system switching method, apparatus, device, and storage medium.
- a wearable device is a portable electronic device that can be directly worn or integrated on clothes or accessories.
- Common wearable devices include smart watches, smart bracelets, smart glasses and so on.
- wearable devices are usually designed in smaller sizes, and the smaller size means that wearable devices can only be configured with batteries with smaller capacity, which in turn leads to wearable devices.
- the battery life of the wearable device is relatively short, and accordingly, the user needs to charge the wearable device frequently.
- Embodiments of the present application provide a system switching method, apparatus, device, and storage medium.
- the technical solution is as follows:
- an embodiment of the present application provides a system switching method, the method is used in a wearable device, the wearable device is provided with at least a first processor and a second processor, the second processor The power consumption of the processor is higher than the power consumption of the first processor;
- the method includes:
- the first event is processed by a first system, where the first system refers to a system run by the first processor;
- an embodiment of the present application provides a system switching device, the device is used in a wearable device, and the wearable device is provided with at least a first processor and a second processor, the second processor The power consumption of the processor is higher than the power consumption of the first processor;
- the device includes:
- a first system module configured to process a first event through a first system when the second processor is in a dormant state, where the first system refers to a system run by the first processor;
- a second system module configured to switch the second processor to a wake-up state in response to a triggered second event, and process the second event through a second system
- the second system refers to A system running on a processor and the first processor does not satisfy the processing capability required for the second event.
- an embodiment of the present application provides a wearable device, the wearable device includes a processor and a memory; the processor includes at least a first processor and a second processor, the second processor The power consumption of the processor is higher than the power consumption of the first processor, and the memory stores at least one instruction, and the at least one instruction is used to be executed by the processor to implement the system switching method described in the above aspect.
- an embodiment of the present application provides a computer-readable storage medium, where the storage medium stores at least one instruction, and the at least one instruction is configured to be executed by a processor to implement the system switching method described in the above aspect .
- an embodiment of the present application provides a computer program product or computer program, where the computer program product or computer program includes computer instructions, and the computer instructions are stored in a computer-readable storage medium.
- the processor of the computer device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the computer device executes the system switching method provided by the above aspects.
- FIG. 1 is a schematic diagram of a dual-core communication software framework corresponding to a second processor according to an exemplary embodiment of the present application
- FIG. 2 is a schematic diagram of a dual-core communication software framework corresponding to a first processor according to an exemplary embodiment of the present application
- FIG. 3 shows a flowchart of a system switching method provided by an exemplary embodiment of the present application
- FIG. 4 is a schematic interface diagram of a system process in a smart watch according to an exemplary embodiment of the present application
- FIG. 5 shows a flowchart of a system switching method provided by another exemplary embodiment of the present application.
- FIG. 6 is a sequence diagram of a system switching process shown in an exemplary embodiment of the present application.
- FIG. 7 shows a flowchart of a system switching method provided by another exemplary embodiment of the present application.
- FIG. 8 shows a flowchart of a system switching method provided by another exemplary embodiment of the present application.
- FIG. 9 is a sequence diagram of an inter-system data synchronization process shown in an exemplary embodiment of the present application.
- FIG. 10 is a sequence diagram of a data synchronization process between systems shown in another exemplary embodiment of the present application.
- FIG. 11 is a sequence diagram of a timing synchronization process shown in an exemplary embodiment of the present application.
- FIG. 12 shows a structural block diagram of a system switching apparatus provided by another embodiment of the present application.
- FIG. 13 shows a structural block diagram of a wearable device provided by an exemplary embodiment of the present application.
- plural refers to two or more.
- “And/or”, which describes the association relationship of the associated objects, means that there can be three kinds of relationships, for example, A and/or B, which can mean that A exists alone, A and B exist at the same time, and B exists alone.
- the character “/” generally indicates that the associated objects are an "or" relationship.
- a single processor is set in the wearable device, and all system events generated during the operation of the device are processed through the operating system running on the processor, so the processor needs to have strong data processing capabilities. capability and maintain working condition while the equipment is in operation.
- wearable devices only need to implement some functions that require less processing performance in most cases, for example, for smart watches or smart bracelets, in most cases, smart watches or The smart bracelet only needs to display time and prompt messages. Therefore, keeping the processor in operation for a long time will not improve the performance of the wearable device, but will increase the power consumption of the device, resulting in a shorter battery life of the wearable device.
- the wearable device is provided with at least a first processor and a second processor with different processing performance and power consumption, respectively It is used to run the first system and the second system (that is, dual-core dual system), and a system switching mechanism is designed for the dual-core dual system.
- the first system running on the low-power processor processes events requiring low-performance processing, and keeps the high-power processor in a dormant state (correspondingly, the high-power processor is The second system running on the processor is in a dormant state), which reduces the power consumption of the wearable device while realizing the basic functions of the wearable device; when there is an event requiring high-performance processing, by waking up the high-power processor, And switch the second system to process the event, to ensure that the triggered event can be responded to and processed in time to meet the performance requirements of the wearable device.
- the wearable device can automatically switch between systems according to the processing capability requirements of the triggered events and the processing capabilities of different processors.
- the reduction of Power consumption of wearable devices On the premise of ensuring the performance of the wearable device, the reduction of Power consumption of wearable devices.
- the first system and the second system need to implement system communication (or referred to as dual-core communication).
- the first system is a real-time operating system (Real Time Operating System, RTOS) running on a microcontroller unit (MicroController Unit, MCU)
- the second system is running on a central processing unit (Central Processing Unit) Processing Unit (CPU) on the Android (Android) operating system.
- RTOS Real Time Operating System
- MCU microcontroller Unit
- CPU Central Processing Unit Processing Unit
- Android Android
- FIG. 1 it shows a dual-core communication software framework of an Android operating system shown in an exemplary embodiment of the present application.
- the dual-core communication software framework follows the design principles of "low coupling, high reliability, and high reuse", including Kernel (kernel), HIDL (hardware abstraction layer interface description language), Native Service (local service), Framework Service (framework service) , Framework API (framework interface) and APP (application) part of the module development.
- the APP module includes functional modules such as Launcher (desktop launcher), Setting (setting) and SystemUI (system user interface);
- the Framework API module includes MCUManager (MCU management), SensorManager (sensor management), LocationManager (location management), etc.
- Management module Framework Service module includes MCUManagerService (MCU management service), SystemSensorManager (system sensor management), LocationManagerService (location management service) and other service modules
- Native Service module includes dccservice (dcc service), Sensorservice (sensor service) and other service modules
- HIDL modules include Sensor HAL (sensor hardware abstraction layer), GPS HAL (global positioning system hardware abstraction layer) and other modules.
- the Kernel module includes DCC Transfer Drivers such as dcc_datah, dcc_data, Mcu_sensor, Mcu_gps, and Mcu_factory.
- the transport layer as the interface layer connecting the upper and lower layers in the dual-core communication software framework, shields the application layer from the transmission details of the communication of the lower layer (data link layer) of the system, and provides a service channel for application scenarios;
- the application layer as the main body of service provision, responds to people It communicates with the computer and transmits the data generated in the process of human-computer interaction through the transport layer, and responds to external data requests.
- RTOS is designed using the principle of peer-to-peer. Taking the wearable device as a smart watch as an example, as shown in FIG. 2 , it shows the dual-core communication software framework of RTOS shown in an exemplary embodiment of the present application.
- the dual-core communication software framework of RTOS is divided into application layer (Application Layer), service layer (Service Layer), framework layer (Framework Layer), hardware abstraction layer (Hardware abstraction layer) and platform layer (PlatformLayer).
- the application layer includes watchface (dial), Daily Tracker (daily tracking), Message center (message center), Voice around Apps (sound application), Health Apps (health application), Settings (settings) and other application modules;
- the service layer includes Sport&health task (sports health task), System managertask (system management task), AMS (activity management service), AudioService (audio service), Log Service (log service), OFTP Service (Odette file transfer protocol service), BT Service (Bluetooth Service), Delegate Service (transfer service), RPC Service (remote call service), sensor Service (sensor service), storage Service (storage service) and other service modules;
- the framework layer includes Message Pub (message center), UI Framework (user interface) Framework), G2D Engine (G2D attention), Audio Middleware (audio middleware), Preference (preference), File system (file system), Algorithms (algorithm), Aios, AsycEvent (in-process asynchronous event) and other framework modules; hardware abstraction The layer includes hardware abstraction modules such as Screen/TP
- the system switching method provided by the embodiment of the present application is used in a wearable device, and the wearable device is provided with at least a first processor and a second processor, and the power consumption of the second processor is higher than that of the first processor power consumption, the method includes:
- the first event is processed by the first system, where the first system refers to a system run by the first processor;
- the second processor In response to the triggered second event, the second processor is switched to the wake-up state, and the second event is processed by the second system, the second system refers to the system run by the second processor, and the first processor does not satisfy the The processing power required for the second event.
- the second event is processed by the second system, including:
- the second event is processed by the second system, and a graphical user interface corresponding to the second event is displayed.
- the second event is processed by the second system, including:
- the event feedback data sent by the second system is received through the first system, and a graphical user interface corresponding to the second event is displayed based on the event feedback data.
- the method further includes:
- the second processor In response to the completion of the second event processing, the second processor is switched to the sleep state, and the first event is processed by the first system.
- the second system has the display authority of the graphical user interface in the process of processing the second event
- the method further includes:
- the second switching instruction is sent to the first system through the second system, so that the first system obtains the display authority of the graphical user interface from the second system according to the second switching instruction.
- the method also includes:
- the first data is cached by the first system, wherein the first data is cached in a data storage space corresponding to the first system;
- the method further includes:
- the first data is synchronized to the second system through the first system.
- synchronizing the first data with the second system through the first system includes:
- the first data is synchronized with the target application in the second system through the bound data synchronization service, and the target application is used for processing the first data.
- synchronizing the first data with the second system through the first system further includes:
- the target data in the first data is synchronized by the first system to the second system, and the data volume of the target data is less than the data volume threshold.
- the method further includes:
- the second processor In response to the data amount of the cached first data reaching the storage capacity threshold, the second processor is switched to the wake-up state, and the first data is synchronized to the second system through the first system.
- the method further includes:
- the second processor In response to the cached first data containing the instant data, the second processor is switched to the wake-up state, and the instant data is synchronized to the second system through the first system.
- the method further includes:
- the second processor In response to reaching the data alignment time point, the second processor is switched to an awake state, and the first data is synchronized to the second system through the first system.
- switching the second processor to the wake-up state includes:
- the target data alignment time point corresponding to the first data is determined, wherein the data with different real-time requirements corresponds to different data alignment time points, and the time interval between the data alignment time points is related to the real-time performance. demand is negatively related;
- the second processor In response to reaching the target data alignment time point, the second processor is switched to the awake state.
- a communication component is mounted on the first processor
- the method further includes:
- the second processor When the second processor is in an awake state, in response to receiving the second data sent by the external device through the communication component, the second data is synchronized to the second system through the first system.
- the method further includes:
- the third data is synchronized with the first system through the data communication service provided by the second system, where the third data is data generated in the process of processing the second event.
- the method further includes:
- the second processor In response to the completion of processing of the second event, the second processor is kept awake for the duration of the sleep delay corresponding to the second event, the duration of the sleep delay is determined based on the wake-up frequency of the second processor after the second event, and/or the sleep delay The duration is determined based on the event type of the second event;
- the second processor In response to reaching the sleep delay duration, the second processor is switched to the sleep state, and the first event is processed by the first system.
- FIG. 3 shows a flowchart of a system switching method provided by an exemplary embodiment of the present application. This embodiment is described by taking the method applied to a wearable device as an example, and the method may include the following steps.
- Step 301 when the second processor is in a dormant state, process a first event through a first system, where the first system refers to a system run by the first processor.
- the processing performance of the first processor is lower than the processing performance of the second processor (the processing capacity and processing speed of the first processor are both lower than those of the second processor), and the power consumption of the first processor lower than the power consumption of the second processor.
- the second system can process the events processed by the first system, but the first system may not necessarily be able to process the events processed by the second system.
- the first processor is an MCU
- the second processor is a CPU
- the first system is an RTOS
- the second system is an Android system.
- the working modes of the wearable device include a performance mode, a hybrid mode and a low power consumption mode, wherein, in the performance mode, both the second processor and the first processor are kept awake; the low power consumption mode In the hybrid mode, only the first processor remains in the working state, while the second processor remains in the off state; in the hybrid mode, when the first event is processed by the first system, the second processor remains in the dormant state.
- the first system is used to process the first event
- the second system is used to process the second event, wherein the processing power required for the first event is lower than the processing required for the second event ability.
- the first event and the second event may be divided according to application scenarios.
- an event in a weak interaction scenario that is, a scenario with low human-computer interaction frequency and low processing performance requirements
- a strong interaction scenario ie, a scenario with frequent human-computer interaction, high processing performance requirements
- the first event may include events such as dial display, dial interface switching, and notification message display
- the second event may include events such as answering a call, launching an application, editing a dial, and setting functions.
- the embodiment of the present application does not limit the specific type and division manner of the event.
- wearable devices as an auxiliary electronic device, only have weak interactions with users in most usage scenarios. For example, in most scenarios, the user only lifts the wrist to watch through the smart watch. Therefore, when the wearable device processes the first event through the first system, the second processor is controlled to be in a sleep state (the second system is in a sleep state), thereby reducing the overall power consumption of the wearable device.
- Step 302 in response to the triggered second event, switch the second processor to the wake-up state, and process the second event through the second system, the second system refers to the system run by the second processor, and the first processor does not The processing power required to satisfy the second event.
- the The wearable device switches the second processor from the sleep state to the wake-up state, and switches the system for processing the event from the first system to the second system, so that the second event is processed by the second system.
- the fact that the first processor does not meet the processing capability required for the second event can be understood as: the first processor cannot process the second event, or, the first processor can process the second event, but the processing effect (such as processing speed) The processing effect requirements of the second event cannot be met.
- the system run by the processor when the processor is in the dormant state, the system run by the processor is in the dormant state, and when the processor is switched from the dormant state to the wake-up state, the system run by the processor is also correspondingly switched to the wake-up state .
- the first system identifies the triggered event during the running process, and if the triggered event belongs to the second event, wakes up the second system, otherwise, the second system continues to maintain the dormant state.
- the first system stores an event list including various second events, and the first system determines whether the triggered event belongs to the second event based on the event list.
- the first processor wakes up the second processor by sending an interrupt to the second processor, so as to wake up the second system for event processing.
- the first processor when the second processor is in the wake-up state, the first processor is in the wake-up state to prevent the first processor from frequently sleeping and waking up, or the first processor is switched from the wake-up state to the sleep state, so as to further reduce the device function. consumption.
- the wearable device is provided with a first processor with low power consumption and a second processor with high power consumption, and the first processor runs the first system, and the second processor runs the first system.
- the processor runs the second system, and by introducing a system switching mechanism, the first system processes the first event with low processing capacity requirements, and keeps the second processor in a dormant state;
- the second processor is woken up and the second system is switched to process the second event to ensure timely processing of the event; the solution provided by the embodiment of the present application can ensure the performance of the wearable device while reducing the wearable The power consumption of the wearable device is reduced, thereby improving the battery life of the wearable device.
- the first processor in the wearable device since the first processor in the wearable device is in a working state most of the time, and the second processor is in a dormant state most of the time (Because only some simple events need to be processed by the first processor most of the time), that is, the first processor acts as the main processor of the wearable device most of the time, and the second processor acts as the main processor of the wearable device most of the time.
- the slave processor therefore, the logic for determining whether to wake up the processor and switch the operating system is executed by the first processor (the first system), and there is no need to additionally set the manager in the wearable device to monitor and evaluate events processed by different processors. And there is no need to set up a switch to switch between different processors, which helps to reduce the complexity of the system architecture in the wearable device.
- step 302 further includes the following steps.
- Step 303 in response to the completion of the second event processing, switch the second processor to a sleep state, and process the first event through the first system.
- the wearable device when the second event processing is completed, the wearable device re-controls the second processor to enter the sleep state, and re-transfers the event processing system to the second system Switch to the first system so that the first system continues to process the first event.
- the first processor is in a sleep state when the second system processes the second event, and when the second event is processed, the first processor switches from the sleep state to the wake-up state.
- the second processor may wake up the first processor by sending an interrupt to the first processor.
- the wearable device can automatically switch between the first system and the second system according to the processing power requirements in different application scenarios, and can achieve rich application functions while extending the battery life. .
- the smart watch is equipped with RTOS and Android system
- RTOS is responsible for sensor data processing and dial display
- Android system is responsible for realizing application functions.
- FIG. 4 by displaying the dial 41 through the RTOS, the Android system is in a dormant state, thereby maintaining low power consumption.
- the swiping application can be started through the physical button.
- the smart watch detects the start event of the swiping application, the Android system is awakened, and the Android system is switched to start the swiping application.
- the Android system enters a dormant state, and the Android system switches to RTOS to continue to display the dial 41 .
- the wearable device when the second event processing is completed, switches the second processor back to the sleep state again, and switches the first system to perform event processing, so that the wearable device is in a low-power state in most scenarios. Consumption state, further improve the battery life of wearable devices.
- the second processor may be switched back to the sleep state immediately after the second event is processed, the second processor may be reawakened in a short time, resulting in frequent switching of the second processor.
- the wearable device in response to the completion of the second event processing, keeps the second processor awake within the sleep delay period corresponding to the second event. state, and when the sleep delay time is reached, the second processor is switched to the sleep state, and the first event is processed by the first system.
- the sleep delay duration is determined based on the wake-up frequency of the second processor after the second event, and/or the sleep delay duration is determined based on the event type of the second event.
- the second system records the wake-up frequency within a preset time period after the second event (the wake-up frequency can be determined by recording each wake-up time), so that The sleep delay duration of the second processor is determined according to the wake-up frequency, wherein the sleep delay duration has a positive correlation with the wake-up frequency, and the sleep delay duration has a duration upper limit.
- the duration of the sleep delay time ranges from 15 seconds to 2 minutes.
- the second system may also determine the sleep delay duration according to the event type of the second event, wherein the corresponding relationship between the event type and the sleep delay duration may be set by default, or may be set according to the user's historical usage record (which may be based on After different types of second events are triggered, the user's operation frequency determines the corresponding relationship between the event type and the sleep delay duration. For example, when the second event is an alarm event, the sleep delay time is 10 seconds (the user usually does not perform subsequent operations after turning off the alarm), and when the second event is a notification message event, the sleep delay time is 30 seconds (the user A series of follow-up actions are usually performed after viewing the notification message).
- the second processor by setting the sleep delay time, when the second event is processed and the sleep delay time is reached, the second processor is switched to the sleep state again, so as to prevent the second processor from being woken up frequently.
- the event is monitored by the first system (whether the first system can process the triggered event), and based on The monitoring result wakes up the second processor; and, while performing system switching, the system needs to switch the display authority of the Graphical User Interface (GUI) to ensure the correct display of the user interface after the system switching.
- GUI Graphical User Interface
- FIG. 5 shows a flowchart of a system switching method provided by another exemplary embodiment of the present application. This embodiment is described by taking the method applied to a wearable device as an example, and the method may include the following steps.
- Step 501 when the second processor is in a dormant state, process the first event through the first system.
- the second processor pulls up the first processor during the booting process, and the second processor notifies the a processor.
- the second processor After the second processor is started (that is, the second system is started), it sends a notification message to the first processor and enters the sleep state, and the first processor obtains the display authority of the graphical user interface according to the notification message, and displays the user interface. (Exhibiting the GUI of the first event).
- the CPU pulls up the MCU through a reset signal (resetpin), and the MCU notifies the CPU after the RTOS is started.
- the CPU sends a start-up completion notification to the MCU, and the MCU sends a hybrid mode entry request (MSG_ENTER_HYBRID_MODE_REQ) to preftask.
- the preftask After the preftask receives the request, it enters the hybrid mode by calling enter_hybrid_mode_api(), and instructs the GUI task to transfer the display permission to the first system (give lcd semaphore).
- the MCU receives the hybrid mode entry response (MSG_HYBRID_MODE_RSP) feedback from preftask, it will display the dial.
- Step 502 in response to the triggered second event, wake up the second processor through the first processor.
- the second event that triggers system switching and processor wake-up may be preset in the first system by the developer.
- the first system when a triggered event is received, it is detected whether the event belongs to the second event; , it is determined that the first processor can process the event, and the second processor is kept in a sleep state.
- the first processor wakes up the second processor in a dormant state by sending an interrupt to the second processor.
- the second event is an event triggered by a specified user operation.
- the specified user operation includes the operation of entering the application list (entering the application list by clicking on the case), the operation of starting the function card (clicking the function card to enable the corresponding function), the operation of dial editing, and the operation of dial window components Start operation, shortcut application start operation (triggered by physical buttons), notification open application operation (open the corresponding application by clicking on the application notification), status bar entry setting operation (enter the setting interface through the status bar) and so on.
- the second event is an event triggered by an application.
- the second event may be an event triggered by a call application (incoming call reminder), a timer application (timer reminder) or an alarm application (alarm clock reminder).
- incoming call reminder incoming call reminder
- timer application timer reminder
- alarm application alarm clock reminder
- Step 503 Send a first switching instruction to the first system through the second system, so that the first system transfers the display authority of the graphical user interface to the second system according to the first switching instruction.
- the wearable device When the second processor is in a dormant state, since the display authority of the graphical user interface belongs to the first system (that is, the wearable device displays the graphical user interface of the first event processed by the first system), during the processing of the second event , the wearable device needs to display the graphical user interface of the second event, so the second system in the wake-up state instructs the first system to transfer the display authority of the graphical user interface to the second system by sending the first switching instruction to the first system. system.
- the CPU when receiving the user-triggered operations such as entering the application list, launching the function card, editing the dial, launching the dial window component, launching the application by pressing a button, notifying to open the application, and entering the setting in the status bar, the CPU
- the Android system when the Android system is woken up, the CPU sends a notification to the MCU to switch to the Android system.
- the MCU After the MCU receives the switch notification, it sends a hybrid mode exit request (MSG_EXIT_HYBRID_MODE_REQ) to preftask.
- the preftask After the preftask receives the request, it exits the hybrid mode by calling exit_hybrid_mode_api(), and instructs the GUI task to transfer the display permission to the Android system (takelcd semaphore).
- the MCU After the MCU receives the hybrid mode exit response (MSG_HYBRID_MODE_RSP) feedback from preftask, it exits the dial display, and the CPU controls the display to display the user interface.
- the MCU wakes up the CPU to perform event processing.
- step 504 the second event is processed by the second system, and a graphical user interface corresponding to the second event is displayed.
- the second system can display the user interface through the display screen of the wearable device during the process of processing the second event, and further complete the second system under user interaction. event.
- the smart watch currently displays the dial through RTOS.
- the smart watch stops using the dial, wakes up and switches to the Android system, so as to display the alarm clock application interface, so that the user can The alarm clock close operation is performed in the alarm clock application interface.
- Step 505 in response to the completion of the second event processing, send a second switching instruction to the first system through the second system, so that the first system obtains the GUI display authority from the second system according to the second switching instruction.
- the second processor after the second event processing is completed, if a triggered first event is received, the second processor enters a sleep state and switches to the first system again; or, when the second event processing is completed, If no other triggered second events are received within the preset time period, the second processor enters a sleep state and switches to the first system again.
- the Android system running in the smart watch will re-enter the sleep state and switch to the RTOS for dial display.
- the display authority of the GUI belongs to the second system. Therefore, when switching from the second system to the first system, the second system needs to transfer the display authority of the GUI to the first system again. , so that the first system can display the user interface.
- the second system before the second processor switches to the sleep state, the second system sends a second switching instruction to the first system, and the first system re-acquires the display authority of the GUI according to the second switching instruction.
- the CPU when the Android system finishes processing the event and receives the operation of returning to the dial, the CPU sends a switching notification to the MCU and enters the sleep state, and the MCU re-acquires the display screen permission according to the switching notification, and performs dial display.
- Step 506 Switch the second processor to a sleep state, and process the first event through the first system.
- the wearable device continues to process the first event through the first system, and displays the graphical user interface of the first event.
- the wearable device cyclically executes the above steps 502 to 505 .
- the above-mentioned system switching process is performed when the power of the wearable device is higher than a threshold.
- the second processor in the wearable device is turned off, and sends a mode switching instruction to the first processor, and the first processor switches to the low power consumption mode after receiving the mode switching instruction.
- the first system stops processing the triggered second event.
- the CPU when the remaining power of the smart watch is lower than 5%, the CPU sends a mode switching instruction to enter the low power consumption mode to the MCU and turns it off. After the MCU receives the mode switching instruction, it enters the low power consumption mode. consumption mode.
- the second processor when an event that cannot be processed by the first processor is triggered, the second processor is awakened, and the second system notifies the first system to perform system switching, so as to obtain the display authority of the graphical user interface and ensure that the second system During the event processing, the normal display of the user interface of the second event; at the same time, when the second system is switched back to the first system, the first system obtains the display authority of the graphical user interface from the second system again to ensure that the user of the first event
- the normal display of the interface enables seamless switching between the dual systems.
- the wearable device when switching between the first system and the second system, it is necessary to switch the display authority of the graphical user interface.
- the wearable device when a second event that cannot be processed by the first processor is triggered, the wearable device processes the second event through the second system, and the second system processes the second event to obtain The data is fed back to the first system, and the first system displays the graphical user interface according to the data, that is, there is no need to switch the graphical user interface display authority between the first system and the second system.
- FIG. 7 shows a flowchart of a system switching method provided by another exemplary embodiment of the present application. This embodiment is described by taking the method applied to a wearable device as an example, and the method may include the following steps.
- Step 701 in the case that the second processor is in a dormant state, process the first event through the first system.
- Step 702 in response to the triggered second event, wake up the second processor through the first processor.
- steps 701 to 702 For the implementation of the foregoing steps 701 to 702, reference may be made to steps 501 to 502, and details are not described herein again in this embodiment.
- Step 703 Send the event data of the second event to the second system through the first system, so that the second system processes the event data to obtain event feedback data.
- the second system After the second processor is woken up, the second system is in the wake-up state. Different from the above-mentioned embodiment, the second system needs to obtain the display permission of the GUI from the first system. In this embodiment, the second system is woken up. After that, it is in the background silent processing state, which is only used for data processing in the background, and the display authority of the GUI still belongs to the first system, that is, there is no need to switch the GUI display authority.
- the first system sends the event data of the second event to the second system, and the second system processes the second event according to the event data.
- the event data may be service request data of the service requested by the second event, or application request data of the requested application.
- the event feedback data obtained by the second system processing the second event may be service data or application data.
- Step 704 Receive event feedback data sent by the second system through the first system, and display a graphical user interface corresponding to the second event based on the event feedback data.
- the second system sends the event feedback data to the first system, and the first system further processes the event feedback data, and packages the data (UI data) required for displaying the graphical user interface in the foreground for subsequent
- the packaged UI data displays the graphical user interface of the second event.
- Step 705 in response to the completion of the second event processing, switch the second processor to a sleep state, and process the first event through the first system.
- the wearable device After completing the processing of the second event, the wearable device switches the second processor to the sleep state again (no need to switch the GUI display authority), and processes the first event through the first system again to display the graphics of the first event.
- the wearable device switches the second processor to the sleep state again (no need to switch the GUI display authority), and processes the first event through the first system again to display the graphics of the first event.
- the second processor when a second event that cannot be processed by the first processor is triggered, the second processor is woken up, and the second system performs silent processing on the second event, and the processed event feedback data is sent to the first processor.
- the system enables the first system to display the second event on a graphical user interface according to the event feedback data, and realizes the timely processing of performance events without switching the graphical user interface display authority, thereby reducing the complexity of system switching.
- the first processor and the second processor work asynchronously, during the system switching process (the first system switches to the second system, or the second system switches to the first system), data synchronization needs to be performed between the systems to ensure that Consistency of data in different systems.
- Illustrative embodiments are used for description below.
- FIG. 8 shows a flowchart of a system switching method provided by another exemplary embodiment of the present application. This embodiment is described by taking the method applied to a wearable device as an example, and the method may include the following steps.
- Step 801 when the second processor is in a dormant state, process the first event through the first system.
- Step 802 Cache the first data by the first system, wherein the first data is cached in a data storage space corresponding to the first system.
- the first processor and the second processor each have a corresponding data storage space.
- the first system processes data generated during the first event, or the first system receives data sent by an external device.
- the first system caches the data.
- Step 803 in response to the triggered second event, wake up the second processor through the first processor.
- Step 804 Synchronize the first data with the second system through the first system when the second processor is in the wake-up state.
- the first system initiates data synchronization to the second system, and the first system All or part of the data is synchronized to the second system.
- the synchronization strategies (partial synchronization or full synchronization) of different types of data may be the same or different.
- the second system in the embodiment of the present application is provided with a data communication service as a data transfer (this service may be located in a framework service of the application layer), and the first system and the second system conduct data communication through the data communication service. communication.
- this service may be located in a framework service of the application layer
- the first system and the second system conduct data communication through the data communication service. communication.
- the first system binds the data synchronization service through the data communication service based on the data type of the first data, thereby synchronizing the first data to the target application in the second system through the bound data synchronization service, and the target application
- the application processes the first data.
- different data types correspond to different data synchronization services
- the data types are related to applications for processing the data
- different applications correspond to different data synchronization services.
- the first data is pedometer data
- bind the data synchronization service corresponding to the pedometer application and send the pedometer data to the counter application through the data synchronization service
- the first data is alarm clock setting data
- bind the data synchronization service corresponding to the alarm clock application and send the alarm clock setting data to the alarm clock application through the data synchronization service.
- the target application after processing the synchronized first data, the target application further synchronizes the processed data to the first system through a data communication service, so as to maintain the data consistency of the two systems.
- the MCU sends synchronization data (SyncData) to the MCUService provided by the second system, and the MCUService searches for the corresponding data synchronization service (findSyncDataService) according to the data type of the synchronization data. , so as to bind the synchronization data with the found data synchronization service (bindSyncDataService), wherein the MCUService uses a retry mechanism (retry) when searching for the data synchronization service.
- BinSyncDataService a retry mechanism
- the MCUService sends data to the target application processing the synchronization data through the service (SyncMcuDataService), wherein the target application and the service are bound (onBind).
- the target application After the target application processes the synchronization data, it feeds back the processed data through the MCUService. Accordingly, the MCU synchronizes the received data and feeds back a synchronization completion command to the target application. After receiving the synchronization completion instruction, the target application sends the synchronization completion instruction to the MCUService, instructing the MCUService to unbind the data synchronization service (unBindSyncDataService).
- a communication component such as a Bluetooth component
- the first system synchronizes data to the second system
- the second system receives the second data sent by the external device through the communication component
- For data first synchronize the second data with the second system through the first system, and synchronize the first data after the synchronization of the second data is completed.
- the first system receives the alarm clock data sent by the mobile phone through Bluetooth
- the first system first synchronizes the alarm clock data received by Bluetooth to the second system, and then sends the alarm clock data to the second system.
- the second system synchronizes the cached alarm clock data.
- Step 805 Send a first switching instruction to the first system through the second system, so that the first system transfers the display authority of the graphical user interface to the second system according to the first switching instruction.
- step 806 the second event is processed by the second system, and a graphical user interface corresponding to the second event is displayed.
- Step 807 Synchronize third data with the first system through the data communication service provided by the second system, where the third data is data generated in the process of processing the second event.
- the second system may generate new data in the process of processing the second event, and the newly generated data may not be consistent with the data in the first system.
- the second event is a dial setting operation
- the dial pattern before and after the dial setting operation may change. Therefore, the second system needs to synchronize the newly generated data (ie, the third data) to the first system.
- the second system synchronizes the third data with the first system through the data communication service.
- the second system synchronizes the data generated in the process of processing the second event to the first system in real time, or the second system synchronizes the generated data to the first system when the second event is processed system.
- the App in the Android system runs and receives user interaction.
- the App synchronizes the data generated during the user interaction to the MCU in real time through MCUService (ie Sync in the figure) , after the MCU receives the data synchronized by the App, it feeds back the synchronization completion command (SyncOK) to the App.
- MCUService ie Sync in the figure
- Step 808 In response to the completion of the second event processing, the second system sends a second switching instruction to the first system, so that the first system obtains the GUI display authority from the second system according to the second switching instruction.
- the second system needs to completely synchronize the third data to the first system before entering the sleep state; if all the third data are synchronized in real time complete, there is no need to perform a synchronization process.
- Step 809 Switch the second processor to a sleep state, and process the first event through the first system.
- the first system synchronizes the data generated or received in the sleep state of the second processor to the second system through the data communication service provided by the second system; the second system will run The data generated in the process is synchronized to the first system to realize the seamless connection of data before and after system switching, avoid the problem of data inconsistency before and after system switching, and ensure the consistency of data between the two systems.
- data synchronization strategies adopted by the first system are different.
- data synchronization strategies include the following four types: 1. real-time synchronization; 2. fixed-length synchronization; 3. merge synchronization; and 4. timing synchronization. The above four synchronization strategies are described below respectively.
- the synchronization is performed when the second system is awakened by an event, it may cause a problem of untimely synchronization. Therefore, in a possible implementation manner, when the cached first data contains immediate data, the first processor actively wakes up the second processor, thereby synchronizing the immediate data with the second system through the first system.
- the second processor when the second processor is in a dormant state, if the first system receives the alarm clock data synchronized with the mobile phone through Bluetooth, the first processor wakes up the second processor and synchronizes with the second system Alarm data.
- the first system when the first system synchronizes data with the second system in real time, the first system still has the display authority of the graphical user interface, that is, the wearable device still displays the graphical user interface of the first system, and the second system and the first system still have the right to display the graphical user interface. Silent sync in the background.
- the data storage space corresponding to the first processor is usually small.
- the data capacity that can be cached by the first system is small.
- the first system will store the cached data. to overwrite.
- the first processor wakes up the second processor, so that the first system sends data to the second processor.
- the second system synchronizes the first data.
- the first processor actively wakes up the second processor in a dormant state, and synchronizes the cached data to the second system .
- the first system when the first system uses the fixed-length synchronization strategy to synchronize data to the second system, the first system still has the right to display the graphical user interface, that is, the wearable device still displays the graphical user interface of the first system, and the second system still has the right to display the graphical user interface. Silent sync in the background with the first system.
- the first system preferentially merges the cached data and synchronizes it to the second system.
- the first system when the first system synchronizes the first data with the second system, the first system synchronizes target data in the first data with the second system, and the data volume of the target data is less than the data volume threshold.
- the target data may be non-immediate data.
- the target data is notification message data whose number of bytes is less than 100 or health data, etc.
- the specific type of the target data is not limited in this embodiment.
- the wearable device adopts a timing synchronization mechanism, and when the data alignment time point is reached, the second processor is switched to the wake-up state, so as to pass the first system Synchronize the first data cached in the data storage space with the second system. Moreover, after the data synchronization is completed, the second processor switches back to the sleep state, thereby reducing the power consumption of the wearable device.
- the mobile phone when the Android is in a dormant state, the mobile phone sends Bluetooth data to the RTOS through a Bluetooth connection. Since the data synchronization time point has not been reached, the RTOS caches the Bluetooth data. When the data synchronization time point is reached, Android wakes up and receives the Bluetooth data synchronized by the RTOS. After completing the data synchronization, Android will go to sleep again.
- the first system is based on The real-time requirement of the first data cached in the data storage space determines the target data alignment time point corresponding to the first data, so that when the target data alignment time point is reached, the second processor is woken up and data synchronization is performed.
- the time interval between adjacent data alignment time points is negatively correlated with the real-time demand, that is, the higher the real-time demand of the data, the shorter the time interval between the corresponding data alignment time points.
- the higher the timing synchronization frequency is, to ensure that data with high real-time requirements can be synchronized to the second system as soon as possible, and to ensure the consistency of data in the two systems.
- the time interval between adjacent data alignment time points is a fixed value, such as 1 minute, 5 minutes, etc., and the time interval between adjacent data alignment time points can also be a dynamic value.
- Time period or historical data synchronization dynamically adjust the event interval (for example, the time interval at night can be greater than the time interval during the day).
- the correspondence between different data and real-time requirements is preset in the first system.
- the first system is provided with a corresponding relationship between the data type and the real-time demand level, wherein the higher the real-time demand level is, the higher the real-time demand for synchronization of the data belonging to the data type is.
- the first system receives the update data of the function card sent by the terminal through Bluetooth at 11:01:10, and receives the dial update data sent by the terminal through Bluetooth at 11:01:45 (the user is in the terminal
- the pedometer data is updated at 11:01:55.
- the first system sequentially caches the function card update data, the dial update data and the pedometer data in the data storage space.
- the second processor is awakened, and the first system synchronizes the function card update data, dial update data and pedometer data to the second system together.
- the above four synchronization strategies can be executed individually or in combination.
- the first processor wakes up the second processor, and the first system performs a small amount of data on the data volume.
- the cached data (for example, the health data collected by the sensor) is merged, thereby synchronizing the merged cached data to the second system.
- the first processor wakes up the second processor, and the first system merges the cached data with a smaller amount of data , thereby synchronizing the merged cache data to the second system.
- the first processor wakes up the second processor, and synchronizes the real-time synchronization with the second system through the first system.
- the first system merges the cached data with a smaller amount of data, thereby synchronizing the merged cached data to the second system.
- the first processor wakes up the second processing
- the first system merges the cached data with a smaller amount of data, thereby synchronizing the merged cached data to the second system; when the alignment time point is reached, the first processor wakes up the second processor, and The cached data is synchronized to the second system through the first system.
- the wearable device can switch between three or more systems (different systems are used to run under different performance requirement scenarios), which is not limited in this embodiment.
- FIG. 12 shows a structural block diagram of a system switching apparatus provided by an embodiment of the present application.
- the apparatus can be implemented as all or a part of the wearable device through software, hardware or a combination of the two.
- the device includes:
- a first system module 1201, configured to process a first event through a first system when the second processor is in a dormant state, where the first system refers to a system run by the first processor;
- the second system module 1202 is configured to switch the second processor to a wake-up state in response to a triggered second event, and process the second event through a second system, the second system refers to the A system running on two processors, and the first processor does not satisfy the processing capability required for the second event.
- the second system module 1202 includes:
- a first instruction sending unit configured to send a first switching instruction to the first system through the second system, so that the first system transfers a graphical user interface to the second system according to the first switching instruction display rights;
- a first display unit configured to process the second event through the second system, and display a graphical user interface corresponding to the second event.
- the first system module 1201 includes:
- a data feedback unit configured to send the event data of the second event to the second system through the first system, so that the second system processes the event data to obtain event feedback data
- a second display unit configured to receive the event feedback data sent by the second system through the first system, and display a graphical user interface corresponding to the second event based on the event feedback data.
- the first system module 1201 is further configured to switch the second processor to a sleep state in response to completion of processing the second event, and process the first event through the first system .
- the second system has the right to display a graphical user interface in the process of processing the second event
- the second system module 1202 is further configured to send a second switching instruction to the first system through the second system, so that the first system can switch from the second system to the second system according to the second switching instruction. Obtains display rights for the graphical user interface.
- the device further includes:
- a cache module configured to cache first data through the first system when the second processor is in a dormant state, wherein the first data is cached in a data storage corresponding to the first system space;
- a first synchronization module configured to synchronize the first data to the second system through the first system when the second processor is in an awake state.
- the first synchronization module is used for:
- the first data is synchronized with the target application in the second system through the bound data synchronization service, where the target application is used for processing the first data.
- the first synchronization module is also used for:
- the target data in the first data is synchronized to the second system through the first system, where the data volume of the target data is less than a data volume threshold.
- the device further includes:
- a second synchronization module configured to switch the second processor to a wake-up state in response to the amount of the cached first data reaching a storage capacity threshold, and synchronize to the second system through the first system the first data.
- the device further includes:
- a third synchronization module configured to switch the second processor to a wake-up state in response to the cached first data including immediate data, and synchronize the second processor with the first system Immediate data.
- the device further includes:
- a fourth synchronization module configured to switch the second processor to a wake-up state in response to reaching a data alignment time point, and synchronize the first data to the second system through the first system.
- the fourth synchronization module is specifically used for:
- the second processor In response to reaching the target data alignment time point, the second processor is switched to an awake state.
- a communication component is mounted on the first processor
- the device also includes:
- a fourth synchronization module configured to, when the second processor is in an awake state, in response to receiving the second data sent by the external device through the communication component, send the data to the second system through the first system
- the second data is synchronized.
- the device further includes:
- a fifth synchronization module configured to synchronize third data to the first system through a data communication service provided by the second system, where the third data is data generated during processing of the second event.
- the device further includes:
- a wake-up hold module configured to keep the second processor in an awake state within a sleep delay period corresponding to the second event in response to the second event being processed, and the sleep delay period is based on the second event Afterwards, the wake-up frequency of the second processor is determined, and/or the sleep delay duration is determined based on the event type of the second event;
- the first system module 1201 is further configured to, in response to reaching the sleep delay duration, switch the second processor to a sleep state, and process the first event through the first system.
- the wearable device is provided with a first processor with low power consumption and a second processor with high power consumption, and the first processor runs the first system, and the second processor runs the first system.
- the processor runs the second system, and by introducing a system switching mechanism, the first system processes the first event with low processing capacity requirements, and keeps the second processor in a dormant state;
- the second processor is woken up and the second system is switched to process the second event to ensure timely processing of the event; the solution provided by the embodiment of the present application can ensure the performance of the wearable device while reducing the wearable The power consumption of the wearable device is reduced, thereby improving the battery life of the wearable device.
- the wearable device when the second event processing is completed, switches the second processor back to the sleep state again, and switches the first system to perform event processing, so that the wearable device is in a low-power state in most scenarios. Consumption state, further improve the battery life of wearable devices.
- the second processor by setting the sleep delay time, when the second event is processed and the sleep delay time is reached, the second processor is switched to the sleep state again, so as to prevent the second processor from being woken up frequently.
- the second processor when an event that cannot be processed by the first processor is triggered, the second processor is awakened, and the second system notifies the first system to perform system switching, so as to obtain the display authority of the graphical user interface and ensure that the second system During the event processing, the normal display of the user interface of the second event; at the same time, when the second system is switched back to the first system, the first system obtains the display authority of the graphical user interface from the second system again to ensure that the user of the first event
- the normal display of the interface enables seamless switching between the dual systems.
- the second processor when a second event that cannot be processed by the first processor is triggered, the second processor is woken up, and the second system performs silent processing on the second event, and the processed event feedback data is sent to the first processor.
- the system enables the first system to display the second event on a graphical user interface according to the event feedback data, and realizes the timely processing of performance events without switching the graphical user interface display authority, thereby reducing the implementation complexity of system switching.
- the first system synchronizes the data generated or received in the sleep state of the second processor to the second system through the data communication service provided by the second system; the second system will run The data generated in the process is synchronized to the first system to realize the seamless connection of data before and after system switching, avoid the problem of data inconsistency before and after system switching, and ensure the consistency of data between the two systems.
- the data can be synchronized to the second system in a timely and accurate manner, data loss is avoided, and data consistency between the two systems is further ensured. Improves the stability of the dual system switching process.
- FIG. 13 shows a structural block diagram of a wearable device provided by an exemplary embodiment of the present application.
- a wearable device in this application may include one or more of the following components: a processor 1310 and a memory 1320.
- the processor 1310 includes at least a first processor 1311 and a second processor 1312, wherein the first processor 1311 is used to run the first system, the second processor 1312 is used to run the second system, and the first processor 1311 is used to run the second system.
- the power consumption is lower than the power consumption of the second processor 1312
- the performance of the first processor 1311 is lower than that of the second processor 1312 .
- the processor 1310 uses various interfaces and lines to connect various parts of the entire electronic device, and executes the electronic device by running or executing the instructions, programs, code sets or instruction sets stored in the memory 1320, and calling the data stored in the memory 1320. Various functions of the device and processing data.
- the processor 1310 may employ at least one of digital signal processing (Digital Signal Processing, DSP), field-programmable gate array (Field-Programmable Gate Array, FPGA), and programmable logic array (Programmable Logic Array, PLA).
- DSP Digital Signal Processing
- FPGA Field-Programmable Gate Array
- PLA programmable logic array
- the processor 1310 may integrate one or more of a central processing unit (Central Processing Unit, CPU), a graphics processor (Graphics Processing Unit, GPU), a neural network processor (Neural-network Processing Unit, NPU), and a modem, etc. The combination.
- the CPU mainly handles the operating system, user interface, and applications; the GPU is used to render and draw the content that needs to be displayed on the touch screen; the NPU is used to implement artificial intelligence (AI) functions; the modem is used to process Wireless communication. It can be understood that, the above-mentioned modem may not be integrated into the processor 1310, but is implemented by a single chip.
- the memory 1320 may include random access memory (Random Access Memory, RAM), or may include read-only memory (Read-Only Memory, ROM).
- the memory 1320 includes a non-transitory computer-readable storage medium.
- Memory 1320 may be used to store instructions, programs, codes, sets of codes, or sets of instructions.
- the memory 1320 may include a stored program area and a stored data area, wherein the stored program area may store instructions for implementing an operating system, instructions for at least one function (such as a touch function, a sound playback function, an image playback function, etc.), Instructions and the like for implementing the following various method embodiments; the storage data area may store data (such as audio data, phone book) and the like created according to the use of the wearable device.
- the wearable device in this embodiment of the present application further includes a communication component 1330 and a display component 1340 .
- the communication component 1330 may be a Bluetooth component, a WiFi (Wireless Fidelity, wireless broadband) component, an NFC (Near Field Communication, near field communication) component, etc., for communicating with an external device (server or other terminal device) through a wired or wireless network ;
- the display component 1340 is used for displaying a graphical user interface, and/or receiving user interaction operations.
- the structure of the wearable device shown in the above drawings does not constitute a limitation on the wearable device, and the wearable device may include more or less than shown in the figure. components, or a combination of certain components, or a different arrangement of components.
- the wearable device also includes components such as a radio frequency circuit, an input unit, a sensor, an audio circuit, a speaker, a microphone, and a power supply, which will not be repeated here.
- the embodiments of the present application further provide a computer-readable storage medium, where the storage medium stores at least one instruction, and the at least one instruction is used to be executed by a processor to implement the system switching method described in the foregoing embodiments.
- Embodiments of the present application provide a computer program product or computer program, where the computer program product or computer program includes computer instructions, and the computer instructions are stored in a computer-readable storage medium.
- the processor of the computer device reads the computer instruction from the computer-readable storage medium, and the processor executes the computer instruction, so that the computer device executes the system switching method provided in the foregoing embodiment.
- Computer-readable media includes both computer storage media and communication media including any medium that facilitates transfer of a computer program from one place to another.
- a storage medium can be any available medium that can be accessed by a general purpose or special purpose computer.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Human Computer Interaction (AREA)
- Power Sources (AREA)
- Telephone Function (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
一种系统切换方法、装置、设备及存储介质,属于可穿戴式设备领域。该方法包括:在第二处理器处于休眠状态的情况下,通过第一系统处理第一事件,第一系统指由第一处理器运行的系统(301);响应于触发的第二事件,将第二处理器切换为唤醒状态,并通过第二系统处理第二事件,第二系统指由第二处理器运行的系统,且第一处理器不满足第二事件所需的处理能力(302)。所述方法通过引入系统切换机制,在保证可穿戴式设备性能的同时,降低可穿戴式设备的功耗,提高可穿戴式设备的续航时间。
Description
本申请实施例要求于2020年12月18日提交,申请号为202011506224.1、发明名称为“系统切换方法、装置、设备及存储介质”的中国专利申请,以及于2021年04月15日提交,申请号为202110406970.1、发明名称为“系统切换方法、装置、设备及存储介质”的中国专利申请优先权,其全部内容通过引用结合在本申请实施例中。
本申请实施例涉及可穿戴式设备领域,特别涉及一种系统切换方法、装置、设备及存储介质。
可穿戴式设备是一种可以直接穿戴或者整合在衣服或配件上的便携式电子设备,常见的可穿戴式设备包括智能手表、智能手环、智能眼镜等等。
出于便携性和可穿戴性的考虑,可穿戴式设备通常被设计成较小的尺寸,而较小的尺寸意味着可穿戴式设备只能配置容量较小的电池,进而导致可穿戴式设备的续航时间较短,相应的,用户需要对可穿戴式设备进行频繁充电。
发明内容
本申请实施例提供了一种系统切换方法、装置、设备及存储介质。所述技术方案如下:
一方面,本申请实施例提供了一种系统切换方法,所述方法用于可穿戴式设备,所述可穿戴式设备中至少设置有第一处理器和第二处理器,所述第二处理器的功耗高于所述第一处理器的功耗;
所述方法包括:
在所述第二处理器处于休眠状态的情况下,通过第一系统处理第一事件,所述第一系统指由所述第一处理器运行的系统;
响应于触发的第二事件,将所述第二处理器切换为唤醒状态,并通过第二系统处理所述第二事件,所述第二系统指由所述第二处理器运行的系统,且所述第一处理器不满足所述第二事件所需的处理能力。
另一方面,本申请实施例提供了一种系统切换装置,所述装置用于可穿戴式设备,所述可穿戴式设备中至少设置有第一处理器和第二处理器,所述第二处理器的功耗高于所述第一处理器的功耗;
所述装置包括:
第一系统模块,用于在所述第二处理器处于休眠状态的情况下,通过第一系统处理第一事件,所述第一系统指由所述第一处理器运行的系统;
第二系统模块,用于响应于触发的第二事件,将所述第二处理器切换为唤醒状态,并通过第二系统处理所述第二事件,所述第二系统指由所述第二处理器运行的系统,且所述第一处理器不满足所述第二事件所需的处理能力。
另一方面,本申请实施例提供了一种可穿戴式设备,所述可穿戴式设备包括处理器和存储器;所述处理器至少包括第一处理器和第二处理器,所述第二处理器的功耗高于所述第一处理器的功耗,所述存储器存储有至少一条指令,所述至少一条指令用于被所述处理器执行以实现上述方面所述的系统切换方法。
另一方面,本申请实施例提供了一种计算机可读存储介质,所述存储介质存储有至少一条指令,所述至少一条指令用于被处理器执行以实现如上述方面所述的系统切换方法。
另一方面,本申请实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述方面提供的系统切换方法。
图1是本申请一个示例性实施例示出的第二处理器对应双核通信软件框架的示意图;
图2是本申请一个示例性实施例示出的第一处理器对应双核通信软件框架的示意图;
图3示出了本申请一个示例性实施例提供的系统切换方法的流程图;
图4是本申请一个示例性实施例示出的智能手表中系统过程的界面示意图;
图5示出了本申请另一个示例性实施例提供的系统切换方法的流程图;
图6是本申请一个示例性实施例示出的系统切换过程的时序图;
图7示出了本申请另一个示例性实施例提供的系统切换方法的流程图;
图8示出了本申请另一个示例性实施例提供的系统切换方法的流程图;
图9是本申请一个示例性实施例示出的系统间数据同步过程的时序图;
图10是本申请另一个示例性实施例示出的系统间数据同步过程的时序图;
图11是本申请一个示例性实施例示出的定时同步过程的时序图;
图12示出了本申请另一个实施例提供的系统切换装置的结构框图;
图13示出了本申请一个示例性实施例提供的可穿戴式设备的结构方框图。
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
相关技术中,可穿戴式设备中设置有单一处理器,并通过运行在处理器上的操作系统,对设备运行过程中产生的所有系统事件进行处理,因此该处理器需要具备较强的数据处理能力,并在设备运行过程中保持工作状态。然而,在日常使用过程中,可穿戴式设备在大多数情况下只需要实现一些对处理性能要求较低的功能,比如,对于智能手表或智能手环来说,大多数情况下,智能手表或智能手环只需要进行时间显示和消息提示。因此,长时间保持处理器处于工作状态并不会提高可穿戴式设备的性能,反而会增加设备功耗,导致可穿戴式设备的续航时间较短。
为了保证可穿戴式设备性能的同时,降低可穿戴式设备的功耗,本申请实施例中,可穿戴式设备至少设置具有不同处理性能以及功耗的第一处理器和第二处理器,分别用于运行第一系统和第二系统(即双核双系统),并为双核双系统设计了一套系统切换机制。
可穿戴式设备运行过程中,通过运行在低功耗处理器上的第一系统,对低性能处理需求的事件进行处理,并保持高功耗处理器处于休眠状态(相应的,由高功耗处理器运行的第二系统处于休眠状态),在实现可穿戴式设备基础功能的同时,降低可穿戴式设备的功耗;当存在高性能处理需求的事件时,通过唤醒高功耗处理器,并切换第二系统对事件进行处理,保证触发的事件能够被及时响应并处理,满足可穿戴式设备的性能需求。采用本申请实施例提供的方案,可穿戴式设备根据所触发事件对处理能力的需求,以及不同处理器的处理能力,自动进行系统间切换,在保证可穿戴式设备性能的前提下,降低了可穿戴式设备的功耗。
本申请实施例中,由于第一处理器和第二处理器异步工作,因此为了保证不同系统中数据的一致性,第一系统和第二系统需要实现系统通信(或称为双核通信)。在一种可能的应用场景下,第一系统为运行在微控制单元(MicroController Unit,MCU)上的实时操作系统(Real Time Operating System,RTOS),且第二系统为运行在中央处理器(Central Processing Unit,CPU)上的安卓(Android)操作系统。
如图1所示,其示出了本申请一个示例性实施例示出的安卓操作系统的双核通信软件框架。该双核通信软件框架遵循“低耦合,高可靠,高复用”的设计原则,包括Kernel(内核)、HIDL(硬件抽象层接口描述语言)、Native Service(本地服务)、Framework Service(框架服务)、Framework API(框架接口)和APP(应用)部分的模块开发。
其中,APP模块包括Launcher(桌面启动器)、Setting(设置)和SystemUI(系统用户界面)等功能模块;Framework API模块中包括MCUManager(MCU管理)、SensorManager(传感器管理)、LocationManager(位置管理)等管理模块,Framework Service模块中包括MCUManagerService(MCU管理服务)、SystemSensorManager(系统传感器管理)、LocationManagerService(位置管理服务)等服务模块,Native Service模块包括dccservice(dcc服务)、Sensorservice(传感器服务)等服务模块,HIDL模块包括Sensor HAL(传感器硬件抽象层)、GPS HAL(全球定位系统硬件抽象层)等模块。Kernel模块包括dcc_datah、dcc_data、Mcu_sensor、Mcu_gps、Mcu_factory等DCC Transfer Driver(DCC传输驱动)。
传输层作为双核通信软件框架中衔接上下层的接口层,向应用层屏蔽系统下层(数据链路层)通信的传输细节,为应用场景提供服务通道;应用层作为服务提供的主体,响应于人机交互并通过传输层对人机交互过程中产生的数据进行传输,以及对外部数据请求进行响应。
RTOS采用对等原则进行设计。以可穿戴式设备为智能手表为例,如图2所示,其示出了本申请一个 示例性实施例示出的RTOS的双核通信软件框架。
RTOS的双核通信软件框架分为应用层(Application Layer)、服务层(Service Layer)、框架层(Framework Layer)、硬件抽象层(Hardware abstraction layer)和平台层(PlatformLayer)。
其中,应用层包括watchface(表盘)、Daily Tracker(日常追踪)、Message center(消息中心)、Voice around Apps(声音应用)、Health Apps(健康应用)、Settings(设置)等应用模块;服务层包括Sport&health task(运动健康任务)、System managertask(系统管理任务)、AMS(活动管理服务)、AudioService(音频服务)、Log Service(日志服务)、OFTP Service(Odette文件传输协议服务)、BT Service(蓝牙服务)、Delegate Service(转交服务)、RPC Service(远程调用服务)、sensor Service(传感器服务)、storage Service(存储服务)等服务模块;框架层包括Message Pub(消息中心)、UI Framework(用户界面框架)、G2D Engine(G2D殷勤)、Audio Middleware(音频中间件)、Preference(偏好)、File system(文件系统)、Algorithms(算法)、Aios、AsycEvent(进程内异步事件)等框架模块;硬件抽象层包括Screen/TP(屏幕/触控屏)、Audio(音频)、GPS(全球定位系统)、sensors(传感器)、Keypad(键盘)、Motor(马达)等硬件抽象模块;平台层包括板级支持包(Board Support Package,BSP)以及低等级驱动(LOW level Driver),其中,BSP包括Screen/TP、Keys(按键)、GPS、Codec(编码译码器)、sensors、Flash(闪存)、Motor、PSRAM(伪静态随机存储器)等等,低等级驱动包括Uart(通用异步收发传输器)、ADC(模数转换器)、GPIO(通用输入输出)、SPI(串行外设接口)、I2C(集成电路总线)、IOS(输入输出系统)、PCM(脉冲编码调制)、I2S(集成音频总线)、HWTimer(硬件定时器)。
需要说明的是,上述双核通信软件框架仅用于示意性说明,本领域技术人员还可以根据实际需求,对上述框架进行增加、删除或修改,本申请实施例并不对双核通信软件框架的具体结构构成限定。
本申请实施例提供的系统切换方法,该方法用于可穿戴式设备,可穿戴式设备中至少设置有第一处理器和第二处理器,第二处理器的功耗高于第一处理器的功耗,该方法包括:
在第二处理器处于休眠状态的情况下,通过第一系统处理第一事件,第一系统指由第一处理器运行的系统;
响应于触发的第二事件,将第二处理器切换为唤醒状态,并通过第二系统处理所述第二事件,第二系统指由第二处理器运行的系统,且第一处理器不满足第二事件所需的处理能力。
可选的,通过第二系统处理第二事件,包括:
通过第二系统向第一系统发送第一切换指令,以使得第一系统根据第一切换指令向第二系统转移图形用户界面的展示权限;
通过第二系统处理第二事件,并展示第二事件对应的图形用户界面。
可选的,通过第二系统处理第二事件,包括:
通过第一系统向第二系统发送第二事件的事件数据,以使得第二系统对事件数据进行处理得到事件反馈数据;
通过第一系统接收第二系统发送的事件反馈数据,并基于事件反馈数据展示第二事件对应的图形用户界面。
可选的,通过第二系统处理第二事件之后,方法还包括:
响应于第二事件处理完成,将第二处理器切换为休眠状态,并通过第一系统处理第一事件。
可选的,第二系统处理第二事件的过程中具有图形用户界面的展示权限;
将第二处理器切换为休眠状态之前,方法还包括:
通过第二系统向第一系统发送第二切换指令,以使得第一系统根据第二切换指令从第二系统处获取图形用户界面的展示权限。
可选的,方法还包括:
在第二处理器处于休眠状态的情况下,通过第一系统对第一数据进行缓存,其中,第一数据缓存在第一系统对应的数据存储空间;
将第二处理器切换为唤醒状态之后,方法还包括:
在第二处理器处于唤醒状态的情况下,通过第一系统向第二系统同步第一数据。
可选的,通过第一系统向第二系统同步第一数据,包括:
基于第一数据的数据类型,通过第二系统提供的数据通信服务绑定数据同步服务,其中,不同数据类型对应不同数据同步服务;
通过绑定的数据同步服务向第二系统中的目标应用同步第一数据,目标应用用于处理第一数据。
可选的,通过第一系统向第二系统同步第一数据,还包括:
通过第一系统向第二系统同步第一数据中的目标数据,目标数据的数据量小于数据量阈值。
可选的,通过第一系统对第一数据进行缓存之后,方法还包括:
响应于缓存的第一数据的数据量达到存储容量阈值,将第二处理器切换为唤醒状态,并通过第一系统向第二系统同步第一数据。
可选的,通过第一系统对第一数据进行缓存之后,方法还包括:
响应于缓存的第一数据中包含即时性数据,将第二处理器切换为唤醒状态,并通过第一系统向第二系统同步即时性数据。
可选的,通过第一系统对第一数据进行缓存之后,方法还包括:
响应于达到数据对齐时间点,将第二处理器切换为唤醒状态,并通过第一系统向第二系统同步第一数据。
可选的,响应于达到数据对齐时间点,将第二处理器切换为唤醒状态,包括:
基于第一数据的实时性需求,确定第一数据对应的目标数据对齐时间点,其中,不同实时性需求的数据对应不同的数据对齐时间点,且数据对齐时间点之间的时间间隔与实时性需求呈负相关关系;
响应于达到目标数据对齐时间点,将第二处理器切换为唤醒状态。
可选的,第一处理器上挂载有通信组件;
通过第一系统向第二系统同步第一数据之前,方法还包括:
在第二处理器处于唤醒状态的情况下,响应于通过通信组件接收到外部设备发送的第二数据,通过第一系统向第二系统同步第二数据。
可选的,通过第二系统处理第二事件之后,方法还包括:
通过第二系统提供的数据通信服务向第一系统同步第三数据,第三数据为处理第二事件过程中产生的数据。
可选的,通过第二系统处理第二事件之后,方法还包括:
响应于第二事件处理完成,在第二事件对应的休眠延迟时长内保持第二处理器处于唤醒状态,休眠延迟时长基于第二事件后第二处理器的唤醒频率确定,和/或,休眠延迟时长基于第二事件的事件类型确定;
响应于达到休眠延迟时长,将第二处理器切换为休眠状态,并通过第一系统处理第一事件。
请参考图3,其示出了本申请一个示例性实施例提供的系统切换方法的流程图,本实施例以该方法应用可穿戴式设备为例进行说明,该方法可以包括如下步骤。
步骤301,在第二处理器处于休眠状态的情况下,通过第一系统处理第一事件,第一系统指由第一处理器运行的系统。
本申请实施例中,第一处理器的处理性能低于第二处理器的处理性能(第一处理器的处理能力和处理速度均低于第二处理器),且第一处理器的功耗低于第二处理器的功耗。相应的,第二系统能够处理第一系统所处理的事件,而第一系统并不一定能够处理第二系统所处理的事件。
比如,第一处理器为MCU,第二处理器为CPU,第一系统为RTOS,第二系统为安卓系统。
在一些实施例中,可穿戴式设备的工作模式包括性能模式、混动模式和低功耗模式,其中,性能模式下,第二处理器和第一处理器均保持唤醒状态;低功耗模式下,仅第一处理器保持工作状态,而第二处理器保持关闭状态;混动模式下,在通过第一系统处理第一事件时,第二处理器保持休眠状态。
在一种可能的实施方式中,第一系统用于处理第一事件,而第二系统则用于处理第二事件,其中,第一事件所需的处理能力低于第二事件所需的处理能力。
在另一种可能的实施方式,第一事件和第二事件可以按照应用场景进行划分。比如,弱交互场景(即人机交互频率较低的场景,对处理性能需求较低)下的事件为第一事件,而强交互场景(即人机交互频繁的场景,对处理性能需求较高)下的事件为第二事件。
以可穿戴式设备为智能手表为例,该第一事件可以包括表盘显示、表盘界面切换、通知消息显示等事件,第二事件可以包括来电接听、启动应用、表盘编辑、功能设置等事件。本申请实施例并不对事件的具体类型以及划分方式进行限定。
不同于智能手机一类具有强交互属性的电子设备,可穿戴式设备作为一种辅助性的电子设备,在绝大多数使用场景下与用户之间仅存在弱交互。比如,用户在大部分场景下仅通过智能手表进行抬腕看时。因此,可穿戴式设备通过第一系统对第一事件进行处理时,控制第二处理器处于休眠状态(第二系统处于休眠状态),从而降低可穿戴式设备的整体功耗。
步骤302,响应于触发的第二事件,将第二处理器切换为唤醒状态,并通过第二系统处理第二事件,第二系统指由第二处理器运行的系统,且第一处理器不满足第二事件所需的处理能力。
由于第一系统的处理能力有限,无法处理所有事件,因此为了确保高处理能力需求的事件能够得到及时处理,本申请实施例中,当触发超出第一处理器处理能力的第二事件时,可穿戴式设备将第二处理器由 休眠状态切换为唤醒状态,并将处理事件的系统由第一系统切换为第二系统,从而通过第二系统对第二事件进行处理。
其中,第一处理器不满足第二事件所需的处理能力可以理解为:第一处理器无法处理第二事件,或,第一处理器能够处理第二事件,但是处理效果(比如处理速度)无法达到第二事件的处理效果要求。
本申请实施例中,当处理器处于休眠状态时,由该处理器运行的系统处于休眠状态,当处理器由休眠状态切换为唤醒状态时,由该处理器运行的系统也相应切换为唤醒状态。
在一种可能的实施方式中,第一系统运行过程中对触发的事件进行识别,若触发的事件属于第二事件,则唤醒第二系统,否则,第二系统继续保持休眠状态。可选的,第一系统存储有包含各种第二事件的事件列表,第一系统即基于该事件列表确定触发的事件是否属于第二事件。
在一些实施例中,第一处理器采用向第二处理器发送中断的方式,唤醒第二处理器,从而唤醒第二系统进行事件处理。
可选的,第二处理器处于唤醒状态时,第一处理器处于唤醒状态,避免第一处理器频繁休眠唤醒,或者,第一处理器由唤醒状态切换为休眠状态,以此进一步降低设备功耗。
综上所述,本申请实施例中,可穿戴式设备中设置有低功耗的第一处理器和高功耗的第二处理器,且由第一处理器运行第一系统,由第二处理器运行第二系统,通过引入系统切换机制,由第一系统对处理能力需求较低的第一事件进行处理,并保持第二处理器处理休眠状态;当触发超出第一处理器处理能力的第二事件时,通过唤醒第二处理器,并切换第二系统处理第二事件,确保事件的及时处理;采用本申请实施例提供的方案,在保证可穿戴式设备性能的同时,降低可穿戴式设备的功耗,进而提高了可穿戴式设备的续航时间。
需要说明的是,在本申请实施例中的多处理器架构下,由于可穿戴式设备中第一处理器在绝大多数时间处于工作状态,而第二处理器在绝大多数时间处于休眠状态(因为在绝大多数时间只需要通过第一处理器处理一些简单事件),即第一处理器在绝大多数时间作为可穿戴式设备的主处理器,第二处理器在绝大多数时间作为从处理器,因此确定是否进行处理器唤醒以及操作系统切换的逻辑由第一处理器(第一系统)执行,可穿戴式设备中无需额外设置管理器对不同处理器处理的事件进行监控测评,且无需额外设置切换器在不同处理器之间进行切换,有助于降低可穿戴式设备中系统架构的复杂度。
为了进一步降低设备功耗,第二系统完成第二事件处理后,第二处理器重新切换回休眠状态,并继续通过第一系统处理第一事件,使可穿戴式设备在少部分场景下保持高性能(但是高功耗),而在大多数场景下保持低功耗(但低性能)。在一种可能的实施方式中,上述步骤302之后还包括如下步骤。
步骤303,响应于第二事件处理完成,将第二处理器切换为休眠状态,并通过第一系统处理第一事件。
为了使可穿戴式设备在大多数场景下处于低功耗状态,当第二事件处理完成时,可穿戴式设备重新控制第二处理器进入休眠状态,并重新将处理事件的系统由第二系统切换为第一系统,以便第一系统继续对第一事件进行处理。
可选的,第一处理器在第二系统处理第二事件过程中处于休眠状态,当第二事件处理完成时,第一处理器由休眠状态切换为唤醒状态。其中,第二处理器可以通过向第一处理器发送中断的方式唤醒第一处理器。
通过上述双核双系统的切换机制,可穿戴式设备可以根据不同应用场景下对处理能力的需求,在第一系统和第二系统之间进行自动切换,在延长续航的同时能够实现丰富的应用功能。
以可穿戴式设备为智能手表为例,在一个示意性的应用场景下,智能手表中设置有RTOS和安卓系统,RTOS负责实现传感器数据处理以及表盘显示,安卓系统则负责实现应用功能。如图4所示,通过RTOS显示表盘41,安卓系统处于休眠状态,从而保持较低的功耗。当用户需要通过可穿戴式设备进行刷码支付时,可以通过物理按键启动刷码应用,相应的,当智能手表检测到刷码应用启动事件时,安卓系统被唤醒,并切换使用安卓系统启动刷码应用,从而在刷码界面42中显示支付二维码。当完成支付并退回至表盘时,安卓系统进入休眠状态,并由安卓系统切换为RTOS继续显示表盘41。
本申请实施例中,第二事件处理完成时,可穿戴式设备重新将第二处理器切换回休眠状态,并切换第一系统进行事件处理,使可穿戴式设备在大多数场景下处于低功耗状态,进一步提高可穿戴式设备的续航时间。
在实际应用中发现,切换使用第二系统对第二事件进行处理后,用户往往会对可穿戴式设备进行与第二事件相关的操作。若在第二事件处理完成后,立即将第二处理器切换回休眠状态,则会出现第二处理器短时间内又被重新唤醒,导致第二处理器的频繁切换。
为了避免不必要的处理器唤醒休眠状态切换,在一种可能的实施方式中,响应于第二事件处理完成, 可穿戴式设备在第二事件对应的休眠延迟时长内保持第二处理器处于唤醒状态,并在达到休眠延迟时长时,将第二处理器切换为休眠状态,并通过第一系统处理所述第一事件。
其中,休眠延迟时长基于第二事件后第二处理器的唤醒频率确定,和/或,休眠延迟时长基于第二事件的事件类型确定。
可选的,第二处理器每次被第二事件唤醒后,第二系统对第二事件后预设时长内的唤醒频率进行记录(可以通过记录每次的唤醒时刻来确定唤醒频率),从而根据该唤醒频率确定第二处理器的休眠延迟时长,其中,该休眠延迟时长与唤醒频率呈正相关关系,且休眠延迟时长具有时长上限。比如,该休眠延迟时长的时长范围为15秒至2分钟。
可选的,第二系统还可以根据第二事件的事件类型,确定休眠延迟时长,其中,事件类型与休眠延迟时长之间的对应关系可以默认设置,也可以根据用户的历史使用记录(可以根据不同类型第二事件触发后用户的操作频率确定)事件类型与休眠延迟时长之间的对应关系。比如,当第二事件为闹钟事件时,该休眠延迟时长为10秒(用户在关闭闹钟后通常不会执行后续操作),当第二事件为通知消息事件时,该休眠延迟时长为30s(用户通常会在查看通知消息后执行一系列后续操作)。
本实施例中,通过设置休眠延迟时长,从而在第二事件处理完毕,且达到该休眠延迟时长时,将第二处理器重新切换为休眠状态,避免第二处理器被频繁唤醒。
在一种可能的实施方式中,由于第一处理器在可穿戴式设备运行过程中均处于唤醒状态,因此由第一系统对事件进行监测(第一系统是否能够处理触发的事件),并基于监测结果唤醒第二处理器;并且,在进行系统切换的同时,系统需要对图形用户界面(Graphical User Interface,GUI)的展示权限进行切换,从而保证系统切换后用户界面的正确显示,下面采用示意性的实施例进行说明。
请参考图5,其示出了本申请另一个示例性实施例提供的系统切换方法的流程图,本实施例以该方法应用可穿戴式设备为例进行说明,该方法可以包括如下步骤。
步骤501,在第二处理器处于休眠状态的情况下,通过第一系统处理第一事件。
本步骤的实施方式可以参考上述步骤301,本实施例在此不再赘述。
在一种可能的实施方式中,可穿戴式设备开机时,第二处理器在启动过程中拉起第一处理器,由第二处理器在启动完成(即第二系统启动完成)后通知第一处理器。第二处理器启动完成后(即第二系统启动完成),向第一处理器发送通知消息并进入休眠状态,第一处理器即根据该通知消息获取图形用户界面的展示权限,进行用户界面展示(展示第一事件的图形用户界面)。
示意性的,如图6所示,开机过程中,CPU通过复位信号(resetpin)拉起MCU,MCU在RTOS启动完成后通知CPU。安卓系统启动完成后,CPU向MCU送启动完成通知,由MCU向preftask发送混动模式进入请求(MSG_ENTER_HYBRID_MODE_REQ)。preftask接收到请求后,通过调用enter_hybrid_mode_api()进入混动模式,并指示GUI task将显示屏权限转交给第一系统(give lcd semaphore)。MCU接收到preftask反馈的混动模式进入应答(MSG_HYBRID_MODE_RSP)后,即进行表盘展示。
步骤502,响应于触发的第二事件,通过第一处理器唤醒第二处理器。
可选的,触发系统切换和处理器唤醒的第二事件可以预先由开发人员设置在第一系统中。第一系统运行过程中,当接收到触发的事件时,即检测该事件是否属于第二事件,若属于,则确定需要进行系统切换,并通过第一处理器唤醒第二处理器;若不属于,则确定第一处理器能够处理该事件,并保持第二处理器处于休眠状态。
在一种可能的实施方式中,当接收到触发的第二事件时,第一处理器通过向第二处理器发送中断,唤醒处于休眠状态的第二处理器。
在一些实施例中,该第二事件是指定用户操作触发的事件。比如,当可穿戴式设备为智能手表时,该指定用户操作包括进入应用列表操作(通过点击案件进入应用列表)、启动功能卡片操作(点击功能卡片启用相应功能)、表盘编辑操作、表盘窗口组件启动操作、快捷应用启动操作(通过物理按键触发)、通知打开应用操作(通过点击应用通知打开相应应用)、状态栏进入设置操作(通过状态栏进入设置界面)等等。
在另一些实施例中,该第二事件是由应用触发的事件。比如,当可穿戴式设备为智能手表时,第二事件可以是通话应用(来电提醒)、计时器应用(计时器提示)或闹钟应用(闹钟提醒)触发的事件。本申请实施例并不对第二事件的具体触发方式以及类型进行限定。
步骤503,通过第二系统向第一系统发送第一切换指令,以使得第一系统根据第一切换指令向第二系统转移图形用户界面的展示权限。
当第二处理器处于休眠状态时,由于图形用户界面的展示权限属于第一系统(即可穿戴式设备显示第一系统所处理第一事件的图形用户界面),而在处理第二事件过程中,可穿戴式设备则需要展示第二事件 的图形用户界面,因此处于唤醒状态的第二系统通过向第一系统发送第一切换指令,指示第一系统将图形用户界面的展示权限转移至第二系统。
示意性的,如图6所示,当接收到用户触发的进入应用列表、启动功能卡片、编辑表盘、表盘窗口组件启动、按键快捷启动应用、通知打开应用以及状态栏进入设置等操作时,CPU及安卓系统被唤醒,CPU向MCU发送切换为安卓系统的通知。MCU接收到切换通知后,向preftask发送混动模式退出请求(MSG_EXIT_HYBRID_MODE_REQ)。preftask接收到请求后,通过调用exit_hybrid_mode_api()退出混动模式,并指示GUI task将显示屏权限转交给安卓系统(takelcd semaphore)。MCU接收到preftask反馈的混动模式退出应答(MSG_HYBRID_MODE_RSP)后,即退出表盘展示,由CPU控制显示屏对进行用户界面显示。
类似的,当接收到通话应用触发的来电提醒、计时器应用触发的计时器提示或闹钟应用触发的闹钟提醒时,MCU唤醒CPU进行事件处理。
步骤504,通过第二系统处理第二事件,并展示第二事件对应的图形用户界面。
由于图形用户界面的展示权限已经转移至第二系统,因此第二系统在处理第二事件的过程中,能够通过可穿戴式设备的显示屏进行用户界面展示,并进一步在用户交互下完成第二事件。
在一个示意性的例子中,智能手表当前通过RTOS进行表盘显示,当接收到触发的闹钟提醒事件时,智能手表停止使用显示表盘,唤醒并切换至安卓系统,从而显示闹钟应用界面,以便用户在闹钟应用界面中进行闹钟关闭操作。
步骤505,响应于第二事件处理完成,通过第二系统向第一系统发送第二切换指令,以使得第一系统根据第二切换指令从第二系统处获取图形用户界面的展示权限。
在一种可能的实施方式中,第二事件处理完成后,若接收到触发的第一事件,第二处理器进入休眠状态,并重新切换至第一系统;或者,当第二事件处理完成,且在预设时长内未接收到触发的其他第二事件,第二处理器进入休眠状态,并重新切换至第一系统。
比如,当闹钟提醒事件处理完毕,且接收到返回表盘操作时,智能手表中运行的安卓系统重新进入休眠状态,并重新切换至RTOS进行表盘显示。
由于处理第二事件过程中,图形用户界面的展示权限属于第二系统,因此当重新由第二系统切换至第一系统时,第二系统需要将图形用户界面的展示权限重新转移给第一系统,以便第一系统进行用户界面展示。
在一些实施例中,第二处理器切换为休眠状态前,第二系统向第一系统发送第二切换指令,第一系统即根据该第二切换指令重新获取图形用户界面的展示权限。
示意性的,如图6所示,安卓系统处理完毕事件,并接收到返回表盘操作时,CPU向MCU发送切换通知,并进入休眠状态,MCU即根据该切换通知重新获取显示屏权限,并进行表盘显示。
步骤506,将第二处理器切换为休眠状态,并通过第一系统处理第一事件。
进一步的,可穿戴式设备继续通过第一系统处理第一事件,并对第一事件的图形用户界面进行展示。当再次接收到触发的第二事件时,可穿戴式设备即循环执行上述步骤502至505。
在一些实施例中,上述系统切换过程在可穿戴式设备的电量高于阈值时执行,为了保证可穿戴式设备能够实现最基本功能,比如智能手表的时间显示功能,当可穿戴式设备的电量低于阈值时,可穿戴式设备中的第二处理器关闭,并向第一处理器发送模式切换指令,第一处理器接收到该模式切换指令后,即切换至低功耗模式。其中,低功耗模式下,第一系统停止对触发的第二事件进行处理。
示意性的,如图6所示,当智能手表的剩余电量低于5%时,CPU向MCU发送进入低功耗模式的模式切换指令并关闭,MCU接收到模式切换指令后,即进入低功耗模式。
本实施例中,当触发第一处理器无法处理的事件时,通过唤醒第二处理器,并由第二系统通知第一系统进行系统切换,从而获取图形用户界面的展示权限,确保第二系统处理事件过程中,第二事件用户界面的正常显示;同时,重新由第二系统切换回第一系统时,第一系统重新从第二系统处获取图形用户界面的展示权限,确保第一事件用户界面的正常显示,实现双系统之间的无缝切换。
图5所示实施例中,第一系统和第二系统间进行切换时,需要进行图形用户界面展示权限的切换。在另一种可能的实施方式中,当触发第一处理器无法处理的第二事件时,可穿戴式设备通过第二系统对第二事件进行处理,并由第二系统将处理第二事件得到的数据反馈至第一系统,由第一系统根据该数据进行图形用户界面展示,即第一系统和第二系统之间无需进行图形用户界面展示权限的切换。
请参考图7,其示出了本申请另一个示例性实施例提供的系统切换方法的流程图,本实施例以该方法应用可穿戴式设备为例进行说明,该方法可以包括如下步骤。
步骤701,在第二处理器处于休眠状态的情况下,通过第一系统处理第一事件。
步骤702,响应于触发的第二事件,通过第一处理器唤醒第二处理器。
上述步骤701至702的实施方式可以参考步骤501至502,本实施例在此不再赘述。
步骤703,通过第一系统向第二系统发送第二事件的事件数据,以使得第二系统对事件数据进行处理得到事件反馈数据。
第二处理器被唤醒后,第二系统即处于唤醒状态,不同于上述实施例中,第二系统需要从第一系统处获取图形用户界面的展示权限,本实施例中,第二系统被唤醒后,即处于后台静默处理状态,仅用于在后台进行数据处理,图形用户界面的展示权限仍旧属于第一系统,即无需进行图形用户界面展示权限切换。
同时,为了使第二系统能够处理第二事件,第一系统将第二事件的事件数据发送至第二系统,由第二系统根据事件数据处理第二事件。
其中,该事件数据可以是第二事件所请求服务的服务请求数据,或者,所请求应用的应用请求数据,相应的,第二系统对第二事件进行处理得到的事件反馈数据可以是服务数据或者应用数据。
步骤704,通过第一系统接收第二系统发送的事件反馈数据,并基于事件反馈数据展示第二事件对应的图形用户界面。
进一步的,第二系统将事件反馈数据发送至第一系统,由第一系统对该事件反馈数据进行进一步处理,对前台图形用户界面展示时所需的数据(UI数据)进行打包,以便后续根据打包后的UI数据对第二事件的图形用户界面进行展示。
步骤705,响应于第二事件处理完成,将第二处理器切换为休眠状态,并通过第一系统处理第一事件。
完成第二事件处理后,可穿戴式设备重新将第二处理器切换为休眠状态(无需进行图形用户界面展示权限的切换),并重新通过第一系统处理第一事件,展示第一事件的图形用户界面。
本实施例中,当触发第一处理器无法处理的第二事件时,通过唤醒第二处理器,并由第二系统对第二事件进行静默处理,将处理得到的事件反馈数据发送至第一系统,以便第一系统根据该事件反馈数据对第二事件进行图形用户界面展示,在无需进行图形用户界面展示权限切换的情况下,实现性能事件的及时处理,降低了系统切换的实现复杂度。
由于第一处理器和第二处理器异步工作,因此系统切换过程中(第一系统切换至第二系统,或第二系统切换至第一系统),系统之间需要进行数据同步,以此保证不同系统中数据的一致性。下面采用示意性的实施例进行说明。
请参考图8,其示出了本申请另一个示例性实施例提供的系统切换方法的流程图,本实施例以该方法应用可穿戴式设备为例进行说明,该方法可以包括如下步骤。
步骤801,在第二处理器处于休眠状态的情况下,通过第一系统处理第一事件。
本步骤的实施方式可以参考上述步骤501,本实施例在此不再赘述。
步骤802,通过第一系统对第一数据进行缓存,其中,第一数据缓存在第一系统对应的数据存储空间。
在一种可能的实施方式中,第一处理器和第二处理器各自对应有数据存储空间。当第二处理器处于休眠状态时,为了避免频繁唤醒第二处理器造成功耗过高的问题,第一系统处理第一事件过程中产生的数据,或者,第一系统接收到外部设备发送的数据时,第一系统对数据进行缓存。
示意性的,如图8所示,当可穿戴式设备与手机通过蓝牙相连,且收集通过蓝牙向MCU同步数据(SyncData)时,MCU对接收到的同步数据进行缓存,并在完成同时后,通过蓝牙向手机发送同步完成反馈(syncOK)。
步骤803,响应于触发的第二事件,通过第一处理器唤醒第二处理器。
本步骤的实施方式可以参考上述步骤502,本实施例在此不再赘述。
步骤804,在第二处理器处于唤醒状态的情况下,通过第一系统向第二系统同步第一数据。
在一种可能的实施方式中,第二处理器被唤醒后,为了保证后续第二系统处理事件时,与第一系统的数据保持统一,第一系统向第二系统发起数据同步,将第一数据中的全部或者部分同步至第二系统。其中,不同类型数据的同步策略(部分同步或者全部同步)可以相同也可以不同。
可选的,本申请实施例中的第二系统提供有作为数据中转的数据通信服务(该服务可以位于应用层的框架服务中),第一系统与第二系统即通过该数据通信服务进行数据通信。在进行数据同步时,第一系统基于第一数据的数据类型,通过数据通信服务绑定数据同步服务,从而通过绑定的数据同步服务向第二系统中的目标应用同步第一数据,由目标应用对该第一数据进行处理。
可选的,不同数据类型对应不同数据同步服务,该数据类型与用于处理该数据的应用相关,且不同应用对应不同数据同步服务。比如,当第一数据为计步器数据时,绑定计步器应用对应的数据同步服务,并通过该数据同步服务向计数器应用发送该计步器数据;当第一数据为闹钟设置数据时,绑定闹钟应用对应 的数据同步服务,并通过该数据同步服务向闹钟应用发送该闹钟设置数据。
可选的,目标应用对同步后的第一数据进行处理后,进一步通过数据通信服务将处理后的数据同步至第一系统,保持双系统数据的一致性。
示意性的,如图9所示,第二系统被唤醒后,MCU向第二系统提供的MCUService发送同步数据(SyncData),MCUService即根据同步数据的数据类型,查找相应的数据同步服务(findSyncDataService),从而将同步数据与查找到的数据同步服务进行绑定(bindSyncDataService),其中,MCUService查找数据同步服务时采用重试机制(retry)。完成数据同步服务绑定后,MCUService即通过该服务(SyncMcuDataService)向处理该同步数据的目标应用发送数据,其中,该目标应用与服务进行绑定(onBind)。
目标应用对同步数据进行处理后,通过MCUService反馈处理后的数据,相应的,MCU对接收到的数据进行同步,并向目标应用反馈同步完成指令。目标应用接收到同步完成指令后,向MCUService发送同步完成指令,指示MCUService解绑数据同步服务(unBindSyncDataService)。
在一种可能的应用场景下,当第一处理器上挂载有通信组件(比如蓝牙组件)时,第一系统向第二系统同步数据前,若通过通信组件接收到外部设备发送的第二数据,首先通过第一系统向第二系统同步第二数据,并在第二数据同步完成后,对第一数据进行同步。
比如,第一系统向第二系统同步存储的闹钟数据过程中,若第一系统接收到手机通过蓝牙发送的闹钟数据,第一系统首先将蓝牙接收到的闹钟数据同步至第二系统,然后向第二系统同步缓存的闹钟数据。
步骤805,通过第二系统向第一系统发送第一切换指令,以使得第一系统根据第一切换指令向第二系统转移图形用户界面的展示权限。
步骤806,通过第二系统处理第二事件,并展示第二事件对应的图形用户界面。
上述步骤805至806的实施方式可以参考上述步骤503至504,本实施例再次不在赘述。
步骤807,通过第二系统提供的数据通信服务向第一系统同步第三数据,第三数据为处理第二事件过程中产生的数据。
第二系统在处理第二事件的过程中会产生新的数据,而新产生的数据与第一系统中的数据可能并不一致。比如,当第二事件为表盘设置操作时,表盘设置操作前后的表盘图案可能会发生变更。因此,第二系统需要将新产生的数据(即第三数据)同步至第一系统。
可选的,第二系统通过数据通信服务向第一系统同步第三数据,该过程可以参考第一系统向第二系统同步数据的过程,本实施例在此不再赘述。
在一种可能的实施方式中,第二系统将处理第二事件过程中产生的数据实时同步至第一系统,或者,第二系统在第二事件处理完毕时,将产生的数据同步至第一系统。
示意性的,如图10所示,唤醒状态下,安卓系统中的App运行,并接收到用户交互操作,App通过MCUService将用户交互过程中产生的数据实时同步至MCU(即图中的Sync),MCU接收App同步的数据后,向App反馈同步完成指令(SyncOK)。
步骤808,响应于第二事件处理完成,通过第二系统向第一系统发送第二切换指令,以使得第一系统根据第二切换指令从第二系统处获取图形用户界面的展示权限。
本步骤的实施方式可以参考上述步骤505,本实施例在此不再赘述。
需要说明的是,若重新切换至第一系统时,第三数据未全部同步完成,第二系统在进入休眠状态前,需要将第三数据完整同步至第一系统;若第三数据实时全部同步完成,则无需执行同步流程。
示意性的,如图10所示,切换至第一系统时,由于第三数据未全部同步完成,因此在进入休眠状态前,需要继续通过MCUService向MCU同步第三数据,直至第三数据全部同步。
步骤809,将第二处理器切换为休眠状态,并通过第一系统处理第一事件。
本步骤的实施方式可以参考上述步骤506,本实施例在此不再赘述。
本实施例中,第二系统被唤醒后,第一系统通过第二系统提供的数据通信服务,将第二处理器休眠状态下产生或接收到的数据同步至第二系统;第二系统将运行过程中产生的数据同步至第一系统,实现系统切换前后数据的无缝衔接,避免出现系统切换前后数据不一致的问题,保证双系统数据的一致性。
针对不同类型的数据,第一系统所采用的数据同步策略不同。在一种可能的实施方式中,数据的同步策略包括如下四种:1、实时同步;2、定长同步;3、合并同步;4、定时同步。下面分别对上述四种同步策略进行说明。
1、实时同步。
对于实时性要求较高的数据,比如闹钟数据,若在第二系统被事件唤醒时进行同步,可能会造成同步不及时的问题。因此,在一种可能的实施方式中,当缓存的第一数据中包含即时性数据,第一处理器主动 唤醒第二处理器,从而通过第一系统向第二系统同步即时性数据。
在一个示意性的场景下,当第二处理器处于休眠状态时,若第一系统通过蓝牙接收到手机同步的闹钟数据时,第一处理器即唤醒第二处理器,并向第二系统同步闹钟数据。
可选的,第一系统向第二系统实时同步数据时,第一系统仍旧具有图形用户界面的显示权限,即可穿戴式设备仍旧显示第一系统的图形用户界面,第二系统与第一系统在后台进行静默同步。
2、定长同步。
第一处理器对应的数据存储空间通常较小,相应的,第一系统所能缓存的数据容量较小,当缓存的数据容量达到数据存储空间上限时,第一系统则会对已缓存的数据进行覆盖。为了避免因数据覆盖导致的数据丢失,在一种可能的实施方式中,当缓存的第一数据的数据量达到存储容量阈值时,第一处理器唤醒第二处理器,从而通过第一系统向第二系统同步第一数据。
在一个示意性的例子中,当第一系统对应数据存储空间的剩余存储空间小于20%时,第一处理器主动唤醒处于休眠状态的第二处理器,并将缓存的数据同步至第二系统。
可选的,第一系统采用定长同步策略向第二系统同步数据时,第一系统仍旧具有图形用户界面的显示权限,即可穿戴式设备仍旧显示第一系统的图形用户界面,第二系统与第一系统在后台进行静默同步。
3、合并同步。
在一种可能的实施方式中,对于数据量较小的缓存数据,当第二处理器处于唤醒状态时,第一系统优先将该缓存数据合并后同步至第二系统。
可选的,第一系统向第二系统同步第一数据时,第一系统向第二系统同步第一数据中的目标数据,该目标数据的数据量小于数据量阈值。可选的,该目标数据可以为非即时性数据。比如,该目标数据为字节数小于100的通知消息数据或健康数据等等,本实施例对目标数据的具体类型不作限定。
4、定时同步。
为了避免频繁唤醒第二处理器,在一种可能的实施方式中,可穿戴式设备采用定时同步机制,在达到数据对齐时间点时,将第二处理器切换为唤醒状态,从而通过第一系统向第二系统同步数据存储空间中缓存的第一数据。并且,完成数据同步后,第二处理器重新切换为休眠状态,从而降低可穿戴式设备的功耗。
示意性的,如图11所示,在Android处于休眠状态时,手机通过蓝牙连接向RTOS发送蓝牙数据,由于未达到数据同步时间点,因此RTOS对蓝牙数据进行数据缓存。当达到数据同步时间点时,Android被唤醒,并接收RTOS同步的蓝牙数据。完成数据同步后,Android将再次进行休眠状态。
并且,考虑到不同数据的实时性需求不同,在一种可能的实施方式中,预先为不同实时性需求的数据设置不同的数据对齐时间点,相应的,在进行数据同步时,第一系统基于数据存储空间中缓存的第一数据的实时性需求,确定第一数据对应的目标数据对齐时间点,从而在达到该目标数据对齐时间点时,唤醒第二处理器并进行数据同步。
其中,相邻数据对齐时间点之间的时间间隔与实时性需求呈负相关关系,即数据的实时性需求越高,其对应数据对齐时间点之间的时间间隔越短,相应的,数据的定时同步频率越高,从而保证高实时性需求的数据能够尽快同步至第二系统,确保双系统中数据的一致性。
可选的,相邻数据对齐时间点之间的时间间隔为定值,比如1分钟、5分钟等等,相邻数据对齐时间点之间的时间间隔也可以为动态值,比如可以根据所处时段或者历史数据同步情况,动态调整事件间隔(例如夜间的时间间隔可以大于日间的时间间隔)。
可选的,不同数据与实时性需求之间的对应关系预先设置在第一系统中。比如,第一系统中设置有数据类型与实时性需求等级之间的对应关系,其中,实时性需求等级越高,表示属于该数据类型的数据对同步的实时性需求越高。
在一个示意性的例子中,第一系统在11:01:10接收到终端通过蓝牙发送的功能卡片的更新数据,在11:01:45接收到终端通过蓝牙发送的表盘更新数据(用户在终端侧修改可穿戴式设备的表盘),在11:01:55更新了计步器数据,第一系统依次将功能卡片更新数据、表盘更新数据和计步器数据缓存在数据存储空间,当达到数据同步时间点11:02:00时,第二处理器即被唤醒,第一系统将功能卡片更新数据、表盘更新数据和计步器数据一同同步至第二系统。
可选的,上述四种同步策略可以单独执行,也可以组合执行。
在一些实施例中,将定长同步和合并同步策略组合执行时,若第一数据的数据量达到存储容量阈值,第一处理器则唤醒第二处理器,由第一系统对数据量较小的缓存数据(比如传感器采集到的健康数据)进行合并,从而向第二系统同步合并后的缓存数据。
在一些实施例中,将定时同步和合并同步策略组合执行时,在达到数据同步时间点时,第一处理器唤醒第二处理器,并由第一系统对数据量较小的缓存数据进行合并,从而向第二系统同步合并后的缓存数据。
在一些实施例中,将实时同步和合并同步策略组合执行时,在缓存的第一数据中包含即时性数据时, 第一处理器唤醒第二处理器,通过第一系统向第二系统同步即时性数据;同时,第一系统对数据量较小的缓存数据进行合并,从而向第二系统同步合并后的缓存数据。
在一些实施例中,将定长同步和定时同步策略组合执行时,在未达到数据对齐时间点的情况下,若第一数据的数据量达到存储容量阈值,第一处理器则唤醒第二处理器,由第一系统对数据量较小的缓存数据进行合并,从而向第二系统同步合并后的缓存数据;在达到对齐时间点的情况下,第一处理器则唤醒第二处理器,并通过第一系统向第二系统同步缓存数据。
需要说明的是,上述实施例仅对同步策略的组合方式进行示意性说明,在实际应用过程中,可以对任意两种、三种或四种同步策略进行组合并执行,本申请实施例并不对同步策略的组合执行方式构成限定。
本实施例中,通过采用不同的数据同步机制,在降低第二系统唤醒时长的同时,保证数据能够被及时准确的同步至第二系统,并避免数据丢失,进一步保证双系统数据的一致性,提高了双系统切换过程的稳定性。
需要说明的是,上述各个实施例中,仅以第一处理器和第二处理器(对应第一系统和第二系统)为了进行示意性说明,当可穿戴设备中设置有三个或以上处理器时,可穿戴式设备可以在三个或以上系统之间进行切换(不同系统用于在不同性能需求场景下运行),本实施例并不对此构成限定。
请参考图12,其示出了本申请一个实施例提供的系统切换装置的结构框图。该装置可以通过软件、硬件或者两者的结合实现成为可穿戴式设备的全部或一部分。该装置包括:
第一系统模块1201,用于在所述第二处理器处于休眠状态的情况下,通过第一系统处理第一事件,所述第一系统指由所述第一处理器运行的系统;
第二系统模块1202,用于响应于触发的第二事件,将所述第二处理器切换为唤醒状态,并通过第二系统处理所述第二事件,所述第二系统指由所述第二处理器运行的系统,且所述第一处理器不满足所述第二事件所需的处理能力。
可选的,所述第二系统模块1202,包括:
第一指令发送单元,用于通过所述第二系统向所述第一系统发送第一切换指令,以使得所述第一系统根据所述第一切换指令向所述第二系统转移图形用户界面的展示权限;
第一展示单元,用于通过所述第二系统处理所述第二事件,并展示所述第二事件对应的图形用户界面。
可选的,所述第一系统模块1201,包括:
数据反馈单元,用于通过所述第一系统向所述第二系统发送所述第二事件的事件数据,以使得所述第二系统对所述事件数据进行处理得到事件反馈数据;
第二展示单元,用于通过所述第一系统接收所述第二系统发送的所述事件反馈数据,并基于所述事件反馈数据展示所述第二事件对应的图形用户界面。
可选的,所述第一系统模块1201,还用于响应于所述第二事件处理完成,将所述第二处理器切换为休眠状态,并通过所述第一系统处理所述第一事件。
可选的,所述第二系统处理所述第二事件的过程中具有图形用户界面的展示权限;
所述第二系统模块1202,还用于通过所述第二系统向所述第一系统发送第二切换指令,以使得所述第一系统根据所述第二切换指令从所述第二系统处获取图形用户界面的展示权限。
可选的,所述装置还包括:
缓存模块,用于在所述第二处理器处于休眠状态的情况下,通过所述第一系统对第一数据进行缓存,其中,所述第一数据缓存在所述第一系统对应的数据存储空间;
第一同步模块,用于在所述第二处理器处于唤醒状态的情况下,通过所述第一系统向所述第二系统同步所述第一数据。
可选的,所述第一同步模块,用于:
基于所述第一数据的数据类型,通过所述第二系统提供的数据通信服务绑定数据同步服务,其中,不同数据类型对应不同数据同步服务;
通过绑定的所述数据同步服务向第二系统中的目标应用同步所述第一数据,所述目标应用用于处理所述第一数据。
可选的,所述第一同步模块,还用于:
通过所述第一系统向所述第二系统同步所述第一数据中的目标数据,所述目标数据的数据量小于数据量阈值。
可选的,所述装置还包括:
第二同步模块,用于响应于缓存的所述第一数据的数据量达到存储容量阈值,将所述第二处理器切换 为唤醒状态,并通过所述第一系统向所述第二系统同步所述第一数据。
可选的,所述装置还包括:
第三同步模块,用于响应于缓存的所述第一数据中包含即时性数据,将所述第二处理器切换为唤醒状态,并通过所述第一系统向所述第二系统同步所述即时性数据。
可选的,所述装置还包括:
第四同步模块,用于响应于达到数据对齐时间点,将所述第二处理器切换为唤醒状态,并通过所述第一系统向所述第二系统同步所述第一数据。
可选的,所述第四同步模块,具体用于:
基于所述第一数据的实时性需求,确定所述第一数据对应的目标数据对齐时间点,其中,不同实时性需求的数据对应不同的数据对齐时间点,且数据对齐时间点之间的时间间隔与所述实时性需求呈负相关关系;
响应于达到所述目标数据对齐时间点,将所述第二处理器切换为唤醒状态。
可选的,所述第一处理器上挂载有通信组件;
所述装置还包括:
第四同步模块,用于在所述第二处理器处于唤醒状态的情况下,响应于通过所述通信组件接收到外部设备发送的第二数据,通过所述第一系统向所述第二系统同步所述第二数据。
可选的,所述装置还包括:
第五同步模块,用于通过所述第二系统提供的数据通信服务向所述第一系统同步第三数据,所述第三数据为处理所述第二事件过程中产生的数据。
可选的,所述装置还包括:
唤醒保持模块,用于响应于所述第二事件处理完成,在所述第二事件对应的休眠延迟时长内保持所述第二处理器处于唤醒状态,所述休眠延迟时长基于所述第二事件后所述第二处理器的唤醒频率确定,和/或,所述休眠延迟时长基于所述第二事件的事件类型确定;
所述第一系统模块1201,还用于响应于达到所述休眠延迟时长,将所述第二处理器切换为休眠状态,并通过所述第一系统处理所述第一事件。
综上所述,本申请实施例中,可穿戴式设备中设置有低功耗的第一处理器和高功耗的第二处理器,且由第一处理器运行第一系统,由第二处理器运行第二系统,通过引入系统切换机制,由第一系统对处理能力需求较低的第一事件进行处理,并保持第二处理器处理休眠状态;当触发超出第一处理器处理能力的第二事件时,通过唤醒第二处理器,并切换第二系统处理第二事件,确保事件的及时处理;采用本申请实施例提供的方案,在保证可穿戴式设备性能的同时,降低可穿戴式设备的功耗,进而提高了可穿戴式设备的续航时间。
本申请实施例中,第二事件处理完成时,可穿戴式设备重新将第二处理器切换回休眠状态,并切换第一系统进行事件处理,使可穿戴式设备在大多数场景下处于低功耗状态,进一步提高可穿戴式设备的续航时间。
本实施例中,通过设置休眠延迟时长,从而在第二事件处理完毕,且达到该休眠延迟时长时,将第二处理器重新切换为休眠状态,避免第二处理器被频繁唤醒。
本实施例中,当触发第一处理器无法处理的事件时,通过唤醒第二处理器,并由第二系统通知第一系统进行系统切换,从而获取图形用户界面的展示权限,确保第二系统处理事件过程中,第二事件用户界面的正常显示;同时,重新由第二系统切换回第一系统时,第一系统重新从第二系统处获取图形用户界面的展示权限,确保第一事件用户界面的正常显示,实现双系统之间的无缝切换。
本实施例中,当触发第一处理器无法处理的第二事件时,通过唤醒第二处理器,并由第二系统对第二事件进行静默处理,将处理得到的事件反馈数据发送至第一系统,以便第一系统根据该事件反馈数据对第二事件进行图形用户界面展示,在无需进行图形用户界面展示权限切换的情况下,实现性能事件的及时处理,降低了系统切换的实现复杂度。
本实施例中,第二系统被唤醒后,第一系统通过第二系统提供的数据通信服务,将第二处理器休眠状态下产生或接收到的数据同步至第二系统;第二系统将运行过程中产生的数据同步至第一系统,实现系统切换前后数据的无缝衔接,避免出现系统切换前后数据不一致的问题,保证双系统数据的一致性。
本实施例中,通过采用不同的数据同步机制,在降低第二系统唤醒时长的同时,保证数据能够被及时准确的同步至第二系统,并避免数据丢失,进一步保证双系统数据的一致性,提高了双系统切换过程的稳定性。
请参考图13,其示出了本申请一个示例性实施例提供的可穿戴式设备的结构方框图。本申请中的可穿 戴式设备可以包括一个或多个如下部件:处理器1310和存储器1320。
处理器1310至少包括第一处理器1311和第二处理器1312,其中,第一处理器1311用于运行第一系统,第二处理器1312用于运行第二系统,且第一处理器1311的功耗低于第二处理器1312的功耗,第一处理器1311的性能低于第二处理器1312的性能。处理器1310利用各种接口和线路连接整个电子设备内的各个部分,通过运行或执行存储在存储器1320内的指令、程序、代码集或指令集,以及调用存储在存储器1320内的数据,执行电子设备的各种功能和处理数据。可选地,处理器1310可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable Logic Array,PLA)中的至少一种硬件形式来实现。处理器1310可集成中央处理器(Central Processing Unit,CPU)、图像处理器(Graphics Processing Unit,GPU)、神经网络处理器(Neural-network Processing Unit,NPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责触摸显示屏所需要显示的内容的渲染和绘制;NPU用于实现人工智能(Artificial Intelligence,AI)功能;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器1310中,单独通过一块芯片进行实现。
存储器1320可以包括随机存储器(Random Access Memory,RAM),也可以包括只读存储器(Read-Only Memory,ROM)。可选地,该存储器1320包括非瞬时性计算机可读介质(non-transitory computer-readable storage medium)。存储器1320可用于存储指令、程序、代码、代码集或指令集。存储器1320可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现下述各个方法实施例的指令等;存储数据区可存储根据可穿戴式设备的使用所创建的数据(比如音频数据、电话本)等。
本申请实施例中的可穿戴式设备还包括通信组件1330和显示组件1340。其中,通信组件1330可以为蓝牙组件、WiFi(WirelessFidelity,无线宽带)组件、NFC(NearFieldCommunication,近场通信)组件等等,用于通过有线或无线网络与外部设备(服务器或其他终端设备)进行通信;显示组件1340用于进行图形用户界面展示,和/或,接收用户交互操作。
除此之外,本领域技术人员可以理解,上述附图所示出的可穿戴式设备的结构并不构成对可穿戴式设备的限定,可穿戴式设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。比如,可穿戴式设备中还包括射频电路、输入单元、传感器、音频电路、扬声器、麦克风、电源等部件,在此不再赘述。
本申请实施例还提供了一种计算机可读存储介质,该存储介质存储有至少一条指令,至少一条指令用于被处理器执行以实现如上述实施例所述的系统切换方法。
本申请实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述实施例提供的系统切换方法。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本申请实施例所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。
以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (19)
- 一种系统切换方法,所述方法用于可穿戴式设备,所述可穿戴式设备中至少设置有第一处理器和第二处理器,所述第二处理器的功耗高于所述第一处理器的功耗;所述方法包括:在所述第二处理器处于休眠状态的情况下,通过第一系统处理第一事件,所述第一系统指由所述第一处理器运行的系统;响应于触发的第二事件,将所述第二处理器切换为唤醒状态,并通过第二系统处理所述第二事件,所述第二系统指由所述第二处理器运行的系统,且所述第一处理器不满足所述第二事件所需的处理能力。
- 根据权利要求1所述的方法,其中,所述通过第二系统处理所述第二事件,包括:通过所述第二系统向所述第一系统发送第一切换指令,以使得所述第一系统根据所述第一切换指令向所述第二系统转移图形用户界面的展示权限;通过所述第二系统处理所述第二事件,并展示所述第二事件对应的图形用户界面。
- 根据权利要求1所述的方法,其中,所述通过第二系统处理所述第二事件,包括:通过所述第一系统向所述第二系统发送所述第二事件的事件数据,以使得所述第二系统对所述事件数据进行处理得到事件反馈数据;通过所述第一系统接收所述第二系统发送的所述事件反馈数据,并基于所述事件反馈数据展示所述第二事件对应的图形用户界面。
- 根据权利要求1至3任一所述的方法,其中,所述通过第二系统处理所述第二事件之后,所述方法还包括:响应于所述第二事件处理完成,将所述第二处理器切换为休眠状态,并通过所述第一系统处理所述第一事件。
- 根据权利要求4所述的方法,其中,所述第二系统处理所述第二事件的过程中具有图形用户界面的展示权限;所述将所述第二处理器切换为休眠状态之前,所述方法还包括:通过所述第二系统向所述第一系统发送第二切换指令,以使得所述第一系统根据所述第二切换指令从所述第二系统处获取图形用户界面的展示权限。
- 根据权利要求1至3任一所述的方法,其中,所述方法还包括:在所述第二处理器处于休眠状态的情况下,通过所述第一系统对第一数据进行缓存,其中,所述第一数据缓存在所述第一系统对应的数据存储空间;所述将所述第二处理器切换为唤醒状态之后,所述方法还包括:在所述第二处理器处于唤醒状态的情况下,通过所述第一系统向所述第二系统同步所述第一数据。
- 根据权利要求6所述的方法,其中,所述通过所述第一系统向所述第二系统同步所述第一数据,包括:基于所述第一数据的数据类型,通过所述第二系统提供的数据通信服务绑定数据同步服务,其中,不同数据类型对应不同数据同步服务;通过绑定的所述数据同步服务向第二系统中的目标应用同步所述第一数据,所述目标应用用于处理所述第一数据。
- 根据权利要求7所述的方法,其中,所述通过所述第一系统向所述第二系统同步所述第一数据,还包括:通过所述第一系统向所述第二系统同步所述第一数据中的目标数据,所述目标数据的数据量小于数据量阈值。
- 根据权利要求6所述的方法,其中,所述通过所述第一系统对第一数据进行缓存之后,所述方法还包括:响应于缓存的所述第一数据的数据量达到存储容量阈值,将所述第二处理器切换为唤醒状态,并通过所述第一系统向所述第二系统同步所述第一数据。
- 根据权利要求6所述的方法,其中,所述通过所述第一系统对第一数据进行缓存之后,所述方法还包括:响应于缓存的所述第一数据中包含即时性数据,将所述第二处理器切换为唤醒状态,并通过所述第一系统向所述第二系统同步所述即时性数据。
- 根据权利要求6所述的方法,其中,所述通过所述第一系统对第一数据进行缓存之后,所述方法还包括:响应于达到数据对齐时间点,将所述第二处理器切换为唤醒状态,并通过所述第一系统向所述第二系统同步所述第一数据。
- 根据权利要求11所述的方法,其中,所述响应于达到数据对齐时间点,将所述第二处理器切换为唤醒状态,包括:基于所述第一数据的实时性需求,确定所述第一数据对应的目标数据对齐时间点,其中,不同实时性需求的数据对应不同的数据对齐时间点,且数据对齐时间点之间的时间间隔与所述实时性需求呈负相关关系;响应于达到所述目标数据对齐时间点,将所述第二处理器切换为唤醒状态。
- 根据权利要求6所述的方法,其中,所述第一处理器上挂载有通信组件;所述通过所述第一系统向所述第二系统同步所述第一数据之前,所述方法还包括:在所述第二处理器处于唤醒状态的情况下,响应于通过所述通信组件接收到外部设备发送的第二数据,通过所述第一系统向所述第二系统同步所述第二数据。
- 根据权利要求1至3任一所述的方法,其中,所述通过第二系统处理所述第二事件之后,所述方法还包括:通过所述第二系统提供的数据通信服务向所述第一系统同步第三数据,所述第三数据为处理所述第二事件过程中产生的数据。
- 根据权利要求1至3任一所述的方法,其中,所述通过第二系统处理所述第二事件之后,所述方法还包括:响应于所述第二事件处理完成,在所述第二事件对应的休眠延迟时长内保持所述第二处理器处于唤醒状态,所述休眠延迟时长基于所述第二事件后所述第二处理器的唤醒频率确定,和/或,所述休眠延迟时长基于所述第二事件的事件类型确定;响应于达到所述休眠延迟时长,将所述第二处理器切换为休眠状态,并通过所述第一系统处理所述第一事件。
- 一种系统切换装置,所述装置用于可穿戴式设备,所述可穿戴式设备中至少设置有第一处理器和第二处理器,所述第二处理器的功耗高于所述第一处理器的功耗;所述装置包括:第一系统模块,用于在所述第二处理器处于休眠状态的情况下,通过第一系统处理第一事件,所述第一系统指由所述第一处理器运行的系统;第二系统模块,用于响应于触发的第二事件,将所述第二处理器切换为唤醒状态,并通过第二系统处理所述第二事件,所述第二系统指由所述第二处理器运行的系统,且所述第一处理器不满足所述第二事件所需的处理能力。
- 一种可穿戴式设备,所述可穿戴式设备包括处理器和存储器;所述处理器至少包括第一处理器和第二处理器,所述第二处理器的功耗高于所述第一处理器的功耗,所述存储器存储有至少一条指令,所述至少一条指令用于被所述处理器执行以实现如权利要求1至15任一所述的系统切换方法。
- 一种计算机可读存储介质,所述存储介质存储有至少一条指令,所述至少一条指令用于被处理器执行以实现如权利要求1至15任一所述的系统切换方法。
- 一种计算机程序产品或计算机程序,所述计算机程序产品或计算机程序包括计算机指令,所述计算机指令存储在计算机可读存储介质中,处理器从所述可读存储介质中读取并执行所述计算机指令,以实现如权利要求1至15任一所述的系统切换方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP21905270.1A EP4250102A4 (en) | 2020-12-18 | 2021-10-19 | SYSTEM SWITCHING METHOD AND DEVICE, DEVICE AND STORAGE MEDIUM |
US18/336,174 US20230324974A1 (en) | 2020-12-18 | 2023-06-16 | Method for system switching, wearable device, and storage medium |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011506224.1 | 2020-12-18 | ||
CN202011506224 | 2020-12-18 | ||
CN202110406970.1 | 2021-04-15 | ||
CN202110406970.1A CN114647452B (zh) | 2020-12-18 | 2021-04-15 | 系统切换方法、装置、设备及存储介质 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US18/336,174 Continuation US20230324974A1 (en) | 2020-12-18 | 2023-06-16 | Method for system switching, wearable device, and storage medium |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2022127341A1 true WO2022127341A1 (zh) | 2022-06-23 |
Family
ID=81991936
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2021/124766 WO2022127341A1 (zh) | 2020-12-18 | 2021-10-19 | 系统切换方法、装置、设备及存储介质 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20230324974A1 (zh) |
EP (1) | EP4250102A4 (zh) |
CN (2) | CN118467044A (zh) |
WO (1) | WO2022127341A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115442877B (zh) * | 2022-07-27 | 2023-09-05 | 云南保利天同水下装备科技有限公司 | 控制功耗的方法、装置、处理设备及存储介质 |
WO2024055225A1 (en) * | 2022-09-15 | 2024-03-21 | Qualcomm Incorporated | Offload bluetooth native stack to low power processor on wearable platform |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104424028A (zh) * | 2013-08-26 | 2015-03-18 | 联想(北京)有限公司 | 终端设备以及切换方法 |
CN108319360A (zh) * | 2018-01-26 | 2018-07-24 | 出门问问信息科技有限公司 | 一种显示装置、电子设备及屏幕显示控制方法 |
CN110908496A (zh) * | 2019-11-28 | 2020-03-24 | 出门问问信息科技有限公司 | 一种系统交互方法及可穿戴设备 |
CN111142651A (zh) * | 2019-05-09 | 2020-05-12 | 广东小天才科技有限公司 | 一种通信终端的系统切换方法及通信终端 |
CN111781616A (zh) * | 2020-06-16 | 2020-10-16 | 出门问问信息科技有限公司 | 一种数据处理方法、装置、系统及计算机可读存储介质 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7383450B2 (en) * | 2004-12-22 | 2008-06-03 | Intel Corporation | Low power firmware |
US8762759B2 (en) * | 2008-04-10 | 2014-06-24 | Nvidia Corporation | Responding to interrupts while in a reduced power state |
WO2012023152A2 (en) * | 2010-08-19 | 2012-02-23 | Ineda Systems Pvt. Ltd | Multi-processor electronic systems |
CN102778943B (zh) * | 2011-05-10 | 2016-07-06 | 联想(北京)有限公司 | 状态控制方法、装置及便携终端 |
JP5729266B2 (ja) * | 2011-11-15 | 2015-06-03 | 富士通株式会社 | 情報処理装置、情報処理装置の制御方法、及び情報処理装置の制御プログラム |
US10007323B2 (en) * | 2012-12-26 | 2018-06-26 | Intel Corporation | Platform power consumption reduction via power state switching |
CN105204931B (zh) * | 2014-06-11 | 2019-03-15 | 联发科技(新加坡)私人有限公司 | 低功耗可穿戴设备及其多操作系统切换、通信及管理方法 |
US20160055031A1 (en) * | 2014-11-13 | 2016-02-25 | Mediatek Inc. | Dual-System Architecture With Fast Recover And Switching Of Operating System |
CN106484075B (zh) * | 2016-10-12 | 2020-01-17 | 北京元心科技有限公司 | 调整应用程序唤醒时间的方法及装置 |
CN110223691A (zh) * | 2019-06-11 | 2019-09-10 | 苏州思必驰信息科技有限公司 | 语音唤醒识别的切换控制方法和装置 |
CN111951921A (zh) * | 2020-07-06 | 2020-11-17 | 出门问问信息科技有限公司 | 一种信息交互方法、装置、电子设备及可读存储介质 |
-
2021
- 2021-04-15 CN CN202410626548.0A patent/CN118467044A/zh active Pending
- 2021-04-15 CN CN202110406970.1A patent/CN114647452B/zh active Active
- 2021-10-19 WO PCT/CN2021/124766 patent/WO2022127341A1/zh active Application Filing
- 2021-10-19 EP EP21905270.1A patent/EP4250102A4/en active Pending
-
2023
- 2023-06-16 US US18/336,174 patent/US20230324974A1/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104424028A (zh) * | 2013-08-26 | 2015-03-18 | 联想(北京)有限公司 | 终端设备以及切换方法 |
CN108319360A (zh) * | 2018-01-26 | 2018-07-24 | 出门问问信息科技有限公司 | 一种显示装置、电子设备及屏幕显示控制方法 |
CN111142651A (zh) * | 2019-05-09 | 2020-05-12 | 广东小天才科技有限公司 | 一种通信终端的系统切换方法及通信终端 |
CN110908496A (zh) * | 2019-11-28 | 2020-03-24 | 出门问问信息科技有限公司 | 一种系统交互方法及可穿戴设备 |
CN111781616A (zh) * | 2020-06-16 | 2020-10-16 | 出门问问信息科技有限公司 | 一种数据处理方法、装置、系统及计算机可读存储介质 |
Non-Patent Citations (1)
Title |
---|
See also references of EP4250102A4 * |
Also Published As
Publication number | Publication date |
---|---|
EP4250102A1 (en) | 2023-09-27 |
CN118467044A (zh) | 2024-08-09 |
US20230324974A1 (en) | 2023-10-12 |
CN114647452A (zh) | 2022-06-21 |
EP4250102A4 (en) | 2024-05-15 |
CN114647452B (zh) | 2024-06-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230324974A1 (en) | Method for system switching, wearable device, and storage medium | |
WO2022262434A1 (zh) | 一种功耗优化方法和电子设备 | |
US20240345855A1 (en) | Application starting method, electronic device, and non-transitory computer-readable storage medium | |
WO2022213757A1 (zh) | 应用界面的显示方法、装置、设备及存储介质 | |
CN114968375A (zh) | 系统切换方法和装置、电子设备、可读存储介质 | |
WO2022218107A1 (zh) | 数据传输方法、装置、设备及存储介质 | |
WO2022089255A1 (zh) | 一种节能方法及终端设备 | |
US20240045702A1 (en) | User interface display method and apparatus, device, and storage medium | |
CN110543333A (zh) | 针对处理器的休眠处理方法、装置、移动终端和存储介质 | |
KR20180004956A (ko) | 전자 장치 및 전자 장치의 동작 방법 | |
WO2023124622A1 (zh) | 通信连接的维持方法、装置、设备、存储介质及程序产品 | |
WO2024109290A1 (zh) | 应用启动方法、装置、设备及存储介质 | |
WO2023116236A1 (zh) | 应用启动方法、装置、设备及存储介质 | |
WO2024032140A1 (zh) | 息屏显示方法、装置、设备及存储介质 | |
WO2023116237A1 (zh) | 界面显示方法、装置、设备、存储介质及程序产品 | |
WO2023236516A1 (zh) | 语音识别方法、装置、设备及存储介质 | |
US20240356828A1 (en) | Method for maintaining communication connection, electronic device, and non-transitory computer-readable storage medium | |
CN115309252A (zh) | 音乐控制界面显示方法、装置、可穿戴式设备及存储介质 | |
WO2023138235A1 (zh) | 主题切换方法、装置、设备、存储介质及程序产品 | |
WO2023185152A1 (zh) | 来电处理方法、装置、设备及存储介质 | |
WO2022218106A1 (zh) | 数据传输方法、装置、设备及存储介质 | |
CN115309691A (zh) | 音频播放方法、装置、设备、存储介质及程序产品 | |
CN118193093A (zh) | 消息显示方法、装置、设备及存储介质 | |
CN116521283A (zh) | 界面显示方法、装置、设备及存储介质 | |
CN118502886A (zh) | 应用切换方法、装置、设备、存储介质及程序产品 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 21905270 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 202317043426 Country of ref document: IN |
|
ENP | Entry into the national phase |
Ref document number: 2021905270 Country of ref document: EP Effective date: 20230623 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |