Graphical User Interface Execution via Remote Software Containers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for providing graphical user interfaces on self-service terminals and point of sale terminals are inefficient, requiring extensive hardware resources and complex virtualization infrastructure, which increases costs and complexity, especially when handling GUI applications within microservices architectures.

Innovation Solution

The use of software containers on a remote server to execute and transmit graphical user interface applications and infrastructure components, eliminating the need for virtualization infrastructure and allowing multiple GUI applications to run on a single server, with data routing from user input devices to the server for updated display instructions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If virtual machines are used to execute GUI applications on terminals, then isolation and security are improved, but hardware resource requirements and system complexity increase

Engineering Contradiction:
ImprovesecurityVSAvoidvirtualization infrastructure
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system segments the GUI application execution environment into isolated software containers on the terminal and a orchestrator server. Each container runs independently with its own process space, file system, and network stack, providing security isolation without requiring full virtualization infrastructure. This segmentation allows multiple GUI applications to run concurrently on a single terminal while maintaining security boundaries.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent extracts the heavy virtualization infrastructure (hypervisors, virtualization layers) from the terminal system and replaces it with lightweight software containers. The containerization approach takes out the complex virtualization components while retaining the essential security and isolation benefits, reducing hardware resource requirements and system complexity.

Inventive Principle:
Principle #2Taking out (Extraction)

2Reliability

If virtual machines are deployed on server hardware to provide GUI applications, then application isolation is improved, but hardware resource usage and costs increase

Engineering Contradiction:
Improveapplication isolationVSAvoidhardware resource usage
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The system uses lightweight software containers instead of heavy virtual machines. Containers are more resource-efficient and can be created, modified, and destroyed quickly without the overhead of virtualization. This allows the system to provide application isolation while significantly reducing hardware resource usage and costs compared to traditional VM-based approaches.

Inventive Principle:
Principle #27Cheap short-living objects (Disposable)

3Adaptability or versatility

If multiple GUI applications are deployed on individual terminals, then application diversity is improved, but terminal hardware resources and costs increase

Engineering Contradiction:
Improveapplication diversityVSAvoidterminal hardware resources
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The terminal is designed as a universal platform that can run multiple different GUI applications through software containers. Instead of requiring dedicated hardware resources for each application, the terminal provides a shared environment where containers can be dynamically created and executed. This allows a single terminal to serve multiple functions and support diverse applications without increasing hardware resources.

Inventive Principle:
Principle #6Universality (Multi-functionality)

4Productivity

If software containers are used instead of virtual machines, then resource efficiency is improved, but compatibility with existing virtualization infrastructure may worsen

Engineering Contradiction:
Improveresource efficiencyVSAvoidcompatibility
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The system introduces an orchestrator server as an intermediary that manages software containers on terminals and coordinates with existing infrastructure. The orchestrator handles container lifecycle management, resource allocation, and communication, allowing software containers to integrate with existing systems while maintaining resource efficiency. This intermediary layer ensures compatibility without requiring full virtualization infrastructure.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS20240330025A1Graphical user interfaces
Publication Date: 2024.10.03 NCR VOYIX CORP
  • US20240330025A1 patent drawing
  • US20240330025A1 patent drawing
  • US20240330025A1 patent drawing

AI summary

A method, a computing system, and a computer program are disclosed. The method includes providing a first executable image file that includes first executable software associated with a graphical user interface application, executing the first executable image file as a first software container element that contains the first executable software and that is executable on one or more processors of a server that is remote from a computing device, transmitting display data associated with a graphical user interface to the computing device responsive to executing the first executable image file, and providing the graphical user interface on a display of the computing device.