Embedded System Development Tool Automating Root File System Integration

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The development of embedded systems is complex and time-consuming due to the need for significant domain knowledge of software and hardware, and the process of selecting and integrating software packages into a root file system for limited storage devices like smart phones and set-top boxes.

Innovation Solution

An embedded system development tool that receives user input to select and integrate software packages into a root file system, automating the process by providing a user interface, package selection, integration, and script creation for application startup, reducing the need for deep domain knowledge and streamlining the development process.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a designer manually selects and integrates software packages into a root file system for an embedded system, then the system can be customized for specific functions, but the development process becomes complicated and time-consuming

Engineering Contradiction:
Improvecustomization for specific functionsVSAvoiddevelopment process complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent applies preliminary action by pre-configuring software packages into standardized root file system templates that are tailored to specific embedded system types (e.g., set-top boxes, PDAs, smartphones). These templates include pre-selected software packages and configurations optimized for particular functions, allowing designers to quickly deploy customized systems without manual package selection and integration, thereby reducing development complexity while maintaining adaptability.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If a designer manually debugs an abnormal root file system, then the system can be corrected, but significant time is spent on the debugging process

Engineering Contradiction:
Improveroot file system operationVSAvoiddebugging time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent implements feedback mechanisms through automated testing and validation processes that verify root file system correctness after integration. The system provides feedback on configuration errors, compatibility issues, and operational abnormalities, enabling rapid identification and correction of problems without time-consuming manual debugging. This automated feedback loop maintains high reliability while minimizing the time lost to debugging activities.

Inventive Principle:
Principle #23Feedback

3Adaptability or versatility

If Linux operating system is used in embedded systems with limited storage space, then open source availability is achieved, but storage space constraints require careful package selection

Engineering Contradiction:
Improveopen source availabilityVSAvoidpackage selection complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent applies segmentation by dividing the Linux operating system into modular root file system templates, each tailored to specific embedded system types and storage capacity constraints. These segmented templates contain pre-selected software packages appropriate for particular functions (e.g., multimedia processing for set-top boxes, communication functions for smartphones), allowing designers to choose templates that match storage limitations without needing to manually evaluate individual package sizes and dependencies, thus reducing package selection complexity while maintaining open source flexibility.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS9244672B2Optimization utility for developing embedded systems
Publication Date: 2016.01.26 RED HAT INC
  • US9244672B2 patent drawing
  • US9244672B2 patent drawing
  • US9244672B2 patent drawing

AI summary

A method and apparatus for optimizing the development of an embedded system for a target device. The method may include selecting a set of packages corresponding to the class of an embedded system from various packages available for installation, and integrating the set of packages into a root file system. The method may further include receiving user input identifying at least one application to be used with the embedded system, integrating packages associated with the identified application into the root file system, and loading an image of the root file system to the target device.