Virtualized I/O Resource Discovery Table for Shared Hardware Protection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing I/O virtualization technologies face challenges in protecting and managing shared hardware resources among multiple processing elements, as processes must ensure data protection and maintain the perception of sole resource usage while allowing flexible access modes for diagnostic and development purposes.

Innovation Solution

A virtualized I/O device system that includes programmed I/O configuration registers and a resource discovery table, where a system processor allocates and manages hardware resources among physical and virtual functions, using encoded values to indicate allocation and sharing status, and a device driver discovers and accesses allocated resources through a resource discovery table.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If hardware resources are shared among multiple processing elements through I/O virtualization, then hardware resource utilization is improved, but data protection and access control become problematic

Engineering Contradiction:
Improvehardware resource utilizationVSAvoiddata protection
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent segments hardware resources into individually addressable units and creates separate resource discovery table entries for each resource. This segmentation allows the system to track and control access to each resource independently while maintaining overall sharing capabilities, thus resolving the contradiction between resource utilization and data protection.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces resource discovery tables as an intermediary mechanism between processing elements and hardware resources. These tables store encoded allocation information and serve as a mediator that enables secure resource sharing by verifying access permissions before granting access to shared hardware resources.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If processes are allowed to access shared hardware resources, then resource flexibility is improved, but unauthorized access and resource conflicts increase

Engineering Contradiction:
Improveresource access flexibilityVSAvoidunauthorized access
Core Design Contradiction:
Adaptability or versatilityVSObject-affected harmful factors

Solution Approach 1:

The patent implements preliminary action by pre-populating resource discovery tables with encoded allocation information before resource access occurs. The system determines and records resource allocation status in advance, allowing processing elements to check permissions before attempting access, thus preventing unauthorized access while maintaining flexible resource sharing.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent employs feedback mechanisms where processing elements query the resource discovery tables to receive information about resource allocation status and sharing permissions. This feedback loop enables processes to adapt their access behavior based on current allocation states, ensuring flexible yet controlled access to shared hardware resources.

Inventive Principle:
Principle #23Feedback

3Measurement precision

If resource allocation information is tracked for each function, then access control precision is improved, but system complexity increases

Engineering Contradiction:
Improveaccess control precisionVSAvoidsystem complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent merges the resource tracking functionality into existing I/O virtualization infrastructure by integrating resource discovery tables with function allocation mechanisms. This consolidation allows precise tracking of resource allocation for each function while avoiding the complexity of separate tracking systems, thus resolving the contradiction between access control precision and system complexity.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS8458368B2System and method for discovering and protecting shared allocated resources in a shared virtualized I/O device
Publication Date: 2013.06.04 ORACLE AMERICAN INC
  • US8458368B2 patent drawing
  • US8458368B2 patent drawing
  • US8458368B2 patent drawing

AI summary

A system includes a virtualized I/O device coupled to one or more processing units. The virtualized I/O device includes programmed I/O (PIO) configuration registers corresponding to hardware resources, and a storage for storing a resource table that includes a plurality of entries. Each entry corresponds to a respective hardware resource. A system processor may allocate the hardware resources to functions that may include physical and virtual functions, and may program each entry of the resource discovery table for each function with an encoded value that indicates whether a requested hardware resource has been allocated to a requesting process, and whether the requested hardware resource is shared with another function. Processing units may execute a device driver instance associated with a given process to discover allocated resources by requesting access to the resource discovery table. The virtualized I/O device protects the resources by checking access requests against the resource discovery table.