Kernel Space Data Buffer Zero-Copy I/O Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In UNIX-like operating systems, the conventional memory addressing scheme requires data copying between user and kernel spaces for I/O operations, which negatively impacts performance.

Innovation Solution

A system is implemented where data transfer is confined to the kernel space, with only address information passing between user and kernel spaces, utilizing a virtual tape library system with a buffer manager thread and disk I/O thread to manage data storage and retrieval, avoiding unnecessary data copying.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If data copying between user and kernel spaces is performed for I/O operations, then data transfer can be accomplished using conventional memory addressing schemes, but I/O performance deteriorates due to the copying overhead

Engineering Contradiction:
ImproveI/O performanceVSAvoiddata copying time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent extracts the data copying operation from the conventional I/O process by implementing a zero-copy mechanism where data remains in kernel space buffers and is directly accessed by user space processes through shared memory mappings, eliminating the detrimental copying step while maintaining data transfer functionality

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces a buffer manager as an intermediary component that manages kernel space buffers and coordinates access between user space processes and kernel space data, enabling direct data access without copying while maintaining the structured memory addressing scheme

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of operation

If data is copied between user and kernel spaces, then data transfer can be performed using standard memory addressing, but system complexity increases due to the additional copying layer

Engineering Contradiction:
Improvedata transfer operationVSAvoidmemory addressing complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent merges the user space and kernel space address spaces by establishing a shared memory mapping mechanism where both spaces can access the same kernel buffers directly, reducing the need for separate copying operations and simplifying the overall data transfer process

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS8650339B2Control of data transfer
Publication Date: 2014.02.11 HEWLETT PACKARD ENTERPRISE DEV LP
  • US8650339B2 patent drawing
  • US8650339B2 patent drawing
  • US8650339B2 patent drawing

AI summary

A system for managing data transfer using an operating system address space, the address space comprising a user space and a kernel space, the system comprising a data buffer in the kernel space and a control module for the data buffer in the user space, the system further comprising a network protocol handling module that receives an I/O request in the kernel space for performing an I/O operation on the data buffer. The network protocol handling module notifies the control module of the I/O request via an upper level protocol handling module. The control module maintains address pointers in the data buffer and informs the network protocol handling module of the buffer address at which the I/O operation is to be performed.