Helper Process for Unresponsive Application Network Handling

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current data processing systems face inefficiencies in network data transmission and reception, particularly when applications become unresponsive, as they require kernel mode interventions for retransmissions and protocol processing, which can lead to increased overhead and reduced performance.

Innovation Solution

A data processing system utilizing a processor subsystem with non-operating system functionalities, including DPDK, to manage network interface devices and protocol processing, employing helper processes to handle data transmission and reception in user-mode, allowing for continued data processing even if the application is unresponsive, and using virtual interface code to communicate between user and kernel levels.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the application is responsible for all data transmission and reception operations, then the system structure is simple, but the system becomes unresponsive when the application freezes or crashes

Engineering Contradiction:
Improvesystem responsivenessVSAvoidsystem structure
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces a kernel-mode intermediary component (network stack or driver) that acts as a mediator between the application and the network interface. This intermediary can continue processing network operations independently when the application becomes unresponsive, ensuring system reliability without requiring complete redesign of the architecture.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent segments the network processing functionality into separate components: application-level processing and kernel-level processing. The kernel-level component handles critical network operations independently, allowing the system to maintain functionality even when the application is frozen or crashes.

Inventive Principle:
Principle #1Segmentation

2Reliability

If kernel mode processing is used for network operations, then reliability is improved, but system performance and speed are reduced

Engineering Contradiction:
Improvedata transmission reliabilityVSAvoiddata processing speed
Core Design Contradiction:
ReliabilityVSSpeed

Solution Approach 1:

The patent implements a dynamic mode-switching mechanism where the system can operate in user-mode for normal high-performance operations and switch to kernel-mode only when necessary (e.g., when application unresponsiveness is detected). This allows the system to maintain high speed during normal operation while ensuring reliability when needed.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system includes self-diagnostic capabilities to detect application unresponsiveness and automatically trigger kernel-mode intervention without requiring manual intervention. The helper process monitors application state and can take over network operations autonomously when the application freezes.

Inventive Principle:
Principle #25Self-service

3Productivity

If the system waits for application responsiveness before processing network data, then resource utilization is optimized, but data transmission time is increased

Engineering Contradiction:
Improveresource utilizationVSAvoiddata transmission delay
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent implements preliminary monitoring where the system continuously checks application responsiveness in the background. When unresponsiveness is detected, the kernel-mode helper process is already prepared to take over network operations immediately, minimizing the time loss while still optimizing resource utilization during normal operation.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent ensures continuous network processing capability by maintaining both user-mode and kernel-mode processing paths. The kernel-mode path remains ready to intervene when needed, ensuring continuous useful action without interruption even when the application becomes unresponsive.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS11146508B2Data processing system
Publication Date: 2021.10.12 XILINX INC
  • US11146508B2 patent drawing
  • US11146508B2 patent drawing
  • US11146508B2 patent drawing

AI summary

A data processing system has a poll mode driver and a library supporting protocol processing. The poll mode driver and the library are non-operating system functionalities. An application is provided. An operation system is configured while executing in kernel mode and in response to the application being determined to be unresponsive, use a helper process being an operating system functionality executing at user-mode to cause a receive or transmit mode of the application to continue.