Partitioned Application Across Devices
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for expanding a computing environment across devices, such as terminal services and display mirroring, fail to integrate resources effectively, leading to suboptimal user experiences due to inconsistencies in device properties and require significant configuration, limiting compatibility and user interface consistency.
Innovation Solution
Partitioning an application into a primary and auxiliary portion, with the primary device executing the application and adapting the auxiliary portion to the secondary device's properties, allowing for integrated resource utilization and consistent presentation across devices.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If terminal services session is used to remotely present the primary computing environment, then the user can view the computing environment remotely, but the resources of both devices are not integrated and the device properties of the second device are not reflected
Solution Approach 1:
The application is divided into a primary application portion that executes on the first device and an auxiliary application portion that executes on the second device. This segmentation allows each device to contribute its resources while maintaining a unified application experience, resolving the contradiction between remote viewing and device property integration.
Solution Approach 2:
The system creates a computing environment that can operate across multiple device types with different properties. The auxiliary computing environment is generated to be compatible with the second device's properties while maintaining the application's core functionality, enabling universal operation across diverse hardware architectures.
2Ease of operation
If display mirroring session is used to replicate the computing environment on a second display, then the view can be replicated, but the resources of the projector are not integrated with the computing environment
Solution Approach 1:
Rather than simply mirroring the display, the application is segmented into portions that execute on different devices. The auxiliary application portion runs natively on the second device, enabling true resource integration while the primary application portion maintains the core computing environment on the first device.
3Adaptability or versatility
If applications are installed on multiple devices to enable each device to participate, then device integration is achieved, but significant configuration is required and compatibility issues arise
Solution Approach 1:
The system extracts the auxiliary application portion from the complete application and transfers it to the second device. This extraction allows the application to utilize the second device's resources without requiring full installation and configuration of the entire application on multiple devices, significantly reducing configuration complexity.
Solution Approach 2:
Instead of installing the complete application on multiple devices, a copied portion (auxiliary application portion) is transferred to the second device. This copying approach maintains functionality while avoiding the complexity of full multi-device installation and configuration.
4Adaptability or versatility
If the application is partitioned across two devices, then resources are integrated and device properties are utilized, but the system complexity increases
Solution Approach 1:
The system introduces a computing environment intermediary that manages the partitioning and coordination between the two devices. This intermediary handles the complexity of resource integration and communication, allowing the application to leverage both devices' resources while abstracting away the architectural complexity from the user.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
In many computing scenarios, a user of a primary device may wish to incorporate an auxiliary device in the presentation of an application. Such incorporation may involve a terminal services session that projects the computing environment of the primary device onto the auxiliary device; mirroring the computing environment of the primary device through the auxiliary device; and/or utilizing applications that interoperate with client applications executing on the second device. However, such techniques may not fully reflect the properties of each device, and/or may only apply to particular applications and/or configurations. Instead, the primary device may adapt the primary computing environment to an auxiliary computing environment according to a device property of the auxiliary device; partition the application into a primary application portion presented within the primary computing environment and an auxiliary application portion presented within the auxiliary computing environment; and transmit the auxiliary computing environment to the auxiliary device.