Policy-Based Persistence for Semi-Persistent Desktops
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current computing devices face challenges in managing data persistence and policy management, particularly in balancing the need for user experience with the costs and complexities of persistent and non-persistent workspaces, where issues like DLL Hell, configuration failures, and virus persistence complicate data storage and security.
Innovation Solution
Implementing a semi-persistent desktop model with a computing device that includes both persistent and non-persistent layers, where data storage policies are determined by file system, user, or dynamically constructed rules, allowing granular control and segregation of data persistence based on user identity and application usage, using a layering engine and policy engine to direct data storage accordingly.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If a persistent workspace is used to retain user information between sessions, then user experience is improved, but management costs increase due to application issues such as DLL hell and accidental configuration failures
Solution Approach 1:
The patent segments the workspace into persistent and non-persistent components, allowing selective retention of information. The profile manager identifies specific objects (files, registry keys, environment variables) that should be persisted while allowing other changes to be discarded, thus maintaining user experience while reducing management complexity and avoiding DLL hell issues.
Solution Approach 2:
The patent applies different persistence qualities to different parts of the workspace. Instead of making the entire workspace persistent or non-persistent, the system applies persistence selectively to specific objects based on their importance and characteristics, allowing critical user data to be retained while temporary or potentially harmful changes are discarded.
2Device complexity
If a non-persistent workspace is used to reduce operating costs, then management costs are reduced, but user experience deteriorates due to lack of persisting information
Solution Approach 1:
The workspace is segmented into persistent and non-persistent sections, allowing the system to maintain a non-persistent overall structure for cost efficiency while selectively persisting important user information to maintain experience quality.
Solution Approach 2:
Specific critical objects within the non-persistent workspace are given persistent quality through the profile manager, ensuring that essential user information is retained while the rest of the workspace remains non-persistent for cost efficiency.
3Reliability
If a profile manager is used to protect specific information based on policies, then information security is improved, but performance deteriorates due to copying or streaming overhead
Solution Approach 1:
The patent uses copying to create a profile layer that references original objects without immediately duplicating their content. The profile manager maintains references and metadata about protected objects, allowing efficient identification and protection of specific information without the performance penalty of continuous copying or streaming of all data.
4Device complexity
If layering is used to persist all information on top of a non-persistent workspace, then a common pool of workspaces is managed, but unwanted configuration changes, application corruption, and viruses persist across usage
Solution Approach 1:
The layering model is segmented to distinguish between desired persistent information (user profiles, settings) and unwanted persistent changes (viruses, corruption). The profile manager selectively identifies and protects only the intended objects, allowing the system to benefit from layering's workspace management efficiency while preventing security issues from persisting.
Solution Approach 2:
Different persistence qualities are applied to different objects within the layered workspace. Critical profile objects are marked for protected persistence while other objects remain subject to standard non-persistent behavior, allowing security issues to be contained and discarded while maintaining useful persistent information.
5Adaptability or versatility
If policy management is tightly coupled with specific applications and profiles, then application-specific persistence requirements are met, but system complexity increases due to multiple policy engines
Solution Approach 1:
The patent implements a universal profile manager that handles persistence requirements for multiple applications and object types through a single system. Instead of requiring separate policy engines for each application, the profile manager provides a unified mechanism that can identify and protect objects across different applications and contexts, reducing overall system complexity while maintaining application-specific adaptability.
Data Source
AI summary
A computing device includes a memory and at least one processor configured to cooperate with the memory. The processor is to boot the computing device, and direct generated data to data storage. The data storage includes at least one persistent layer and a non-persistent layer. The processor determines if the data is to be stored in the at least one persistent layer or the non-persistent layer based on a version of the operating system being used to boot the computing device.


