Embedded OS Resource Allocation for Multi-Core Idle Core Utilization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The overall utilization rate of processing resources in multi-core processors is low due to most resources being in an idle state when services insensitive and sensitive to response speed are processed by the same processor, leading to inefficient resource allocation.
Innovation Solution
Dynamically allocate services to different operating systems based on a resource allocation rule considering service response speed, resource occupation rate, coupling degree, and importance, ensuring that services with varying requirements are executed by operating systems with matching capabilities, thereby optimizing processor resource utilization without additional acceleration hardware.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If services insensitive to response speed are processed by multi-core processor, then processing capacity is improved, but resource utilization rate deteriorates due to idle core resources
Solution Approach 1:
The multi-core processor is designed to perform multiple functions by dynamically allocating different types of services (both response-speed-sensitive and response-speed-insensitive) across its cores. The system enables the processor to function as both a general-purpose computing platform and an acceleration platform by allowing flexible service migration between processor cores and acceleration hardware based on real-time resource availability and service requirements.
Solution Approach 2:
The system implements dynamic resource allocation where services can be migrated between the multi-core processor and acceleration hardware based on changing conditions. The service migration mechanism allows the system to adaptively adjust which core handles which service, and when to offload services to acceleration hardware, thereby optimizing resource utilization rates while maintaining processing capacity.
2Speed
If acceleration hardware is combined with multi-core processor for response-speed-sensitive services, then response speed is improved, but device complexity increases
Solution Approach 1:
A service migration mechanism acts as an intermediary layer between the multi-core processor and acceleration hardware. This mediator manages the complex interactions by automatically determining when and how to migrate services between processing platforms, thereby reducing the operational complexity for users while maintaining the performance benefits of the hybrid architecture.
Solution Approach 2:
The system implements feedback mechanisms that monitor service performance metrics, resource utilization rates, and system state in real-time. Based on this feedback, the service migration mechanism dynamically adjusts service allocation between the processor and acceleration hardware, optimizing response speed while managing system complexity through automated decision-making.
3Reliability
If most processing resources are kept in idle state, then service quality for response-speed-sensitive tasks is improved, but overall resource utilization deteriorates
Solution Approach 1:
The system employs periodic monitoring and evaluation of service performance and resource utilization states. Through periodic assessment of whether services meet their response speed requirements and whether processor resources are underutilized, the system triggers service migration operations at appropriate intervals, thereby maintaining service quality while improving overall resource utilization rates through rhythmic optimization cycles.
Data Source
Figure 1~2
Figure 3~4
Figure 5~6
AI summary
An embedded system running method and apparatus, and an embedded system and a chip are provided. The method includes: allocating, according to a resource dynamic allocation rule, a group of services to be allocated to corresponding operating systems in an embedded system, wherein the resource dynamic allocation rule includes performing resource dynamic allocation according to at least one of: a service response speed, a service resource occupation rate, a service coupling degree, and service importance, the embedded system includes a first operating system and a second operating system, and a response speed of the first operating system is higher than a response speed of the second operating system; determining resource allocation results corresponding to the group of services to be allocated, where the resource allocation results are used for indicating, among processing resources of the processor, a processing resource corresponding to each of the group of services to be allocated, and the processing resources of a processor include processor cores; and allocating the processing resources of a processor to the first operating system and the second operating system according to an operating system allocation result and the resource allocation result corresponding to each of the group of services to be allocated.