Parallel Kernel Task Distribution for Boot Time Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing device booting processes are inefficient due to neglect of optimization in the single-core initialization phase, leading to prolonged boot times, especially in time-critical applications like automotive rear view camera systems.

Innovation Solution

A booting method that divides kernel tasks into first and second kernel tasks, with the main processor performing first kernel tasks and secondary processors handling second kernel tasks in parallel, utilizing a Hypervisor-assisted Parallel Boot architecture to shorten the single-core initialization phase.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If only the boot processor performs kernel tasks in the single-core initialization phase, then the system structure is simple and easy to control, but the booting time is prolonged

Engineering Contradiction:
Improvebooting timeVSAvoidprocessor task distribution complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The patent segments kernel tasks into first kernel tasks (performed by boot processor) and second kernel tasks (performed by secondary processors). This segmentation allows parallel execution of tasks during the initialization phase, reducing booting time while maintaining manageable complexity through clear task classification.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements preliminary action by having secondary processors prepare and execute second kernel tasks during the single-core initialization phase before the multi-core initialization phase begins. This preliminary execution of tasks reduces the overall booting time by overlapping task execution across different processor cores.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If multiple processors are used in parallel during the initialization phase, then the booting speed is improved, but the task distribution and system control become more complex

Engineering Contradiction:
Improvebooting speedVSAvoidtask distribution complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent divides kernel tasks into distinct categories (first and second kernel tasks) that are assigned to different processor types (boot processor and secondary processors). This segmentation enables parallel processing and improves booting speed while maintaining clear responsibility boundaries that simplify task distribution management.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a task distribution mechanism where the boot processor acts as an intermediary to manage and coordinate tasks between itself and secondary processors. This intermediary approach simplifies the overall system control by centralizing task allocation decisions while enabling parallel execution for improved productivity.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11966751B2Device and booting method of the device
Publication Date: 2024.04.23 SAMSUNG ELECTRONICS CO LTD
  • US11966751B2 patent drawing
  • US11966751B2 patent drawing
  • US11966751B2 patent drawing

AI summary

A device is deployed with a preset operating system. A booting method of the device includes: performing, by a main processor, at least one first kernel task of a kernel of the preset operating system in a preset initialization phase of the kernel of the preset operating system; and distributing at least one second kernel task of the kernel of the preset operating system to at least one secondary processor for processing. The boot processor and the secondary processor are both processors of the device. The boot processor boots the preset operating system. Tasks of the kernel of the preset operating system in the preset initialization phase are divided into the at least one first kernel task and the at least one second kernel task.