Dynamic Service Discovery Framework for Memory Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In multi-process computing environments, inter-process communication poses challenges such as unnecessary service instantiation and security risks due to indiscriminate access to all available services, leading to inefficient memory usage and potential security vulnerabilities.

Innovation Solution

A service discovery mechanism using linked frameworks, where a framework scanning module identifies available services and a service verification module grants access only to requested services, managing instance designations to optimize memory usage and enhance security by restricting access to authorized services.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If all services are made available in a global namespace for inter-process communication, then applications can access any service, but memory usage increases due to unnecessary service instantiation and security risks arise from indiscriminate access

Engineering Contradiction:
Improveservice accessibilityVSAvoidmemory usage
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The patent implements a local quality principle by transitioning from a global namespace to application-specific service namespaces. Each application receives only the services it needs based on its framework links, creating localized service visibility. This resolves the contradiction by making service accessibility specific to each application's needs rather than universally available, thereby reducing unnecessary service instantiation in memory while maintaining appropriate access rights.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent applies segmentation by dividing the monolithic global service namespace into multiple isolated namespaces, each associated with a specific application or framework. The service registry is segmented so that applications only see services from their linked frameworks. This segmentation reduces the total number of services loaded into memory for each application while maintaining versatile access to needed services through the framework linkage mechanism.

Inventive Principle:
Principle #1Segmentation

2Adaptability or versatility

If all services are made available in a global namespace, then applications have broad access to functionality, but security risks increase due to indiscriminate access to services

Engineering Contradiction:
Improveservice accessibilityVSAvoidsecurity risks
Core Design Contradiction:
Adaptability or versatilityVSObject-affected harmful factors

Solution Approach 1:

The patent implements local quality by creating application-specific service namespaces that limit visibility to only those services linked through the application's frameworks. This localized service exposure maintains adaptability within bounds while eliminating the security risk of universal access. Applications cannot access services outside their namespace, preventing unauthorized or unintended service interactions.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent introduces an intermediary mechanism (the framework linkage system and namespace manager) that mediates between applications and services. Rather than direct access to a global namespace, applications must go through the framework linkage intermediary which enforces access rules. This intermediary filters and controls service access, maintaining versatility for authorized services while blocking unauthorized access paths.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Speed

If services are instantiated in memory for all applications, then service access is fast and direct, but memory consumption increases unnecessarily

Engineering Contradiction:
Improveservice access speedVSAvoidmemory consumption
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The patent applies local quality by instantiating services only in the memory spaces of applications that have legitimate needs for them, determined through framework linkage. Services are not universally instantiated across all applications but are locally instantiated only where needed. This maintains fast direct access for authorized applications while eliminating unnecessary memory consumption from services that no application requires.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system implements self-service through on-demand service instantiation triggered by application requests. When an application needs a service, the system checks framework linkages and instantiates the service only if the application has proper access rights. This self-regulating mechanism ensures services are available when needed (maintaining speed) while avoiding premature or unnecessary instantiation that would waste memory.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS10019598B2Dynamic service discovery
Publication Date: 2018.07.10 APPLE INC
  • US10019598B2 patent drawing
  • US10019598B2 patent drawing
  • US10019598B2 patent drawing

AI summary

When an application is launched, a framework scanning module scans a plurality of frameworks linked against by the application to generate a list of available services. When the application makes a request of a particular service, a service verification module compares the requested service to the list of available services and if the requested service is found in the list of available services, sends a signal to the application, the signal allowing access to the requested service for the application. Otherwise, access to the requested service is denied.