Kernel Token System for Reliable Cross-Process Response Delivery

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In multi-processing computing environments, there is no guarantee that a first process will receive a response from a remote process performing work on its behalf, as intervening processes may terminate or fail, preventing the response from reaching the first process.

Innovation Solution

The implementation of a token set system, where a first process generates an Action object and requests a token set from the kernel, ensuring that only one process can hold the token at a time, allowing the response to be passed directly from the remote process to the first process through the kernel, thereby guaranteeing delivery.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a first process passes an Action object through one or more intervening processes to reach a remote process, then the remote process can perform work on behalf of the first process, but the first process cannot guarantee receiving a response if any intervening process terminates or fails

Engineering Contradiction:
Improveresponse delivery guaranteeVSAvoidresponse tracking mechanism
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The kernel acts as an intermediary between the first process and the remote process. The kernel receives the Action object and first token from the first process, tracks the object through intervening processes, and directly delivers the response back to the first process. This mediator approach ensures reliable response delivery without requiring the first process to trust intervening processes with response forwarding.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system creates a copy of the Action object that can be tracked independently through the system. The kernel maintains a reference to this copied object and uses it to ensure the response reaches the original first process, even if intervening processes fail. This copying mechanism decouples the response delivery path from the work execution path.

Inventive Principle:
Principle #26Copying

2Reliability

If the kernel tracks the Action object and enforces token uniqueness to guarantee response delivery, then response reliability improves, but the kernel's processing overhead and system complexity increase

Engineering Contradiction:
Improveresponse delivery guaranteeVSAvoidkernel processing overhead
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The kernel performs preliminary actions by receiving and validating the token set before passing the Action object to the remote process. The kernel establishes the tracking relationship and enforces token uniqueness upfront, rather than continuously monitoring throughout the process. This preliminary setup reduces ongoing processing overhead while maintaining reliability guarantees.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The token set mechanism enables self-service tracking where the tokens themselves carry the necessary information for the kernel to enforce uniqueness and track the Action object. The first token embedded in the Action object and the second token held by the first process automatically validate response authenticity without requiring complex kernel intervention, reducing processing overhead.

Inventive Principle:
Principle #25Self-service

3Reliability

If the first process holds a second token to validate the response, then response authentication improves, but the complexity of token management and validation increases

Engineering Contradiction:
Improveresponse authenticationVSAvoidtoken validation process
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The response validation process merges multiple checks into a single operation. The first process validates the response by checking if the embedded first token matches the expected token and if the second token held by the process is still valid. This combined validation approach ensures authentication while simplifying the operation compared to separate verification steps.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS9900275B2Tracking object across processes
Publication Date: 2018.02.20 APPLE INC
  • US9900275B2 patent drawing
  • US9900275B2 patent drawing
  • US9900275B2 patent drawing

AI summary

Systems and methods are disclosed for tracking the lifecycle of an object across processes and for tracking the lifecycle of processes that are processing the object. A first process, P1 can generate an Action object representing work to be performed by another process, PN. The Action object can carry a payload of arbitrary information, an action handler, a handle to a response queue, and a timeout value. A token set can be requested from a kernel of an operating system. A first token in the set can be held by one process at a time. The kernel enforces that rule. The kernel can track the location of the first token. A copy of the Action object is viable for sending a response if it holds the first token. An Action Listener within P1 holds the second token of the set and uses it to validate a response received by P1 from a remote process. The remote process performs the work of the Action object and guarantees a response back to P1, through the kernel, without passing the response back through intervening processes P2 through PN-1.