Platform Independent Launchable Applications via Virtual Machine
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional launchable applications are difficult to develop in a platform-independent manner, as they often require access to specific machine-dependent interfaces, limiting their cross-platform compatibility and necessitating individual development for each target platform.
Innovation Solution
The method involves combining a Virtual Machine with abstraction layers to create platform-independent launchable applications, allowing developers to write source code once for multiple platforms, with automatic generation of platform-specific executables and configuration files, enabling cross-platform execution through a cross-platform executable running on a virtual machine.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If conventional launchable applications use platform-specific interfaces, then the application can access machine-dependent interfaces directly, but the application cannot run on multiple platforms and requires individual development for each platform
Solution Approach 1:
The patent introduces a Virtual Machine as an intermediary layer between the platform-independent application code and the platform-specific hardware interfaces. The Virtual Machine provides a standardized interface that translates platform-independent commands into platform-specific operations, enabling the same application to run on multiple platforms without requiring platform-specific development for each target system
Solution Approach 2:
The patent creates a universal application interface through the Virtual Machine that can execute the same application code across different platforms. The Virtual Machine itself is designed to be multi-functional, supporting multiple target platforms while maintaining a consistent interface for the application, thereby achieving cross-platform compatibility without requiring separate development for each platform
2Reliability
If launchable applications are developed individually for each platform, then the application can be optimized for specific platform requirements, but the development time and code maintenance increase significantly
Solution Approach 1:
The patent segments the system into two distinct parts: platform-independent application code and platform-specific Virtual Machine implementations. The application code remains unchanged across platforms, while each platform has its own Virtual Machine optimized for that platform's hardware characteristics. This segmentation allows the application to be developed once and then deployed to multiple platforms without requiring re-development for each platform
Solution Approach 2:
The patent uses the concept of copying by creating platform-specific Virtual Machines that replicate the functionality needed for each target platform. Instead of copying the entire application for each platform, the same application is copied and executed through different Virtual Machine implementations, reducing development time while maintaining platform-specific optimizations
3Adaptability or versatility
If platform-specific executables are generated for each platform, then the application can leverage platform-specific features, but the code base becomes larger and more difficult to maintain
Solution Approach 1:
The Virtual Machine serves as an intermediary that handles the complexity of platform-specific feature access. The application code interacts with the Virtual Machine through a standardized interface, and the Virtual Machine translates these interactions into platform-specific operations. This keeps the code base small and manageable while still allowing utilization of platform-specific features through the Virtual Machine's platform-aware implementation
Data Source
AI summary
A method, computer program product, and system for providing launchable application source code are presented. A determination is made regarding which target platforms a launchable application executable will be run on. Once the platforms have been determined, a cross platform executable is generated using the launchable application source code. Platform specific executables are also generated for each selected platform. The cross platform executable is then combined with the platform specific executable for the platform to provide the platform independent launchable application. The platform specific executable is launched by an Operating System as part of a system service, such as a screensaver, and calls the cross platform executable which is executed on a virtual machine running on the platform.


