Parallel UNIX Command Administration via Dynamic Threading

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current tools for system administrators are inefficient in issuing UNIX commands to multiple systems, as they operate serially, leading to prolonged processing times that can take hours or days.

Innovation Solution

A method that allows for the automatic and parallel issuance of UNIX commands to multiple target systems via a computing device, utilizing a compiled application with an automatic command administration module that creates multiple threads to execute commands concurrently, conditioned on available memory, and includes error logging mechanisms.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If commands are issued serially to target systems using current tools, then system administrators can maintain simple tool operation, but the time required to issue commands to hundreds or thousands of systems becomes excessively long (hours or days)

Engineering Contradiction:
Improvecommand issuance speedVSAvoidtotal execution time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent segments the command execution process by creating multiple independent threads, each capable of issuing commands to target systems simultaneously. This divides the monolithic serial execution into parallel segments, dramatically reducing total execution time while maintaining tool simplicity through centralized management of the threading infrastructure.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transitions from one-dimensional serial execution to multi-dimensional parallel execution by introducing the thread dimension. Multiple threads operate concurrently across different target systems, adding a temporal parallelism dimension that transforms the execution model from sequential to simultaneous operations.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Productivity

If N threads are created to issue commands in parallel, then command issuance speed increases significantly, but memory consumption increases proportionally with the number of threads

Engineering Contradiction:
Improveparallel command execution capabilityVSAvoidmemory resources
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent implements dynamic thread management where the number of concurrent threads is not fixed but adapts based on available system resources. The system monitors memory availability and dynamically adjusts the thread pool size, allowing parallel execution to scale with available resources rather than consuming a static portion of memory.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the parameter of thread count from a static configuration to a dynamic variable that responds to system conditions. By monitoring memory availability and adjusting the number of active threads accordingly, the system optimizes the balance between parallel execution performance and resource consumption.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS9436514B2Automatic administration of UNIX commands
Publication Date: 2016.09.06 ORACLE INT CORP
  • US9436514B2 patent drawing
  • US9436514B2 patent drawing
  • US9436514B2 patent drawing

AI summary

Various techniques for automatically administering UNIX commands to target systems are disclosed. One method involves receiving information identifying a UNIX command and additional information identifying one or more target systems. The method then issues N instances of the UNIX command in parallel to the one or more target systems, where N is an integer greater than one. The N instances of the UNIX command are issued automatically, in response to receipt of the information and the additional information. In some situations, issuing the N instances of the UNIX command in parallel involves creating N threads, where each of the N threads is configured to issue a respective one of the N instances of the UNIX command to a respective one of the target systems.