Foreground Process State Transition for Hang-Up Signal Prevention

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In information handling systems, there is a need to manage processes with unpredictable execution times, where users cannot anticipate how long a software process will take, leading to potential termination due to user intervention or system events like log-outs.

Innovation Solution

The operating system loads a process in foreground mode, allows it to execute, and then moves it to background mode upon user command, ignoring termination requests until the process completes, using commands like 'nohup' or 'nohup_now' to prevent hang-up signals from interrupting the process.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If a process is run in foreground mode for user interaction, then the user can monitor and control the process, but the user cannot log out or disconnect without potentially terminating the process

Engineering Contradiction:
Improveuser interaction with processVSAvoidprocess continuity
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The system dynamically changes the process state from foreground to background mode based on user commands. The operating system allows the process to be moved between execution modes, enabling the user to disconnect while maintaining process continuity through state transformation.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The operating system acts as an intermediary between the user and the process. It manages the process state and intercepts termination signals, allowing the user to log out without directly terminating the process. The OS mediates the disconnect by blocking hang-up signals while maintaining process execution.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of operation

If a process is moved to background mode to allow user disconnect, then the user can log out without affecting the process, but the process may be terminated by hang-up signals

Engineering Contradiction:
Improveuser disconnect capabilityVSAvoidhang-up signal termination
Core Design Contradiction:
Ease of operationVSObject-affected harmful factors

Solution Approach 1:

The operating system applies preliminary anti-action by blocking hang-up signals before they can terminate the process. When a process is in background mode, the OS intercepts and prevents hang-up signals from reaching the process, thereby preventing premature termination before it occurs.

Inventive Principle:
Principle #9Preliminary anti-action

Solution Approach 2:

The system converts the potentially harmful hang-up signal into a beneficial feature by using signal blocking mechanisms. The blocked signals that would normally terminate the process are instead used to maintain process continuity, allowing users to disconnect without losing process execution.

Inventive Principle:
Principle #22Blessing in disguise (Convert harm into benefit)

3Reliability

If the user waits for long-running processes to complete before disconnecting, then the process can finish execution, but the user loses productivity time

Engineering Contradiction:
Improveprocess completionVSAvoiduser waiting time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system enables dynamic state change of processes from foreground to background mode, allowing users to disconnect while processes continue running. This dynamic transition eliminates the need for users to wait for process completion before disconnecting, thereby reducing user waiting time while maintaining process completion reliability.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS7962911B2Method and apparatus for preventing undesired termination of a process in an information handling system
Publication Date: 2011.06.14 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US7962911B2 patent drawing
  • US7962911B2 patent drawing
  • US7962911B2 patent drawing

AI summary

An information handling system (IHS) employs operating system software to manage IHS resources. The operating system software manages software application programs as processes executing within the IHS. The processes run in foreground and background mode within the IHS. Processes running in foreground mode are subject to hang-up events with negative process output results, such as output data loss. In one embodiment, the operating system software supports a “no hang-up now” command for use with processes running in foreground mode. The “no hang-up now” command provides system users the ability to hang-up or log-out of an IHS terminal without negative effects on the current foreground process. A user may invoke the “no hang-up now” command after execution of the foreground process is already underway. The no hang-up command moves the foreground application to the background for continued execution. A signal handler program prevents termination of the background process until the process completes.