Storage Controller Background Process Priority Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Storage controllers face challenges in balancing the execution of background processes that scrub boot storage for operational correctness with foreground processes that manage system configuration data, often leading to priority conflicts and potential starvation of background processes due to high demand from foreground processes.

Innovation Solution

Implementing a mechanism where background processes are configured to periodically scrub the boot storage with adjustable priorities, allowing foreground processes to suspend, abort, or throttle the background processes based on predetermined thresholds and intervals to ensure both timely completion of foreground tasks and periodic execution of background tasks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If foreground processes are given high priority to meet performance requirements, then productivity of foreground tasks is improved, but background processes may be starved and fail to execute periodically

Engineering Contradiction:
Improveforeground process completion speedVSAvoidbackground process periodic execution
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements dynamic priority adjustment where the background process priority is not fixed but changes based on system conditions. When foreground processes are waiting or blocked, the background process priority increases to ensure it can execute. This dynamic adjustment resolves the contradiction by making the priority system adaptive rather than static, allowing the background process to execute periodically without being permanently starved by foreground processes.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent employs feedback mechanisms where the system monitors foreground process states and adjusts background process priority accordingly. When foreground processes complete or are blocked, this feedback triggers a priority increase for the background process, ensuring it gets executed. This feedback loop resolves the contradiction by continuously balancing foreground productivity with background reliability based on real-time system conditions.

Inventive Principle:
Principle #23Feedback

2Reliability

If background process priority is increased to ensure periodic execution, then reliability of boot storage scrubbing is improved, but foreground process completion time increases

Engineering Contradiction:
Improvebackground process execution guaranteeVSAvoidforeground process completion time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent uses dynamic priority adjustment to increase background process priority only when foreground processes are waiting or blocked, not continuously. This temporary priority boost ensures the background process executes periodically (improving reliability) without causing prolonged delays to foreground processes, thus minimizing time loss while maintaining execution guarantees.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent implements periodic execution of the background process by monitoring foreground process states and triggering background execution at appropriate intervals. This periodic action ensures the background process scrubs boot storage regularly (improving reliability) without continuously preempting foreground processes, thereby limiting the time loss to specific periodic intervals rather than continuous delays.

Inventive Principle:
Principle #19Periodic action

3Productivity

If foreground processes are allowed to run without interruption, then productivity is improved, but boot storage operational correctness may deteriorate due to lack of scrubbing

Engineering Contradiction:
Improveforeground process throughputVSAvoidboot storage operational correctness
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements preliminary action by monitoring foreground process states and proactively increasing background process priority when foreground processes are blocked or waiting. This preliminary adjustment ensures the background process can execute before boot storage corruption occurs, maintaining operational correctness without significantly impacting foreground throughput since the priority change happens only when foreground processes are not actively consuming resources.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11157355B2Management of foreground and background processes in a storage controller
Publication Date: 2021.10.26 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11157355B2 patent drawing
  • US11157355B2 patent drawing
  • US11157355B2 patent drawing

AI summary

A background process is configured to periodically scrub a boot storage of a storage controller to ensure operational correctness of the boot storage. One or more foreground processes store a system configuration data of the storage controller in the boot storage of the storage controller. The background process and the one or more foreground processes are executed to meet predetermined performance requirements for the background process and the one or more foreground processes.