Operating System Service for Persistent Program Execution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing approaches to configuring a computer system for persistent program execution require administrator intervention, locking the system in a fixed configuration, which hampers user and developer flexibility and prevents changes, such as updating software, thereby limiting other system functionalities.

Innovation Solution

An operating system service with a registration service that registers a manifest defining a persistence mode for user-controllable programs, and a runtime service that detects and rejects termination requests, restarts the program if terminated, ensuring persistent execution without requiring elevated credentials.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the system is locked in a fixed configuration to prevent reconfiguration without administrator intervention, then program persistence is ensured, but user and developer flexibility to change system behavior is hampered

Engineering Contradiction:
Improveprogram persistenceVSAvoidsystem reconfigurability
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The system dynamically adjusts the persistence mechanism based on user credentials. Administrator users can reconfigure persistence settings when needed, while regular users benefit from automatic persistence without modification. This dynamic approach allows the system to be both reliable (persistently executing programs for regular users) and adaptable (reconfigurable by administrators when necessary).

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

Different persistence behaviors are applied to different user types. Administrator accounts have the ability to modify persistence configurations, while standard user accounts experience fixed persistence. This local differentiation resolves the contradiction by providing reliability where needed (for program execution) and adaptability where appropriate (for system configuration changes).

Inventive Principle:
Principle #3Local quality

2Reliability

If administrator intervention is required to configure persistent execution, then system security is maintained, but developer ability to ensure program persistence is lost

Engineering Contradiction:
Improvesystem securityVSAvoidprogram configuration simplicity
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The persistence configuration system enables self-service for regular users through automatic detection and application of persistence settings. When a user installs a program, the system automatically configures persistent execution without requiring the user to contact an administrator or manually configure complex settings. This self-service approach maintains security (by using authenticated user contexts) while dramatically simplifying the configuration process for developers and users alike.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system introduces an intermediary persistence service that acts as a mediator between program installation and persistent execution. This service automatically handles the configuration that would otherwise require administrator intervention, translating simple user actions into secured persistent execution contexts. The intermediary layer maintains security protocols while eliminating the need for direct administrator involvement in routine program persistence.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Duration of action of stationary object

If the system is configured for persistent execution, then program continuity is maintained, but other system functionalities are hampered

Engineering Contradiction:
Improveprogram execution durationVSAvoidsystem functionality
Core Design Contradiction:
Duration of action of stationary objectVSAdaptability or versatility

Solution Approach 1:

The persistence mechanism is segmented to apply only to specific user contexts and program types rather than locking down the entire system. Regular user programs automatically receive persistence, while administrator functions and system-critical operations maintain their existing configuration capabilities. This segmentation allows persistent execution to coexist with other system functionalities without conflict.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system dynamically determines persistence application based on real-time user context and program characteristics. When administrators need to perform configuration tasks or when system functionality requires reconfiguration, the persistence mechanism temporarily yields control. This dynamic behavior ensures that program continuity is maintained for regular operations while preserving system adaptability when other functionalities need to be modified.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11915013B2Operating system service for persistently executing programs
Publication Date: 2024.02.27 MICROSOFT TECHNOLOGY LICENSING LLC
  • US11915013B2 patent drawing
  • US11915013B2 patent drawing
  • US11915013B2 patent drawing

AI summary

An operating system service for persistently executing programs comprises a registration service configured to register a manifest defining a persistence mode of a user-controllable program. The operating system service further comprises a runtime service configured, based on the persistence mode defined via the manifest, to detect and reject termination requests for the program, and to detect that the program has terminated and restart execution of the program.