Worker Session Mediates GPU Access for Isolated Services
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Remote presentation session services in isolated sessions, such as session 0 in Microsoft Windows, lack access to system resources like the GPU, hindering performance in tasks like image compression and rendering due to security constraints and session isolation.
Innovation Solution
A remote presentation session server creates a persistent 'worker session' that allows services in session 0 to access the GPU by instantiating a graphics stack and hosting a worker process responsible for GPU operations, ensuring uninterrupted service and efficient resource utilization.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If session 0 is isolated for security purposes, then security is improved, but access to system resources like GPU is lost
Solution Approach 1:
The patent introduces a worker session as an intermediary between session 0 and the GPU. Session 0 communicates GPU operation requests to the worker session, which then executes these requests directly on the GPU. This mediator approach allows session 0 to indirectly access GPU resources without breaking security isolation, as the worker session acts as a controlled interface that translates high-level requests into GPU operations.
2Adaptability or versatility
If standard user session is used to enable GPU access, then GPU access is improved, but session stability deteriorates due to user logoff terminating processes
Solution Approach 1:
The patent segments the session structure into multiple distinct sessions with specific roles: session 0 for security-isolated service execution, user sessions for interactive applications, and a dedicated worker session for GPU operations. This segmentation allows each session to have optimized characteristics - the worker session can be configured for persistent GPU access without being tied to user login state, while maintaining security isolation for session 0.
3Power
If GPU operations are performed in session 0, then graphics processing capability is improved, but service interruption occurs when user logs off
Solution Approach 1:
The system performs preliminary action by pre-establishing the worker session and configuring it with GPU access permissions before user sessions are created or terminated. This worker session is configured to persist independently of user login state, ensuring that GPU operations can continue uninterrupted. The worker session is prepared in advance to handle GPU requests from session 0 without being affected by user logoff events.
Data Source
Figure 1
Figure 2
Figure 3~4
AI summary
Techniques are disclosed for enabling a system service executing in an isolated session to access system resources (such as a graphics processing unit) that it is isolated from. In an embodiment, the system service creates a "worker" session that is not isolated, and a "worker" process inside that worker session. Then, the system service is able to access the system resource that it is directly isolated from accessing by passing a request to the worker process to access the system resource on the system service's behalf. The worker process does so, and passes a result to the system service.