Android Seed Process IPC Isolation for Linux

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current methods for building an Android running environment on a Linux system using container tools like LXC result in resource-intensive and bloated systems, with slow startup times and inadequate control over individual processes.

Innovation Solution

A method and device that create a lightweight Android running environment by initiating a creation request for an Android environment seed process via an IPC interface, separating and mounting file systems, and creating basic service processes or threads, allowing for efficient resource usage and fast service startup through a fork-based inheritance mechanism.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If container tools like LXC are used to build Android running environment, then the Android service can be isolated and managed, but the system becomes resource-intensive and bloated with slow startup times

Engineering Contradiction:
Improveservice isolationVSAvoidstartup time
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent extracts only the essential Android runtime components and file systems needed for specific services, rather than using a complete Android environment in a container. This selective extraction reduces resource consumption and startup time while maintaining service isolation through the seed process mechanism.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The Android file system is segmented into multiple mounted file systems (e.g., /system, /vendor, /data) that are selectively mounted based on service requirements. The seed process is also segmented into basic services that can be independently managed, allowing partial Android environment initialization rather than full system startup.

Inventive Principle:
Principle #1Segmentation

2Reliability

If container tools like LXC are used to build Android running environment, then the Android service can be isolated and managed, but the system complexity increases

Engineering Contradiction:
Improveservice isolationVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The seed process acts as an intermediary between the Linux service and the Android runtime environment. It receives service startup requests, prepares the necessary Android file systems and basic services, and launches the target service. This intermediary simplifies the overall system architecture compared to full containerization while maintaining service isolation.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Adaptability or versatility

If a complete Android file system is mounted for every service, then all Android functionalities are available, but resource consumption increases

Engineering Contradiction:
ImproveAndroid functionalityVSAvoidresource consumption
Core Design Contradiction:
Adaptability or versatilityVSUse of energy by moving object

Solution Approach 1:

Different file systems are mounted with different permissions and accessibility levels based on service requirements. The seed process mounts only the specific file systems needed for each service (e.g., /system for system services, /vendor for hardware abstraction layer), rather than mounting the complete Android file system for all services. This localizes file system access to what is actually needed.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent implements partial action by mounting only the necessary portions of the Android file system hierarchy required for specific services. Instead of mounting the entire Android file system tree, only relevant directories and file systems are mounted, reducing resource consumption while providing sufficient functionality for the targeted service.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS20240111549A1Method and apparatus for constructing android running environment
Publication Date: 2024.04.04 DOUYIN VISION CO LTD
  • US20240111549A1 patent drawing
  • US20240111549A1 patent drawing

AI summary

Disclosed in the present application are a method and apparatus for constructing an Android running environment. The method in the present application includes: when a Linux service needs to start an Android service, the Linux service initiating a creation request for an Android environment seed process by means of an inter-process communication (IPC) interface, wherein the creation request includes a path and a running parameter of a program corresponding to the Android service that needs to be started; and after receiving the creation request, the Android environment seed process running the Android service in the manner of deriving a fork process.