Dual-Buffer Element Processing for Overrun and Deadlock Prevention

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing buffer management techniques face issues of buffer overrun and deadlock, leading to inefficient processing and potential data loss, particularly in real-time systems like electronic trading platforms, due to the need for processes to wait until buffer capacity reduces, which can cause deadlock and require system restarts.

Innovation Solution

Implementing a dual-buffer system where elements are added to a secondary buffer when the primary buffer reaches a threshold, preventing deadlock and allowing continuous processing without waiting, thus ensuring efficient and flexible use of memory resources.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If flow control is activated when buffer approaches capacity, then buffer overrun is prevented, but process blocking and deadlock risk increase

Engineering Contradiction:
Improvebuffer overrun preventionVSAvoidprocess blocking
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The patent divides the buffer management into two separate buffers: a first buffer for normal processing and a second buffer for overflow handling. This segmentation allows the system to prevent buffer overrun in the first buffer while avoiding process blocking by providing an alternative destination (second buffer) for elements when the first buffer is full, thereby resolving the contradiction between reliability and ease of operation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The second buffer acts as an intermediary between the element source and the first buffer. When the first buffer is full, elements are temporarily stored in the second buffer instead of blocking the adding process. This intermediary mechanism prevents both buffer overrun (by limiting first buffer capacity) and process blocking (by providing alternative storage), thus resolving the technical contradiction.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If processes wait for buffer capacity to reduce, then buffer overrun is avoided, but processing speed decreases

Engineering Contradiction:
Improvebuffer overrun preventionVSAvoidprocessing speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

By segmenting the buffer system into a first buffer (with strict capacity limits for overrun prevention) and a second buffer (for overflow handling), the patent enables continuous processing without waiting. Elements can be added to the second buffer even when the first buffer is full, maintaining processing speed while preventing overrun in the primary buffer.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The dual-buffer system enables continuous useful action by ensuring that the element adding process never blocks. When the first buffer is full, elements are redirected to the second buffer, allowing the adding process to continue uninterrupted. This eliminates waiting time and maintains processing speed while still preventing buffer overrun in the first buffer.

Inventive Principle:
Principle #20Continuity of useful action

3Device complexity

If single buffer is used, then device complexity is low, but deadlock risk increases

Engineering Contradiction:
Improvebuffer structureVSAvoiddeadlock prevention
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The patent segments the buffer into two separate buffers (first buffer for normal operations, second buffer for overflow). This segmentation breaks the deadlock cycle by providing independent storage paths, eliminating the circular waiting condition that occurs in single-buffer systems where processes must wait for each other to free space.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The second buffer serves as an intermediary that breaks the deadlock cycle. When the first buffer is full, elements can be stored in the second buffer instead of blocking the adding process. This intermediary storage eliminates the circular dependency between processes, preventing deadlock while adding minimal complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Productivity

If buffer capacity is increased, then processing throughput improves, but memory requirements increase

Engineering Contradiction:
Improveprocessing throughputVSAvoidmemory requirements
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent segments the buffering capacity into two separate buffers with different roles. The first buffer maintains a controlled capacity for normal processing throughput, while the second buffer provides overflow handling. This segmentation allows the system to achieve high throughput during normal operation with smaller memory requirements, as the second buffer only handles overflow cases rather than serving as the primary processing buffer.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS20250307182A1Buffering elements for processing
Publication Date: 2025.10.02 TRADING TECHNOLOGIES INTERNATIONAL INC
  • US20250307182A1 patent drawing
  • US20250307182A1 patent drawing
  • US20250307182A1 patent drawing

AI summary

Techniques relating to buffers are disclosed. A first buffer may be for storing a number of elements for processing. Disclosed techniques include providing a second buffer for storing elements for adding to the first buffer, and adding an obtained element to the second buffer when the number of elements in the first buffer is greater than a first threshold. These techniques can prevent overrun of the first buffer while allowing the obtained element to be added to a buffer.