IP Library Granted Patent US 10,389,592
Granted Patent B2
US 10,389,592 · App. 15/636,299 · Granted Aug 20, 2019

Method, system and program product for allocation and/or prioritization of electronic resources

Inventors: Philip Lui (New York, NY); David Rayna (Malverne, NY); Anthony Sypniewski (New York, NY)
Assignee: Knoa Software, Inc.
H04L41/0886G06F9/505H04L41/046H04L41/147H04L41/20H04L41/22H04L43/045H04L43/065H04L43/0817H04L43/14H04L47/70H04L67/10
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,389,592
App. No.
15/636,299
Granted
Aug 20, 2019
Kind
B2
Abstract

A method, system and program product, the method comprising determining a first rule set comprising a plurality of patterns of run-time data; obtaining a second rule set comprising a respective priority assigned to respective of the application context IDs and/or user IDs and/or business priorities or combinations of two or more thereof; receiving run-time data for a first plurality of the user IDs; determining application context IDs running on desktops; generating allocation data and/or prioritization data for allocation of electronic resources for user IDs, based at least in part on the second rule set; and sending signals, based on the allocation data and/or the prioritization data.

Claims (17)

1. A method comprising:

determining or obtaining or receiving, by one or more computers, a first rule set comprising a plurality of patterns of run-time data used to distinguish among a plurality of applications and/or locations within applications running on monitored computers associated with respective user IDs and to provide respective application context IDs that designate respective applications incorporating application locations within applications;

receiving or obtaining or being presented, by the one or more computers, with run-time data for a first plurality of the user IDs, wherein the runtime data for a respective one of the user IDs comprises and/or is derived from run-time instantiations of objects occurring on the monitored computer for the respective user ID, with the objects comprising one or more selected from the group of methods, system objects, object events, dynamic GUI objects, network component objects, wherein the object events comprise at least one selected from the group of operating system events, application events, and web browser events and network events generated or affecting directly or indirectly the respective monitored computer;

determining, by the one or more computers, respective application context IDs for applications and/or respective locations within applications running on the respective user IDs of a second plurality of the user IDs, based at least in part on the first rule set;

detecting, by the one or more computers, a pattern comprising one or more selected from the group of an application, a combination of applications, and a combination of an application used by a specified one of the user IDs;

determining a prediction rule for the determined pattern, by the one or more computers, from a prediction rule set, wherein the respective prediction rule in the prediction rule set is based at least in part on a past history of usage of the electronic resources when the pattern is detected;

determining, by the one or more computers, prediction data for of electronic resources that may be used at a future time or during a window of time when the pattern is detected based at least in part on the prediction rule set; and

using the prediction data for electronic resources, by the one or more computers, in one selected from the group of generating of the allocation data for the electronic resources and providing data or making the data accessible electronically that indicates a need for additional electronic resources.

2. The method as defined in claim 1 , wherein an agent, comprising a set of programming code stored on a non-transitory computer-readable medium, configured for executing by the one or more computers, at run-time, wherein the agent performs the steps: monitoring, by the one or more computers, a monitored computer of a respective one of the user IDs to obtain the run-time data; and detecting, by the one or more computers, whether a pattern determined from the run-time data corresponds to a prediction rule in the prediction rule set.

3. The method as defined in claim 2 , wherein the agent further performs the step:

generating and sending, by the one or more computers, actuation requests to change selected priorities or levels of the electronic resources provided or providable to or associated with the monitored computer which one or more electronic resources are locally controllable by the agent.

4. The method as defined in claim 2 , wherein the agent further performs the step:

generating and sending, by the one or more computers and one or more electronic networks, actuation requests to change selected priorities or levels of the electronic resources provided or providable to a respective monitored computer, to an actuation manager program running on one of the one or more other of the computers, which actuation manager program oversees control of electronic resources outside of control of the respective agent.

5. The method as defined in claim 1 ,

receiving or obtaining, by the one or more computers, slowdown data indicating a slow down of a first one of the monitored computers;

wherein the prediction data for electronic resources further includes resource shift data, and

further comprising generating, by the one or more computers, the allocation data to increase the electronic resources to the first monitored computer and to decrease the electronic resources to one or more other of the monitored computers on a temporary basis and then to return the electronic resources to those monitored computers to previous levels.

Continuity (5)
Division 14981316 · Dec 28, 2015
Continuation 13626238 · Sep 25, 2012
Provisional Application 61539306 · Sep 26, 2011
Provisional Application 61646779 · May 14, 2012
Related Publication 20170302521A1 · Oct 19, 2017
Cited By (7)
US 12,395,547 US 12,549,574 US 12,562,968 US 12,568,091 US 12,574,336 US 12,602,470 US 12,683,991