Synchronizing Agent for Asynchronous OS Wake-up Coordination
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In multiprocessor systems-on-chips with multiple cores executing different operating systems, existing technologies face challenges in synchronizing wake-up times to minimize power consumption and extend battery life, as each core has independent constraints and wake-up times, complicating the implementation of power-saving strategies due to shared resources.
Innovation Solution
A synchronizing agent coordinates the wake-up times of asynchronous operating systems across multiple cores by calculating a minimum wake-up time that all cores can tolerate, reducing the number of transitions out of low power states and synchronizing sleep and wake operations, thereby maximizing power savings.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Use of energy by moving object
If each core operates independently with its own operating system and wake-up time, then each core can optimize its own power management, but the system experiences frequent transitions out of global low power states due to unsynchronized wake-ups
Solution Approach 1:
A synchronizing agent is introduced as an intermediary component that coordinates wake-up times between multiple asynchronous operating systems on different cores. The synchronizing agent receives wake-up time requests from various OSes, calculates a unified wake-up time that satisfies all constraints, and communicates this synchronized time back to the OSes, thereby reducing unnecessary transitions out of global low power states while maintaining functional performance.
2Duration of action of moving object
If the system synchronizes wake-up times across all cores, then the duration of global low power states is extended, but the complexity of coordinating multiple asynchronous operating systems increases
Solution Approach 1:
The synchronizing agent operates autonomously by automatically receiving wake-up time requests from multiple operating systems, independently calculating a unified wake-up time that satisfies all constraints, and proactively communicating the synchronized time back to the OSes. This self-service mechanism extends global low power state duration without requiring complex external coordination infrastructure.
3Ease of operation
If wake-up times are calculated independently by each operating system, then each OS can meet its own functional requirements, but the number of transitions out of low power states increases due to unsynchronized wake-ups
Solution Approach 1:
The synchronizing agent performs preliminary calculation of a unified wake-up time before the actual wake-up event occurs. By receiving wake-up time requests in advance from multiple OSes and computing a synchronized wake-up time that satisfies all constraints, the system can maintain operational independence of each OS while minimizing energy loss from frequent transitions out of global low power states.
Data Source
AI summary
Methods, systems and devices configured to add synchronization to the entry and exit from low power modes in asynchronous operating systems on a multiprocessor system. A synchronizing agent tracks the requested sleep and wake up times of the different asynchronous operating systems executing on different cores of the same system on chip or multicore processor. The sleep/wake up times of some cores/operating systems may be delayed in order to synchronize the sleep/wake up times of two or more of the asynchronous operating systems executing on the multiprocessor system.


