Real-Time OS Processor Loading Distribution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In real-time operating systems, large processing requests from lower frequency tasks to higher frequency tasks can cause the high frequency tasks to exceed their completion deadlines, leading to slower execution frequencies and potential system instability.

Innovation Solution

A method is introduced to distribute the processing requests of lower frequency tasks across multiple iterations of high frequency tasks by queuing discrete processing commands and determining a ratio of execution frequencies to execute a subset of commands at each iteration, ensuring timely completion without delaying the high frequency task.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If a lower frequency processing task makes a large processing request to a high frequency processing task, then the processing request can be fulfilled, but the high frequency task may exceed its completion deadline

Engineering Contradiction:
Improveprocessing request fulfillmentVSAvoidcompletion deadline
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent segments the large processing request into multiple discrete processing commands that are queued and executed incrementally across multiple iterations of the high frequency task. Instead of executing all commands in a single iteration, the system divides the workload into manageable chunks, allowing the high frequency task to maintain its execution frequency while still fulfilling the complete processing request over time.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements preliminary action by queuing the discrete processing commands before execution. The lower frequency task submits the entire processing request and its associated commands to a queue in advance, allowing the high frequency task to pick up and execute commands at its own pace without being blocked by the lower frequency task's execution timeline. This ensures the high frequency task can maintain its deadline while still processing the complete request.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If the high frequency task executes all processing commands in one iteration, then processing is completed quickly, but the task execution frequency decreases

Engineering Contradiction:
Improveprocessing completion speedVSAvoidtask execution frequency
Core Design Contradiction:
ProductivityVSSpeed

Solution Approach 1:

The patent segments the processing commands into discrete units that are executed across multiple iterations. Each iteration executes only a subset of the total commands, determined by calculating the ratio between the lower frequency task's execution rate and the high frequency task's execution rate. This segmentation allows the high frequency task to maintain its rapid execution frequency while still making progress on the complete processing request.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements periodic action by executing processing commands at regular intervals corresponding to the high frequency task's iteration cycle. Rather than executing all commands in a single burst, the system periodically executes a calculated subset of commands in each iteration, ensuring consistent progress while maintaining the task's high execution frequency and timing characteristics.

Inventive Principle:
Principle #19Periodic action

3Speed

If processing commands are distributed across multiple iterations, then the high frequency task maintains its execution frequency, but the processing takes longer to complete

Engineering Contradiction:
Improvetask execution frequencyVSAvoidprocessing completion time
Core Design Contradiction:
SpeedVSDuration of action of moving object

Solution Approach 1:

The patent minimizes the duration impact by implementing preliminary action through advance queueing. The lower frequency task submits the complete processing request and all associated commands to the queue before the high frequency task begins execution. This allows the high frequency task to execute commands continuously across iterations without waiting for new commands to be generated, reducing the total processing duration while maintaining execution frequency.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent ensures continuity of useful action by having the high frequency task execute processing commands in every iteration without idle cycles. The command queue is structured to provide continuous work, and the task executes a calculated subset of commands in each iteration, ensuring that the processor remains continuously utilized. This maximizes productivity while distributing the workload across multiple iterations to maintain execution frequency.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS9152451B2Method of distributing processor loading between real-time processor threads
Publication Date: 2015.10.06 GM GLOBAL TECHNOLOGY OPERATIONS LLC
  • US9152451B2 patent drawing
  • US9152451B2 patent drawing

AI summary

A method of distributing processor loading in a real-time operating system between a high frequency processing task and a lower frequency processing task, the method including: making a processing request to the high frequency processing task from the lower frequency processing task, the processing request including a plurality of discrete processing commands; queuing the plurality of discrete processing commands; and executing a subset of the queued processing commands with the execution of each of a plurality of high frequency processing tasks such that the execution of the plurality of discrete processing commands is distributed across the plurality of high frequency processing tasks.