Emulated Thread Callback Management via Detection Component

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing computing systems face inefficiencies in managing callback operations, such as interrupts, which can lead to slower processing times and increased risks of untimely interrupt delivery due to the need for frequent polled checks.

Innovation Solution

Implementing a callback detection component and a thread execution component that allow processors to detect requests for callback operations, determine execution modes, and execute threads accordingly, simulating asynchronous interrupts without injecting polling checks, thereby managing cooperating threads to host asynchronous callback operations efficiently.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If frequent polled checks are injected into each thread to manage callback operations, then the reliability of interrupt delivery is improved, but the processing speed deteriorates

Engineering Contradiction:
Improveinterrupt delivery reliabilityVSAvoidprocessing speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent extracts the polling mechanism from the thread execution path by implementing a separate callback management system. The callback detection component monitors for callback requests independently without injecting polls into thread loops, thereby maintaining interrupt delivery reliability while eliminating the processing overhead that slowed down thread execution.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces a callback detection component as an intermediary between the hardware interrupt system and the thread execution environment. This mediator detects callback requests and manages their delivery without requiring threads to perform polled checks, thus preserving reliability while maintaining processing speed.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If hardware management of threads and callback operations is implemented, then the processing speed is improved, but the device complexity increases

Engineering Contradiction:
Improveprocessing speedVSAvoidhardware complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent introduces a callback detection component as an intermediary between the hardware interrupt system and the thread execution environment. This mediator detects callback requests and manages their delivery without requiring threads to perform polled checks, thus preserving reliability while maintaining processing speed.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent creates a virtualized representation of interrupt handling through the callback detection component and thread execution component. Instead of directly modifying hardware interrupt mechanisms, the system copies the essential functionality into software components that operate within the existing hardware framework, thereby avoiding additional hardware complexity while maintaining performance.

Inventive Principle:
Principle #26Copying

3Productivity

If polled checks are decreased to improve processing speed, then the productivity is improved, but the reliability of callback operation delivery deteriorates

Engineering Contradiction:
Improveprocessing speedVSAvoidcallback delivery reliability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent extracts the polling mechanism from the thread execution path by implementing a separate callback management system. The callback detection component monitors for callback requests independently without injecting polls into thread loops, thereby maintaining interrupt delivery reliability while eliminating the processing overhead that slowed down thread execution.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The callback detection component operates autonomously to detect and manage callback requests without requiring threads to actively poll for them. The system self-manages the detection and delivery of callback operations, ensuring reliability while allowing threads to execute without interruptions from polled checks.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS9424081B2Managing callback operations in emulated environments
Publication Date: 2016.08.23 MICROSOFT TECHNOLOGY LICENSING LLC
  • US9424081B2 patent drawing
  • US9424081B2 patent drawing
  • US9424081B2 patent drawing

AI summary

Examples of the disclosure enable callback operations, such as interrupts, Asynchronous Procedure Calls (APCs), and Deferred Procedure Calls (DPCs), to be efficiently managed. In some examples, an emulated thread includes a request for a callback operation. When the request is detected, the emulated thread and/or a cooperating thread associated with the callback operation is executed based on an execution mode associated with the callback operation. Examples of the disclosure manage callback operations while efficiently managing system resources, including processor load, by providing at least one cooperating thread that consumes little or no processing power until the callback operation is ready to be executed.