Software Resource Allocation via Interrupt-Driven Group Limits

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing resource utilization management technologies in computer systems impose significant overhead and performance reductions, particularly when enforcing share allocation schemes, leading to situations where one executable in a group consumes all resources, preventing others from accessing them for extended periods.

Innovation Solution

A method and system that dynamically manage resource utilization by identifying groups, decrementing utilization limits and reserves in response to system interrupts, and scheduling executables based on available limits and reserves to ensure fair access to resources, using software routines to allocate and account for processor resources.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If known capping technologies are used to limit resource utilization by executables, then resource allocation control is improved, but application performance deteriorates due to significant overhead

Engineering Contradiction:
Improveapplication performanceVSAvoidresource management overhead
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The resource management system is segmented into distinct software routines: an allocator routine that establishes utilization limits, an accountant routine that tracks and decrements limits in response to interrupts, and a scheduler routine that enforces limits. This segmentation distributes the management overhead across specialized components rather than a single complex system, reducing overall overhead while maintaining control.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system implements self-service through the accountant routine that automatically decrements utilization limits in response to system interrupts without requiring external intervention. The scheduler routine automatically verifies limits before granting resource access, creating a self-regulating system that reduces management overhead while maintaining precise control.

Inventive Principle:
Principle #25Self-service

2Productivity

If known capping technologies enforce share allocation schemes, then resource allocation control is improved, but resource access fairness deteriorates as single executables consume all resources

Engineering Contradiction:
Improveresource allocation efficiencyVSAvoidresource access fairness
Core Design Contradiction:
ProductivityVSEase of operation

Solution Approach 1:

The accountant routine provides continuous feedback by tracking utilization limits and automatically decrementing them in response to system interrupts. This feedback mechanism prevents any single executable from consuming all resources by enforcing limits in real-time, ensuring fair access while maintaining allocation efficiency.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The allocator routine performs preliminary action by establishing utilization limits for each group before executables access resources. The scheduler routine verifies these pre-established limits before granting access, preventing resource monopolization before it can occur while maintaining efficient allocation.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If utilization limits are enforced at group level, then resource isolation between groups is improved, but intra-group resource distribution deteriorates

Engineering Contradiction:
Improvegroup isolationVSAvoidintra-group resource distribution
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The system segments resource management into group-level isolation (enforced by the scheduler verifying group limits) and intra-group distribution (handled by the accountant decrementing limits for individual executables). This segmentation maintains reliable group isolation while improving intra-group resource distribution through automated tracking.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS8108871B2Controlling computer resource utilization
Publication Date: 2012.01.31 VALTRUS INNOVATIONS LTD
  • US8108871B2 patent drawing
  • US8108871B2 patent drawing
  • US8108871B2 patent drawing

AI summary

In one embodiment, a method comprises (i) identifying a group associated with an executable that is using a resource of a computer system, (ii) decrementing a group utilization limit for the resource when the group utilization limit is greater than zero, (iii) decrementing a utilization reserve for the group when the group utilization limit for the resource equals zero, wherein operations (i)-(iii) are performed by a software routine responsive to system interrupts, and (iv) scheduling another executable to use the resource, wherein the scheduling verifies that (a) the another executable belongs to a group that has a non-zero group utilization limit for the resource or (b) the another executable belongs to a group that has a non-zero utilization reserve.