DRM Resource Manager Dynamic Allocation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing DRM systems face challenges in efficiently managing hardware security resources, leading to issues like resource exhaustion, delayed application launch, and reduced support for trusted applications due to unmanaged resource reservations.
Innovation Solution
A system and method for dynamically managing processor resources by monitoring and storing execution parameters of applications, predicting resource requirements based on customer usage patterns, and initializing resources accordingly to optimize resource utilization and support multiple trusted applications.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If hardware security resources are pre-configured and reserved based on generic device features, then device stability is improved, but resource utilization efficiency deteriorates and hardware costs increase
Solution Approach 1:
The patent implements dynamic resource management by transitioning from static pre-configured security resources to dynamically allocated resources based on actual application execution. The system monitors which trusted applications are running and allocates security resources (key slots, secure memory) accordingly, allowing resource flexibility while maintaining stability through active management.
Solution Approach 2:
The system changes the parameter of resource allocation from fixed/pre-configured to variable/dynamic. By monitoring application execution states and adjusting security resource allocation in real-time, the system optimizes resource utilization without compromising device stability, directly addressing the contradiction between reliability and productivity.
2Adaptability or versatility
If more hardware security components are added to support multiple trusted applications, then application versatility is improved, but device cost increases
Solution Approach 1:
The patent makes existing security hardware components universal by allowing them to serve multiple trusted applications dynamically. Instead of dedicating specific key slots and secure memory to specific applications, the system enables any security resource to be allocated to any running trusted application, maximizing the utility of each hardware component and reducing the need for additional security features.
Solution Approach 2:
The system implements self-service resource allocation where the resource manager automatically monitors application execution and allocates security resources without requiring manual configuration or additional hardware. This automated adaptation allows the device to support multiple trusted applications using the same security infrastructure, avoiding the need for expensive hardware upgrades.
3Speed
If security resources are reserved for all possible trusted applications, then application launch speed is improved, but resource exhaustion occurs and device complexity increases
Solution Approach 1:
The system applies preliminary action by pre-loading security resources only for trusted applications that are currently executing or expected to execute soon, rather than reserving resources for all possible applications. This selective pre-allocation maintains fast launch speeds for active applications while conserving security resources for future use.
Solution Approach 2:
The resource manager implements feedback mechanisms by continuously monitoring which trusted applications are running and adjusting security resource allocation in real-time. This feedback loop ensures that resources are allocated to applications that actually need them, preventing resource exhaustion while maintaining launch performance for active applications.
Data Source
AI summary
A system and method for managing resources of a processor is disclosed. In an illustrative embodiment, the method includes accepting a command to execute an application at least in part by the processor, executing the application using the processor, monitoring execution parameters characterizing the execution of the application by the processor, and storing the monitored execution parameters in a memory accessible to processor. In one example, the execution parameters including an identifier of the application and a time at which the application begins execution.


