Printer Selection Program for Cross-OS Environment Adaptation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing terminal apparatuses cannot handle situations where linked applications may not operate as expected due to the operating environment, despite being registered in a whitelist based on application-specific IDs and device host names.
Innovation Solution
A program capable of handling multiple operating environments, which controls the execution of appropriate programs based on the operating environment, by displaying discovered printers, accepting printer selections, and performing processing related to alternative programs when the selected printer is not supported.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a whitelist-based trust determination method is used to filter applications, then application security is improved, but the ability to handle diverse operating environments deteriorates
Solution Approach 1:
The patent changes the parameter for trust determination from static whitelist-based criteria to dynamic runtime environment detection. The system determines trustworthiness by detecting actual execution environment parameters (guest OS presence, host OS type) rather than relying on pre-registered application identifiers, enabling adaptation to diverse operating environments while maintaining security.
Solution Approach 2:
The patent implements feedback by detecting the actual operating environment at runtime and using this information to determine whether to launch the linked application or an alternative. The system receives feedback about the execution environment (through API calls to detect guest OS and host OS) and adjusts its behavior accordingly, creating a closed-loop trust determination mechanism.
2Adaptability or versatility
If linked applications are launched without environment verification, then operational flexibility is improved, but system reliability deteriorates
Solution Approach 1:
The patent applies preliminary action by detecting the operating environment before launching a linked application. The system performs environment detection (checking for guest OS and host OS) in advance, and only launches the application if the environment is deemed trustworthy. This prevents unreliable applications from executing in unsupported environments while maintaining flexibility in launching applications in appropriate environments.
Solution Approach 2:
The patent introduces an intermediary environment detection mechanism between the application launcher and the actual application execution. The environment detection API acts as a mediator that verifies whether the current operating environment is suitable for running linked applications, mediating between the desire for operational flexibility and the need for execution reliability.
3Adaptability or versatility
If environment-specific processing is implemented for each OS type, then operating environment compatibility is improved, but system complexity increases
Solution Approach 1:
The patent achieves universality by implementing a single environment detection mechanism that works across multiple operating environments (Windows, macOS, Linux, Chrome OS). The same detection code uses different APIs depending on the host OS, and the same trust determination logic applies to all environments, reducing complexity compared to separate processing logic for each OS type.
Solution Approach 2:
The patent manages complexity by changing parameters dynamically based on the detected environment rather than implementing separate processing logic. The system detects the host OS and guest OS types as parameters and adjusts its behavior accordingly through a unified decision-making framework, reducing code complexity while maintaining broad OS compatibility.
Data Source
AI summary
A method of controlling a first apparatus and a second apparatus is provided. The first apparatus has a first operating environment that is on a host OS, but is not on a guest OS, and the second apparatus has a second operating environment that is on the guest OS. In the first apparatus, a program accepts a selection of any from discovered printers, and when the selected printer is a printer not supported by the program, performs processing related to an other program different from the program. In the second apparatus, the program accepts a selection of any from discovered printers, and when the selected printer is a printer not supported by the program, performs processing related to a printing program standard in the host OS, the printing program being different from the program and the other program.


