Legal claims defining the scope of protection. Each claim is shown in both the original legal language and a plain English translation.
1. A streaming media system, comprising: a cache memory; and one or more processors configured to: first determine a number of discrete user input events to select each element of a plurality of elements displayed in a graphical user interface based on a location of interest (LOI), wherein each element is associated with an application; second determine, based at least on the determined number of discrete user input events, a probability of each element displayed by the graphical user interface being selected for execution; generate, from the second determination, a list of applications associated with the elements having a greatest probability to be selected for execution; and load the applications on the list into the cache memory.
A streaming media system optimizes application loading by predicting user selections in a graphical user interface (GUI) based on a location of interest (LOI). The system includes a cache memory and one or more processors that analyze user input events to determine how many discrete actions are required to select each element in the GUI. Each element corresponds to an application. The system then calculates the probability of each element being selected for execution based on the number of input events needed. Applications associated with the most likely-to-be-selected elements are prioritized in a list and preloaded into the cache memory. This reduces latency by anticipating user actions and preloading frequently accessed applications, improving responsiveness in streaming media environments where rapid access to applications is critical. The system dynamically adjusts predictions based on historical user behavior, ensuring efficient cache utilization and minimizing delays during application execution.
2. The streaming media system of claim 1 , wherein the cache memory comprises a source code application cache memory, and wherein the one or more processors are further configured to load the applications on the list by loading source code associated with the applications on the list into the source code application cache memory.
This invention relates to a streaming media system designed to optimize the loading and execution of applications. The system addresses the challenge of efficiently managing application resources in a streaming environment, where applications may need to be frequently loaded or updated. The core system includes a cache memory and one or more processors configured to manage application loading. The cache memory is specifically a source code application cache memory, which stores the source code of applications rather than compiled binaries. The processors are configured to load applications by retrieving their source code from the cache memory, allowing for dynamic execution without requiring pre-compiled versions. This approach enables faster updates and more flexible application management, as changes to the source code can be immediately reflected without recompilation. The system ensures that only applications on a predefined list are loaded into the cache, maintaining control over which applications are available for streaming. This method improves efficiency by reducing the need for repeated downloads or installations of compiled applications, while also supporting rapid application updates and modifications.
3. The streaming media system of claim 1 , wherein the cache memory comprises a byte code application cache memory, and wherein the one or more processors are further configured to load the applications on the list by loading byte code associated with the applications on the list into the byte code application cache memory.
This invention relates to a streaming media system designed to optimize application loading and execution. The system addresses the problem of inefficient application startup times in streaming media environments, where applications must be frequently loaded and executed on demand. The core solution involves a specialized cache memory structure and a preloading mechanism to reduce latency and improve performance. The system includes a cache memory that specifically comprises a byte code application cache memory. This cache is dedicated to storing byte code associated with applications that are frequently used or expected to be used soon. The system further includes one or more processors configured to manage this cache. When an application is selected for loading, the processors load the corresponding byte code into the byte code application cache memory. This preloading step ensures that the application is ready for immediate execution, eliminating the need to fetch and compile the byte code from a slower storage medium at runtime. Additionally, the system may include a list of applications that are prioritized for preloading. The processors are configured to load these applications by transferring their byte code into the cache memory before they are explicitly requested. This proactive approach minimizes delays when users interact with the system, enhancing responsiveness. The byte code application cache memory is optimized for fast access, ensuring that the preloaded applications can be executed with minimal latency. This design is particularly useful in streaming media systems where quick application startup is critical for a seamless user experience.
4. The streaming media system of claim 1 , further comprising: an input memory configured to store input data, and wherein the one or more processors are further configured to: determine a rate of change of user input based on the stored input data in the input memory; and modify the probability associated with each element based on the determined rate of change of user input.
A streaming media system dynamically adjusts content recommendations based on user interaction patterns. The system includes a memory storing input data from user interactions, such as clicks, selections, or navigation actions. Processors analyze this data to calculate the rate at which user input changes, reflecting how quickly or slowly a user engages with content. The system then modifies the probability or weighting of each recommended element—such as videos, songs, or articles—based on this rate of change. For example, if a user rapidly skips through content, the system may prioritize more diverse or shorter recommendations. Conversely, if the user engages deeply with a few items, the system may favor similar or related content. This adaptive approach improves personalization by aligning recommendations with the user's current behavior, enhancing engagement and satisfaction. The system may also include a recommendation engine that generates initial suggestions, which are refined based on the dynamic input analysis. The overall goal is to provide a more responsive and tailored streaming experience by continuously adjusting content selection based on real-time user interaction trends.
5. The streaming media system claim 1 , wherein the one or more processors are further configured to: generate the list of applications by grouping the plurality of elements by their associated applications; and aggregate, for each group, the probability of each element being selected for execution.
A streaming media system processes user interaction data to predict and recommend applications for execution. The system analyzes a plurality of elements, such as user inputs or media content, to determine their likelihood of being selected. The system groups these elements by their associated applications and calculates an aggregated probability for each group, representing the likelihood that an application will be executed based on the combined probabilities of its elements. This aggregated probability helps prioritize applications for recommendation, improving user experience by predicting which applications are most likely to be used next. The system may also filter or rank applications based on these probabilities, ensuring relevant recommendations are presented to the user. The approach enhances efficiency by reducing the need for manual application selection and optimizing resource allocation in streaming media environments.
6. The streaming media system of claim 1 , further comprising: a usage history memory configured to store a history of application usage, and wherein the one or more processors are further configured to: determine the probability of each element based at least on the history of application usage stored in the usage history memory.
A streaming media system monitors and analyzes user interactions with media content to enhance content delivery and user experience. The system includes a usage history memory that stores a record of how users interact with applications, such as which media elements (e.g., videos, audio tracks, or interactive features) are accessed, the duration of engagement, and user preferences. The system processes this historical data to determine the likelihood or probability of a user selecting or engaging with specific media elements. By leveraging this probability data, the system can optimize content recommendations, prioritize media elements for delivery, or adapt the streaming experience to better match user behavior. The system may also use additional factors, such as user demographics or real-time interaction patterns, to refine these probability calculations. The goal is to improve content relevance, reduce latency, and enhance user satisfaction by dynamically adjusting media delivery based on historical usage trends.
7. A method of predictive application caching, comprising: first determining a number of discrete user input events to select each element of a plurality of elements displayed in a graphical user interface based on a location of interest (LOI)), wherein each element is associated with an application; second determining, based at least on the determined number of discrete user input events, a probability of each element displayed by the graphical user interface being selected for execution; generating, from the second determination, a list of applications associated with the elements having the greatest probability to be selected for execution; and loading one or more applications on the list into a cache memory.
This invention relates to predictive application caching in graphical user interfaces (GUIs) to improve performance by preloading frequently accessed applications. The problem addressed is the delay in application launch times, which occurs when users must wait for applications to load from storage into memory. The solution involves analyzing user behavior to predict which applications are most likely to be selected and preloading them into cache memory. The method first determines the number of discrete user input events required to select each element in a GUI, based on a location of interest (LOI). Each element is linked to an application. Next, it calculates the probability of each element being selected for execution, using the determined input event count. From this, a ranked list of applications associated with the highest-probability elements is generated. Finally, one or more applications from this list are loaded into cache memory, ensuring faster access when the user selects them. By predicting user intent and preloading applications, the system reduces latency and enhances responsiveness. The approach leverages historical input patterns to optimize caching decisions dynamically. This method is particularly useful in environments where multiple applications are frequently accessed, such as operating systems or application launchers.
8. The method of claim 7 , further comprising: detecting the location of interest in the graphical user interface based at least on input data relating to one or more of the plurality of elements displayed in the graphical user interface.
The invention relates to graphical user interfaces (GUIs) and methods for enhancing user interaction by detecting and responding to locations of interest within the interface. The problem addressed is the need for more intuitive and efficient user interactions in digital interfaces, particularly when dealing with complex or dynamic displays containing multiple elements. The method involves analyzing input data related to one or more elements displayed in the GUI to identify a specific location of interest. This input data may include user interactions, such as clicks, gestures, or cursor movements, as well as contextual information like element properties, spatial relationships, or user behavior patterns. By processing this data, the system determines a relevant location within the interface that warrants further attention or action. The detected location of interest can then be used to trigger various responses, such as highlighting the area, providing additional information, or adjusting the interface layout. This approach improves usability by reducing the need for manual navigation and ensuring that the most relevant content is prioritized. The method is particularly useful in applications where quick access to specific interface regions is critical, such as data visualization tools, control panels, or interactive dashboards. The solution enhances user experience by making interactions more responsive and context-aware.
9. The method of claim 7 , further comprising: calculating a weight for each of the applications on the list based at least on input data relating to one or more of the plurality of elements displayed in the graphical user interface.
This invention relates to a system for managing and prioritizing applications in a graphical user interface (GUI) based on user interaction data. The problem addressed is the inefficiency of traditional application management systems, which often fail to dynamically adjust application visibility or priority based on real-time user behavior. The invention improves upon prior art by calculating a weight or priority score for each application in a list, using input data related to elements displayed in the GUI. These elements may include user interactions, such as clicks, time spent, or frequency of use, as well as other contextual factors like application performance or system resource usage. The calculated weights determine how applications are displayed, ranked, or prioritized in the GUI, enhancing user experience by surfacing the most relevant or frequently used applications. The system may also update these weights in real-time as new interaction data is collected, ensuring continuous optimization of application visibility. This approach differs from static prioritization methods by dynamically adapting to user behavior, improving efficiency and usability. The invention may be applied in operating systems, application launchers, or productivity tools where dynamic application management is beneficial.
10. The method of claim 9 , wherein the calculated weight is based at least on usage history data.
A system and method for optimizing resource allocation in a computing environment addresses the challenge of efficiently distributing computational tasks across available resources to minimize latency and maximize throughput. The invention involves dynamically assigning tasks to processing units based on real-time performance metrics and historical usage patterns. The method calculates a weight for each processing unit, which determines its priority in task allocation. This weight is derived from usage history data, reflecting past performance, load distribution, and efficiency metrics. By incorporating historical data, the system adapts to recurring usage patterns, improving long-term efficiency. The method also considers current system state, such as processing unit availability and task urgency, to dynamically adjust task assignments. This ensures optimal resource utilization while maintaining system responsiveness. The invention is particularly useful in distributed computing environments, cloud platforms, and high-performance computing systems where efficient task scheduling is critical. The use of historical data enhances predictive accuracy, reducing the likelihood of bottlenecks and improving overall system performance.
11. The method of claim 7 , wherein the loading the application into a memory comprises compiling the application from a first format to a second format.
This invention relates to a method for loading an application into a memory, specifically addressing the challenge of efficiently preparing and executing applications in a computing environment. The method involves compiling the application from a first format, such as source code or an intermediate representation, into a second format, such as machine code or an executable binary, to optimize performance and compatibility. This compilation step ensures the application is in a suitable state for execution, improving speed and resource utilization. The method may also include additional steps such as validating the application, managing dependencies, or optimizing the compiled output for specific hardware or software configurations. The compilation process may involve just-in-time (JIT) compilation, ahead-of-time (AOT) compilation, or other techniques to balance startup time and runtime efficiency. The invention aims to enhance application loading by ensuring the compiled version is correctly formatted and ready for execution, reducing errors and improving system responsiveness.
12. The method of claim 7 , wherein the loading the application into a memory comprises: loading the application with the greatest probability into the cache memory.
This invention relates to optimizing application loading in computing systems, particularly for improving performance by strategically loading applications into memory. The problem addressed is inefficient application loading, which can lead to slower system performance due to unnecessary memory access delays. The solution involves a method for loading an application into memory with a focus on maximizing the likelihood of the application being loaded into cache memory, which is faster to access than other types of memory. The method includes determining the probability of an application being loaded into cache memory and prioritizing the application with the highest probability for cache loading. This ensures that frequently used or critical applications are more likely to reside in cache, reducing access times and improving overall system efficiency. The method may also involve analyzing application usage patterns, memory availability, and system performance metrics to dynamically adjust loading strategies. By intelligently distributing applications across different memory tiers, the system can achieve better performance and resource utilization. This approach is particularly useful in environments where multiple applications compete for limited cache resources, such as in mobile devices or high-performance computing systems.
13. The method of claim 7 , wherein the second determining comprises performing a statistical calculation based on the determined number of discrete user input events.
A system and method for analyzing user input events to assess user behavior or system performance. The invention addresses the challenge of quantifying and interpreting discrete user interactions with a device or software application, which is critical for improving user experience, detecting anomalies, or optimizing system responses. The method involves tracking and counting individual user input events, such as clicks, taps, or gestures, and then performing statistical calculations on this data to derive meaningful insights. These calculations may include statistical measures like averages, variances, or distributions to assess patterns, trends, or deviations in user behavior. The results can be used to adjust system parameters, trigger alerts, or refine user interface designs. The method ensures accurate and reliable analysis by accounting for the variability and frequency of input events, providing a robust framework for interpreting user interactions in real-time or historical data. This approach is particularly useful in applications where user input quality or system responsiveness is a critical factor, such as in touchscreen interfaces, gaming systems, or accessibility tools. The statistical calculations enable the system to adapt dynamically to user behavior, improving efficiency and reducing errors.
14. A predictive application cache system, comprising: a cache memory; and one or more processors configured to: receive graphical user interface data, wherein the graphical user interface data comprises a plurality of elements, and wherein each element is associated with an application; receive historical usage information relating to application usage; determine a number of discrete user input events to select each element in the graphical user interface based on a location of interest (LOI); select an application to be cached, based at least on the graphical user interface data, the determined number of discrete user input events, and the historical usage information; and load the determined application into the cache memory.
A predictive application cache system improves performance in computing environments by preloading frequently used applications into cache memory based on user behavior and interface structure. The system addresses the problem of delays caused by loading applications on-demand, particularly in systems with limited resources or high-latency storage. The system includes a cache memory and one or more processors that analyze graphical user interface (GUI) data and historical usage patterns to predict which applications a user is likely to access next. The GUI data contains multiple elements, each linked to an application, and the system evaluates the number of user input events (e.g., clicks or taps) required to select each element from a predefined location of interest (LOI), such as the current screen or cursor position. By combining this structural analysis with historical usage data, the system prioritizes applications that are both frequently used and easily accessible from the user's current context. The selected application is then preloaded into cache memory, reducing launch times and improving responsiveness. This approach optimizes resource allocation by focusing on applications that are both relevant and likely to be used soon, based on predictive modeling of user behavior and interface navigation.
15. The system of claim 14 , wherein the historical usage information comprises crowd sourced data from one or more remote sources.
A system for analyzing and optimizing resource allocation in a networked environment collects and processes historical usage data to improve efficiency. The system gathers real-time and historical usage information from multiple sources, including user devices, network nodes, and external databases, to identify patterns and predict future demand. This data is used to dynamically adjust resource distribution, such as bandwidth, processing power, or storage, to minimize waste and enhance performance. The system may also incorporate machine learning algorithms to refine predictions and optimize allocation strategies over time. In some implementations, the historical usage information includes crowd-sourced data from remote sources, such as user feedback, device telemetry, or third-party analytics platforms, to provide a broader and more accurate dataset for analysis. By leveraging this diverse information, the system can make more informed decisions, leading to improved resource utilization and reduced operational costs. The system may be applied in various domains, including cloud computing, telecommunications, and smart infrastructure, where efficient resource management is critical.
16. The system of claim 14 , wherein the one or more processors are further configured to select the application to be cached based on a probability that the application will be used.
A system for optimizing application caching in a computing environment, particularly in scenarios where multiple applications compete for limited storage or memory resources. The problem addressed is inefficient resource allocation, where frequently used applications may not be prioritized for caching, leading to slower access times and degraded performance. The system includes one or more processors configured to monitor application usage patterns and dynamically cache applications based on their likelihood of being used. The selection of applications for caching is determined by calculating a probability that each application will be used, ensuring that the most relevant applications are retained in cache. This probability may be derived from historical usage data, user behavior, or predictive algorithms. The system may also include a storage component for holding cached applications and a memory management module to enforce caching policies. By prioritizing applications with higher usage probabilities, the system improves system responsiveness and reduces unnecessary cache evictions. The invention is particularly useful in environments with constrained resources, such as mobile devices, embedded systems, or cloud-based platforms where efficient resource management is critical.
17. The system of claim 14 , wherein the one or more processors are further configured to load the determined application into the cache memory by compiling source code associated with the determined application into bytecode, and storing the bytecode in the cache memory.
This invention relates to a system for optimizing application execution in a computing environment. The system addresses the problem of inefficient application loading and execution, particularly in environments where applications are frequently launched or where performance is critical. The system includes one or more processors configured to monitor application usage patterns, predict which applications are likely to be used next, and preload those applications into a cache memory to reduce startup time and improve responsiveness. The system further includes a cache memory for storing preloaded applications and a storage device for storing application source code. The processors are configured to compile the source code of the predicted application into bytecode and store the bytecode in the cache memory. This pre-compilation step ensures that the application is ready for immediate execution when needed, eliminating the need for runtime compilation and reducing latency. The system may also include a memory management module to manage cache memory allocation and ensure that frequently used applications remain in the cache while less frequently used applications are evicted. The system dynamically adjusts its predictions based on historical usage data and real-time usage patterns, allowing it to adapt to changing user behavior. This proactive approach ensures that the most relevant applications are always available in the cache, improving overall system performance and user experience. The invention is particularly useful in environments such as cloud computing, virtual machines, or any system where application startup time is a critical factor.
18. The streaming media system of claim 1 , further comprising: an input memory configured to store input data, and wherein the one or more processors are further configured to: determine a change of direction to user input based on the stored input data in the input memory; and modify the probability associated with each element based on the determined change of direction to user input.
The invention relates to a streaming media system designed to adaptively adjust content delivery based on user input patterns. The system addresses the challenge of providing personalized and responsive media streaming by dynamically modifying the probability of selecting different media elements in response to user behavior. The system includes an input memory that stores user input data, such as navigation commands or interaction patterns. One or more processors analyze this stored data to detect changes in the direction or nature of user input. For example, if a user frequently skips forward or rewinds, the system identifies these directional changes. Based on these detected changes, the system adjusts the probability associated with each media element, such as video segments, audio tracks, or interactive options. This adjustment ensures that the system prioritizes content that aligns with the user's current preferences or behavior, enhancing engagement and personalization. The system may also include a media database storing various media elements and a probability distribution mechanism that assigns selection probabilities to these elements. The processors dynamically update these probabilities in real-time, ensuring the system remains responsive to evolving user input. This adaptive approach improves the efficiency and relevance of media streaming, particularly in interactive or personalized content delivery scenarios.
Unknown
January 21, 2020
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.