Dual-OS Embedded Service Allocation for Processor Utilization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The low overall utilization rate of processing resources in multi-core processors due to most resources being in an idle state when services are processed by a combination of multi-core processors and acceleration hardware.

Innovation Solution

Dynamically allocate services to different operating systems based on a resource dynamic allocation rule considering service response speed, resource occupation rate, coupling degree, and importance, allowing the first operating system with higher response speed to handle real-time services and the second operating system to handle non-real-time services, thereby optimizing resource allocation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If services are processed by a combination of multi-core processor and acceleration hardware, then response speed for sensitive services is improved, but overall utilization rate of processing resources deteriorates due to most processor resources being idle

Engineering Contradiction:
Improveresponse speedVSAvoidoverall utilization rate of processing resources
Core Design Contradiction:
SpeedVSProductivity

Solution Approach 1:

The multi-core processor is designed to perform multiple functions by dynamically allocating different services to different operating systems. The processor can handle both real-time services (through the first OS) and non-real-time services (through the second OS), eliminating the need for dedicated acceleration hardware for certain service types and improving overall resource utilization.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The system implements dynamic service allocation where services are assigned to different operating systems based on their response speed requirements. This dynamic allocation allows the processor to adaptively utilize its resources, assigning time-critical services to the faster first OS and less time-sensitive services to the second OS, thereby maximizing processing efficiency and resource utilization.

Inventive Principle:
Principle #15Dynamics

2Speed

If dedicated acceleration hardware is used for services sensitive to response speed, then response speed is improved, but device complexity increases

Engineering Contradiction:
Improveresponse speedVSAvoiddevice complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

Instead of adding dedicated acceleration hardware, the patent makes the existing multi-core processor universal by enabling it to handle different types of services through multiple operating systems. This approach maintains response speed for sensitive services while avoiding the increased device complexity that would result from adding specialized hardware components.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The system creates a virtual copy of processing capabilities through the second operating system that can handle non-real-time services, allowing the first operating system to focus on real-time services. This virtualization approach eliminates the need for physical acceleration hardware while maintaining the functional separation needed for different service types.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS20250278311A1Embedded system running method and apparatus, and embedded system and chip
Publication Date: 2025.09.04 INSPUR SUZHOU INTELLIGENT TECH CO LTD
  • US20250278311A1 patent drawing
  • US20250278311A1 patent drawing
  • US20250278311A1 patent drawing

AI summary

An embedded system running 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 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 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.