Portable Application Virtualization Using a Lightweight Hypervisor
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing virtualization techniques face limitations in supporting applications on foreign operating systems with high resource usage, necessitating the virtualization of the entire operating system.
Innovation Solution
The solution involves creating a virtualized application that executes on a host operating system with a reduced version, utilizing a lightweight hypervisor and a virtualization executable application to generate a portable application that can run on another computer system.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If full operating system virtualization is used to run applications on foreign operating systems, then application compatibility is improved, but resource usage increases
Solution Approach 1:
The patent segments the operating system virtualization into two parts: a lightweight hypervisor layer that provides minimal virtualization functions, and a compatibility layer that handles application-specific foreign OS calls. This segmentation allows running applications on foreign OS without virtualizing the entire OS, reducing resource usage while maintaining application compatibility.
Solution Approach 2:
The patent extracts only the necessary virtualization functions needed for application compatibility from the full OS virtualization approach. The lightweight hypervisor provides just enough virtualization to support the application, while a compatibility layer handles foreign OS system calls, eliminating the need to virtualize the entire operating system and reducing resource consumption.
2Adaptability or versatility
If full operating system virtualization is implemented, then application portability is improved, but system complexity increases
Solution Approach 1:
The system is segmented into a simple lightweight hypervisor and a compatibility layer. The hypervisor provides basic virtualization without the complexity of full OS virtualization, while the compatibility layer handles application-specific requirements, reducing overall system complexity while maintaining portability.
Solution Approach 2:
The compatibility layer acts as an intermediary between the application and the lightweight hypervisor. It translates foreign OS system calls into compatible forms, allowing applications to run on foreign operating systems without requiring complex full OS virtualization, thus reducing system complexity while maintaining portability.
3Use of energy by moving object
If reduced version of host operating system is used, then resource usage is reduced, but application compatibility may worsen
Solution Approach 1:
The compatibility layer serves as an intermediary that compensates for the reduced functionality of the lightweight hypervisor. It provides the missing OS-specific functions and translates foreign OS calls, ensuring application compatibility is maintained even though the underlying hypervisor uses fewer resources.
Solution Approach 2:
The system changes the parameters of virtualization by using a lightweight hypervisor with minimal resources and compensating through software-based compatibility mechanisms. This parameter change allows the system to achieve low resource usage while maintaining application compatibility through the compatibility layer's translation and emulation capabilities.
Data Source
AI summary
Virtualization exploits virtual rather than actual elements such as computer hardware platforms, storage devices, and computer network resources for example. However, prior art techniques have limitations including, for example, memory requirements and resource requirements which typically either limit their deployment to remote server based systems or limit the number of concurrent virtual machines a system can support. Embodiments of the invention address these limitations by supporting application virtualization on foreign operating systems with reduced resource usage by removing the requirement for virtualization of the entire foreign operating system. The inventive virtualization provides creation of an isolated memory space with isolated code execution using hardware assistance.


