TEE Scheduler Migration via Transition Submodule
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for migrating a Trusted Execution Environment (TEE) between cores on a multicore processor are cumbersome, requiring adaptation of the core migration synchronization API and processor core id conversion table for each new processor and hardware environment, and limit dynamic reassignment of the core due to explicit invocation requirements, which hampers dynamic adjustment to varying resource demands.
Innovation Solution
A method that executes a TEE scheduler in the REE on a first core, migrates it to a second core, and uses a transition submodule within the TEE to manage core transitions without needing a processor core id conversion table, allowing dynamic migration and retargeting of secure interrupts, thus eliminating the need to pin the TEE to an active core.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a dedicated core migration synchronization API with processor core id conversion table is used to retarget TEE entry points, then all possible entry points to the TEE can be retargeted to the new active core, but the system requires adaptation of the API and conversion table to each new multicore processor and hardware environment, increasing device complexity
Solution Approach 1:
The patent introduces a migration manager as an intermediary component that mediates between the TEE scheduler and the TEE core. The migration manager handles the complex task of retargeting TEE entry points by intercepting migration requests, updating internal mappings of TEE entry points to new core identifiers, and coordinating the transition. This intermediary absorbs the complexity of adaptation to different processor architectures, shielding the rest of the system from hardware-specific details while ensuring reliable retargeting of all TEE entry points including interrupts and scheduled entries.
2Reliability
If explicit invocation of the core migration synchronization API is required, then the TEE can be migrated between cores, but the rich-OS scheduler operating in the REE is limited in its ability to dynamically reassign the core on which the TEE is executed, reducing adaptability
Solution Approach 1:
The patent implements dynamic migration capabilities by allowing the TEE scheduler to issue migration requests at any time based on runtime conditions such as resource demands, performance requirements, or power management needs. The migration manager dynamically updates the mapping between TEE entry points and active core identifiers without requiring system restart or explicit API invocation sequences. This dynamic approach enables the rich-OS scheduler to flexibly reassign TEE execution between cores in response to changing system conditions while maintaining controlled migration through the migration manager's coordination.
3Stability of the object's composition
If the TEE is pinned to a single active core, then data consistency across TEE applications can be maintained, but the core cannot enter low power states and resource utilization is reduced
Solution Approach 1:
The patent enables dynamic migration of the TEE between cores, allowing the system to move the TEE execution context from an active core to a different core when the original core needs to enter low power states. The migration manager maintains data consistency by properly transferring the TEE execution context, updating all entry point mappings, and ensuring atomic transitions that prevent data corruption. This dynamic approach allows cores to enter sleep states when not hosting the TEE, significantly reducing power consumption while maintaining data consistency through controlled migration mechanisms.
4Adaptability or versatility
If multiple entry points to the TEE exist including secure interrupts from any core, then the TEE can respond to various events, but retargeting all entry points during core migration becomes challenging and increases complexity
Solution Approach 1:
The migration manager serves as an intermediary that centralizes the management of all TEE entry points. It maintains an internal mapping structure that tracks all entry points including scheduled entries and secure interrupts from any core. When migration is required, the migration manager uniformly updates all these mappings to point to the new active core through a single coordinated operation. This intermediary approach simplifies the complexity of retargeting multiple diverse entry points by providing a unified management interface that handles all types of TEE entry points consistently.
Data Source
AI summary
A trusted execution environment migration method for a device comprising a multicore processor, the processor operable to execute a rich execution environment (REE) and a trusted execution environment (TEE), the method comprising: executing a TEE scheduler in the REE on a first core of the multicore processor; subsequent to a migration of the TEE scheduler from the first core to a second core, issuing a request, by the TEE scheduler and to a transition submodule in the TEE, to execute an operations submodule in the TEE, wherein the transition submodule is operable to manage the transition of a core of the processor between execution of the REE and execution of the operations submodule in the TEE, and wherein the transition submodule is executed on the same core as the TEE scheduler; upon execution of the operations submodule, determining if the core on which the operations submodule is executing has changed since the previous execution of the operations submodule.


