Channel Adapter Resource Partitioning via Hardware Registers
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing data processing systems in System Area Networks (SANs) lack the ability to logically partition resources within a single channel adapter, leading to all resources being allocated to a single partition, which restricts the sharing of hardware resources among multiple operating systems and increases maintenance costs.
Innovation Solution
The implementation of a method and system that uses hardware registers within each resource of a channel adapter to assign specific resources to different partitions, with a hypervisor controlling access and enforcing partitioning by storing a partition identifier in each resource's hardware register, ensuring that resources can only be accessed by the partition they are assigned to.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If an entire channel adapter is allocated to a single partition, then the operating system has complete and direct control of the hardware resources, but the system cannot support multiple operating systems sharing the same channel adapter resources
Solution Approach 1:
The patent segments the channel adapter resources into multiple logical partitions, where each partition can be independently assigned to different operating systems. The channel adapter is divided into multiple queue pairs, each associated with a specific partition identifier, allowing simultaneous access by multiple OS environments while maintaining isolation between them.
Solution Approach 2:
The patent introduces a new dimension of partitioning by adding partition identifier fields to the channel adapter resource structures. This creates a logical layer above the physical hardware, enabling multiple operating systems to share the same physical channel adapter through virtualized resource allocation without interfering with each other.
2Adaptability or versatility
If all channel adapter resources are assigned to one partition, then the system structure is simple, but the system versatility decreases and maintenance costs increase
Solution Approach 1:
The patent makes the channel adapter universal by enabling it to serve multiple operating systems simultaneously through partitioning. The same physical channel adapter resources can be dynamically allocated to different partitions based on demand, allowing one hardware component to fulfill multiple functional roles for different OS environments.
Solution Approach 2:
The patent applies local quality by assigning specific partition identifiers to specific queue pairs and resources within the channel adapter. Each resource can have different partitioning characteristics tailored to its usage requirements, allowing fine-grained control over which resources are shared and which are dedicated to specific operating systems.
3Productivity
If hardware resources are shared among multiple partitions, then resource allocation efficiency improves, but access control complexity increases
Solution Approach 1:
The patent implements self-service access control where the channel adapter hardware automatically enforces partition-based access control without requiring external software intervention. The partition identifier checks are performed directly in the hardware, allowing resources to be shared efficiently while maintaining security through automated enforcement rather than manual software-based access control.
4Adaptability or versatility
If a single channel adapter serves multiple operating systems, then maintenance costs are reduced, but resource isolation between partitions is compromised
Solution Approach 1:
The patent segments channel adapter resources into isolated partitioned units with dedicated queue pairs and completion queues for each partition. This segmentation ensures that operations in one partition cannot interfere with or access resources allocated to other partitions, maintaining reliability and isolation while enabling resource sharing at the channel adapter level.
Data Source
AI summary
A method and system are disclosed for logically partitioning resources of a single channel adapter for use in a system area network. Each resource includes a partition identifier register within which is stored a partition identifier. A first one of the resources is assigned to a first partition by storing a first partition identifier in the partition identifier register within the first one of the resources. A second one of the resources is assigned to a second partition by storing a second partition identifier in the partition identifier register within the second one of the resources. Partitioning of the resources is enforced by permitting access to the first resource by only the first partition and permitting access to the second resource by only the second partition by checking the partition identifiers of each resource.


