Prosecution Insights
Last updated: July 17, 2026
Application No. 18/441,980

DISTRIBUTED TASK QUEUING AND PROCESSING FOR LIGHTWEIGHT EDGE DEVICES

Non-Final OA §101§103
Filed
Feb 14, 2024
Examiner
HEADLY, MELISSA A
Art Unit
4100
Tech Center
4100
Assignee
Red Hat Inc.
OA Round
1 (Non-Final)
75%
Grant Probability
Favorable
1-2
OA Rounds
1y 0m
Est. Remaining
99%
With Interview

Examiner Intelligence

Grants 75% — above average
75%
Career Allowance Rate
309 granted / 412 resolved
+15.0% vs TC avg
Strong +40% interview lift
Without
With
+40.1%
Interview Lift
resolved cases with interview
Typical timeline
3y 5m
Avg Prosecution
21 currently pending
Career history
441
Total Applications
across all art units

Statute-Specific Performance

§101
2.0%
-38.0% vs TC avg
§103
94.2%
+54.2% vs TC avg
§102
2.0%
-38.0% vs TC avg
§112
1.0%
-39.0% vs TC avg
Black line = Tech Center average estimate • Based on career data from 412 resolved cases

Office Action

§101 §103
DETAILED ACTION The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA . Examiner Notes Examiner cites particular columns and line numbers in the references as applied to the claims below for the convenience of the applicant. Although the specified citations are representative of the teachings in the art and are applied to the specific limitations within the individual claim, other passages and figures may apply as well. It is respectfully requested that, in preparing responses, the applicant fully consider the references in entirety as potentially teaching all or part of the claimed invention, as well as the context of the passage as taught by the prior art or disclosed by the examiner. The examiner encourages Applicant to submit an authorization to communicate with the examiner via the Internet by making the following statement (from MPEP 502.03): “Recognizing that Internet communications are not secure, I hereby authorize the USPTO to communicate with the undersigned and practitioners in accordance with 37 CFR 1.33 and 37 CFR 1.34 concerning any subject matter of this application by video conferencing, instant messaging, or electronic mail. I understand that a copy of these communications will be made of record in the application file.” Please note that the above statement can only be submitted via Central Fax, Regular postal mail, or EFS Web (PTO/SB/439). 5 U.S.C. 101 reads as follows: Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title. Claims 1-20 are rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more. In adhering to the 2019 Revised Patent Subject Matter Eligibility Guidance (2019 PEG), Step 1 is directed to determining whether or not the claims fall within a statutory class. Herein, the claims fall within statutory class of process, machine or manufacture. Hence, the claims qualify as potentially eligible subject matter under 35 U.S.C §101. With Step 1 being directed to a statutory category, the analysis directed to Step 2A. Step 2A is a two prong inquiry. Prong 1 considers whether the claim recites a judicial exception (an abstract idea enumerated in the 2019 PEG, a law of nature, or a natural phenomenon). In this case independent claim 1 recites mental processes as applied to human activity. Claim 1 recites: providing, by a manager node, a global task queue of tasks to be assigned by an automation controller of the manager node to a plurality of execution nodes; in response to receiving a new task to be assigned, comparing resource metadata associated with the new task, a priority of the new task and device metrics for each of the plurality of execution nodes, wherein the device metrics for each of the plurality of execution nodes indicate a resource availability of the execution node and a status of a local task queue associated with the execution node; and determining, based on the comparison, a particular execution node among the plurality of execution nodes to assign the new task to. Steps a-c are limitations that each, as drafted, recite a process that, under its broadest reasonable interpretation, covers performance of the limitations in the mind with the aid of pen and paper, through observation, evaluation, judgment, and/or opinion, but for the recitation of generic computer components. Thus it is reasonable to identify these limitations as reciting a mental process under Prong 1 of Step 2A. See, MPEP 2106.04(a)(2) III C). For example, a can person perform the “providing,” “comparing,” and “determining” steps with mental evaluation and judgement. Other than reciting generic computing components, nothing in the claim element precludes the step from practically being performed in the mind. The mere nominal recitation of a generic “ method” does not take the claim limitation out of the mental processes grouping. Since the claims are directed toward a judicial exception, analysis flows to Prong 2. Prong 2 considers whether the judicial exception is integrated into a practical application. In this case, the judicial exception is not integrated into a practical application for the following reasons: The additional elements of a “manager node,” “automation controller,” and “execution node” are recited at a high level of generality and amounts to using a generic computing component as a tool to apply the abstract idea (MPEP § 2106.05(f)). Since the claims are directed to the determined judicial exception, the analysis flows to Step 2B. Therein, the elements and combination of elements are examined in the claims to determine whether the claims as a whole amounts to significantly more than the judicial exception. In this case, the claims do not include additional elements that are sufficient to amount to significantly more than the judicial exception. It is noted here that the elements should be considered both individually and as an ordered combination. In this case, the claimed method, system, and non-transitory computer-readable medium are generically recited and thus do not add significantly more to the respective limitations. Taken as an ordered combination, the limitations are directed to limitations referenced in Alice Corp. (also called the Mayo test) that are not enough to qualify as significantly more when recited in a claim with an abstract idea include, as a non-limiting or non-exclusive examples: (i) mere instructions to implement the idea on a computer, and/or (ii) recitation of generic computer structure that serves to perform generic computer functions that are well-understood, routine, and conventional activities previously known to the pertinent industry. The limitations that recite specific computer elements do not add significantly more because they are simply an attempt to limit the abstract idea to a particular technological environment. (MPEP § 2106.05 (I)(A)), “Limitations that the courts have found not to be enough to qualify as “significantly more” when recited in a claim with a judicial exception include: i. …mere instructions to implement an abstract idea on a computer.” Viewed as a whole, these additional claim elements do not provide meaningful limitations to transform the abstract idea into a patent eligible application of the abstract idea such that the claims amount to significantly more than the abstract idea itself (Note MPEP 2106.05(a)). Since there are no elements or ordered combination of elements that amount to significantly more than the judicial exception, the claims are not eligible subject matter under 35 USC §101. For the above reasons, the claims of this application are not patentable under 35 USC 101. Regarding claims 2, the step of “wherein for each of the plurality of execution nodes, the status of the associated local task queue comprises: a number of tasks currently within the associated local task queue; and a priority of each task currently within the associated local task queue” is analyzed as a “mental process” as discussed with reference to the associated “comparing” step of claim 1. For example, a person can use judgement to perform “comparing resource metadata associated with the new task, a priority of the new task and device metrics for each of the plurality of execution nodes, wherein the device metrics for each of the plurality of execution nodes indicate a resource availability of the execution node and a status of a local task queue associated with the execution node.” Regarding claim 3, the step of “wherein determining the particular execution node comprises: determining that the priority of one or more tasks currently within the associated local task queue of the particular execution node can be modified so that the particular execution node prioritizes the new task” is analyzed as a “mental process” as discussed with reference to the associated “determining” step of claim 1. For example, a person can use judgement to perform the “determining” step. Regarding claim 4, The additional elements of “deploying the new task to the particular execution node” and “executing, by the particular execution node” amounts to using a generic computing component as a tool to apply the abstract idea (MPEP § 2106.05(f)). The step of “modifying the priority of one or more tasks currently within the associated local task queue of the particular execution node based on the comparison” recites an additional mental process under Prong 1 since this step can be reasonably carried out in the human mind with the aid of pen and paper, through observation, evaluation, judgment, and/or opinion but for the recitation of generic computing components. The additional element of “sending updated device metrics to the manager node” amounts to insignificant extra-solution data transmission activity. (MPEP 2106.05(c)). Regarding claim 5, the additional element of “wherein the new task is deployed to the particular execution node using an Ansible playbook” amounts to using a generic computing component as a tool to apply the abstract idea (MPEP § 2106.05(f)). Regarding claim 6, The additional element of “receiving updated device metrics from a first execution node of the plurality of execution nodes” amounts to insignificant extra-solution data gathering/data transmission activity (MPEP § 2106.05(g)). The steps of “comparing the updated device metrics of the first execution node with a configuration profile of the first execution node” and “in response to determining that the first execution node does not meet the minimum resource thresholds, decommissioning the first execution node” each recite an additional mental process under Prong 1 since these steps can be reasonably carried out in the human mind with the aid of pen and paper, through observation, evaluation, judgment, and/or opinion but for the recitation of generic computing components. The additional element of “wherein the configuration profile indicates minimum resource thresholds that the first execution node must maintain” appears to be an attempt to generally linking the use of the judicial exception to a particular technological environment or field of use. (MPEP 2106.05(h)). Regarding claim 7, The additional element of “receiving updated device metrics from a first execution node of the plurality of execution nodes” amounts to insignificant extra-solution data gathering/data transmission activity (MPEP § 2106.05(g)). The steps of “comparing the updated device metrics of the first execution node with a configuration profile of the first execution node,” and “ in response to determining that the first execution node is approaching the minimum resource thresholds, modifying a priority of one or more tasks being executed by the first execution node” each recite an additional mental process under Prong 1 since these steps can be reasonably carried out in the human mind with the aid of pen and paper, through observation, evaluation, judgment, and/or opinion but for the recitation of generic computing components. The additional element of “wherein the configuration profile indicates minimum resource thresholds that the first execution node must maintain” appears to be an attempt to generally linking the use of the judicial exception to a particular technological environment or field of use. (MPEP 2106.05(h)). Regarding claim 8, this claim is not patent eligible for the same reasons given for claim 1 for the common limitations. The recitation of the additional elements of “a system,” “a memory” and “a processing device coupled to the memory” merely recite instructions to implement an abstract idea on a generic computer, or merely uses a generic computer or computer components as a tool to perform the abstract idea under Prong 2. Therefore, these additional elements do not integrate the judicial exception into a practical application. (MPEP 2106.05(f)). Under Step 2B, since these additional elements merely recite generic computer components to carry out the abstract idea, they do not amount to significantly more than the judicial exception. Regarding claim 9, this claim is similar to claim 2 and is ineligible for the same reasons as claim 2. Regarding claim 10, this claim is similar to claim 3 and is ineligible for the same reasons as claim 3. Regarding claim 11, this claim is similar to claim 4 and is ineligible for the same reasons as claim 4. Regarding claim 12, this claim is similar to claim 5 and is ineligible for the same reasons as claim 6. Regarding claim 13, this claim is similar to claim 6 and is ineligible for the same reasons as claim 6. Regarding claim 14, this claim is similar to claim 7 and is ineligible for the same reasons as claim 6. Regarding claim 15, this claim is not patent eligible for the same reasons given for claim 1 for the common limitations. The recitation of the additional elements of “non-transitory computer-readable medium having instructions stored thereon which, when executed by a processing device, cause the processing device to” merely recite instructions to implement an abstract idea on a generic computer, or merely uses a generic computer or computer components as a tool to perform the abstract idea under Prong 2. Therefore, these additional elements do not integrate the judicial exception into a practical application. (MPEP 2106.05(f)). Under Step 2B, since these additional elements merely recite generic computer components to carry out the abstract idea, they do not amount to significantly more than the judicial exception. Regarding claim 16, this claim is similar to claim 2 and is ineligible for the same reasons as claim 2. Regarding claim 17, this claim is similar to claim 3 and is ineligible for the same reasons as claim 3. Regarding claim 18, this claim is similar to claim 4 and is ineligible for the same reasons as claim 4. Regarding claim 19, this claim is similar to claim 5 and is ineligible for the same reasons as claim 6. Regarding claim 20, this claim is similar to claim 6 and is ineligible for the same reasons as claim 6. Claim Rejections - 35 USC § 103 In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status. The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action: A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made. Claims 1-5, 8-12, and 15-19 rejected under 35 U.S.C. 103 as being unpatentable over Karanasos et al. (US 20180300174 A1) in view of Pianigiani et al. (EP 3671452 A1). As per claim 1, Karanasos teaches the invention substantially as claimed including a method comprising: providing, by a manager node, a global task queue of tasks to be assigned by an [automation] controller of the manager node to a plurality of execution nodes ([0052], Resource Manager (RM) 320 is a component that manages cluster resources in centralized scheduling settings (thus appears only in Yaq-c); and [0056], when a job is submitted, it may wait at a global queue in the RM (shown in the figure), until it is admitted for execution); in response to receiving a new task to be assigned ([0055], When a client submits a new job to a cluster (or a job is received by or otherwise arrives at the cluster for execution), a JM 340 for this job may be initialized (step 1)), comparing resource metadata associated with the new task ([0119], Further improvements in job completion time may be provided by an alternative to executing queued tasks in a FIFO order, by taking into account the characteristics of the tasks and of the jobs they belong to), a priority of the new task ([0139], A node of a plurality of nodes in the distributed computing environment (e.g., cluster) on which a task is to run may be determined 1530. The task may be placed into a queue 1540 such that the task will be run on the determined node. A priority for the task relative to other tasks in the queue may also be determined 1550. Based on the priority of the task, an order of execution for all tasks in the queue may also be determined 1560. The tasks in the queue may then be ordered 1570 based on the determined order of execution) and device metrics for each of the plurality of execution nodes ([0055], The RM may then choose where to place the tasks based on a policy (such as resource availability, status of queues at the NMs, data locality, etc.); Examiner Note: Karanasos’ NM corresponds to a node manager at an execution node: [0050], Node Manager (NM) 310 is a service running at each of a cluster's worker nodes, and is responsible for task execution at that node), wherein the device metrics for each of the plurality of execution nodes indicate a resource availability of the execution node ([0055], The RM may then choose where to place the tasks based on a policy (such as resource availability...)) and a status of a local task queue associated with the execution node ([0055], The RM may then choose where to place the tasks based on a policy (such as... status of queues at the NMs,); and determining, based on the comparison, a particular execution node among the plurality of execution nodes to assign the new task to ([0052], Based on the available cluster resources and taking into account various scheduling constraints (e.g., data locality, resource interference, fairness/capacity) and a queue placement policy (to determine where tasks will be queued, if needed), it assigns resources to tasks for execution). Karanasos fails to specifically teach an automation controller. However, Pianigiani teaches an automation controller ([0053], virtual network controller 22 includes an interface unit 60; and [0055], interface unit 60 uses scripts and other automation tools to reduce the operational workload of configuring, troubleshooting and managing the physical and virtual devices of system 10...VN controller 22 includes a command processing unit 62 used to compile and execute user defined device-independent commands via configuration nodes 40 or analytics nodes 44. In some such example approaches command presentation unit 64 operates in conjunction with command processing unit 62 to present users with a framework for defining and executing such user-defined device-independent commands). Karanasos and Pianigiani are analogous because they are both related to task scheduling. Karanasos teaches a method of task scheduling among distributed nodes based on task priorities and resource status: [0012], a computer-implemented method may include receiving a job at a cluster for execution. The job may comprise one or more tasks. The method may include determining one or more queue sizes for one or more queues into which tasks are to be placed for execution in the distributed computing environment. A node of a plurality of nodes in the distributed computing environment (e.g., cluster) on which a task is to run may be determined. The task may be placed into a queue such that the task will be run on the determined node. A priority for the task relative to other tasks in the queue may also be determined. Based on the priority of the task, an order of execution for all tasks in the queue may also be determined. The tasks in the queue may then be ordered based on the determined order of execution. The techniques and embodiments provided herein may improve job completion times in a distributed computing environment and may also improve cluster resource utilization when compared to previous solutions; and [0049], although previous systems with queues at worker nodes may implement a task placement policy, no known prior systems implement additional queue management techniques, such as task prioritization through queue reordering, and queue sizing as are described herein and implemented in particular embodiments of Yaq-c and Yaq-d as provided herein). Pianigiani teaches a method of task scheduling using an automation controller to deploy tasks to distributed nodes using Ansible Playbooks: [0050], more complex automation tools such as Ansible and Puppet may be used. Ansible is a provisioning, configuration and deployment tool that relies on playbooks to define sequences of tasks.; and [0057], performs the one or more operations of the selected device-independent command on the selected network devices, wherein performing the one or more operations includes executing, on each selected network device, tasks based on commands from the command set associated with the network device family of the respective selected network device, wherein the tasks, when executed, perform the one or more operations on the respective selected network device. In one example approach , the command sets are collections of command line interface (CLI) commands associated with device families and/or device vendors. It would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention that based on the combination, the task management system Karanasos would be modified with the automation controller mechanism taught by Pianigiani resulting in a system that manages assigns tasks among distributed nodes using an automation controller. Therefore, it would have been obvious to combine the teachings of Karanasos and Pianigiani. As per claim 2, Karanasos teaches, wherein for each of the plurality of execution nodes, the status of the associated local task queue comprises: a number of tasks currently within the associated local task queue ([0055], The RM may then choose where to place the tasks based on a policy (such as resource availability, status of queues at the NMs; and [0080], When a task t is to be placed at the queue of node n (as discussed in Section 3.2), the last estimated queue wait time WT.sub.n reported by node n may be checked. Only when WT.sub.n<WT.sub.max would t then be queued at that node. Upon queuing, the RM may use a simple formula to update WT.sub.n, taking into account t's task duration estimate, until a fresh value for WT.sub.n is received from node n. Using this method, the number of tasks that get queued to each node may be dynamically adapted, based on the current load of the node and the tasks that are currently running and queued); and a priority of each task currently within the associated local task queue ([0139], The task may be placed into a queue 1540 such that the task will be run on the determined node. A priority for the task relative to other tasks in the queue may also be determined 1550. Based on the priority of the task, an order of execution for all tasks in the queue may also be determined 1560. The tasks in the queue may then be ordered 1570 based on the determined order of execution). As per claim 3, Karanasos teaches, wherein determining the particular execution node comprises: determining that the priority of one or more tasks currently within the associated local task queue of the particular execution node can be modified so that the particular execution node prioritizes the new task ([0139], A node of a plurality of nodes in the distributed computing environment (e.g., cluster) on which a task is to run may be determined 1530. The task may be placed into a queue 1540 such that the task will be run on the determined node. A priority for the task relative to other tasks in the queue may also be determined 1550. Based on the priority of the task, an order of execution for all tasks in the queue may also be determined 1560. The tasks in the queue may then be ordered 1570 based on the determined order of execution). As per claim 4, Karanasos teaches, further comprising: deploying the new task to the particular execution node ([0055], The JM may then dispatch the tasks for execution at the specified nodes (step 4); and [0139], A node of a plurality of nodes in the distributed computing environment (e.g., cluster) on which a task is to run may be determined 1530. The task may be placed into a queue 1540 such that the task will be run on the determined node); modifying the priority of one or more tasks currently within the associated local task queue of the particular execution node based on the comparison ([0139], A node of a plurality of nodes in the distributed computing environment (e.g., cluster) on which a task is to run may be determined 1530. The task may be placed into a queue 1540 such that the task will be run on the determined node. A priority for the task relative to other tasks in the queue may also be determined 1550. Based on the priority of the task, an order of execution for all tasks in the queue may also be determined 1560. The tasks in the queue may then be ordered 1570 based on the determined order of execution); executing, by the particular execution node, the new task ([0055], A task may start execution whenever it is allocated resources at the associated node by the NM); and sending updated device metrics to the manager node ([0109], each node periodically publishes information about its resource and queue status). As per claim 5, Pianigiani teaches wherein the new task is deployed to the particular execution node using an Ansible playbook ([0007], Operations on device families may, for instance, be expressed as tasks and templates using Ansible playbooks). As per claim 8, this is the “system claim” corresponding to claim 1 and is rejected for the same reasons. The same motivation used in the rejection of claim 1 is applicable to the instant claim. As per claim 9, this claim is similar to claim 2 and is rejected for the same reasons. As per claim 10, this claim is similar to claim 3 and is rejected for the same reasons. As per claim 11, this claim is similar to claim 4 and is rejected for the same reasons. As per claim 12, this claim is similar to claim 5 and is rejected for the same reasons. As per claim 15, this is the “non-transitory computer-readable medium claim” corresponding to claim 1 and is rejected for the same reasons. The same motivation used in the rejection of claim 1 is applicable to the instant claim. As per claim 16, this claim is similar to claim 2 and is rejected for the same reasons. As per claim 17, this claim is similar to claim 3 and is rejected for the same reasons. As per claim 18, this claim is similar to claim 4 and is rejected for the same reasons. As per claim 19, this claim is similar to claim 5 and is rejected for the same reasons. Claims 6, 13, and 20 are rejected under 35 U.S.C. 103 as being unpatentable over the combination of Karanasos-Pianigiani as applied to independent claims 1, 8, and 15 and in further view of Allen et al. (US 11836535 B1). As per claim 6, Karanasos teaches, further comprising: receiving updated device metrics from a first execution node of the plurality of execution nodes ([0109], each node periodically publishes information about its resource and queue status). Karanasos fails to specifically teach, comparing the updated device metrics of the first execution node with a configuration profile of the first execution node, wherein the configuration profile indicates minimum resource thresholds that the first execution node must maintain; and in response to determining that the first execution node does not meet the minimum resource thresholds, decommissioning the first execution node. However, Allen teaches, comparing the updated device metrics of the first execution node with a configuration profile of the first execution node, wherein the configuration profile indicates minimum resource thresholds that the first execution node must maintain (Column 19, Lines 21-28, parameters can define a trigger for retiring or destroying provisioned nodes from clouds 202-210 based on a job TTL being exceeded or an idle node time being exceeded. As another example, the parameters can define a trigger for retiring or destroying provisioned nodes from clouds 202-210 when the workload queue 258 has below a threshold number of jobs/requests pending and/or processing; and Column 24, Lines 1-5, A node configuration 674 can define configuration parameters and/or actions for configuring nodes. In this example, a trigger 676 is defined for executing a node provisioning action defined by a script 678 referenced in the node configuration 674); and in response to determining that the first execution node does not meet the minimum resource thresholds, decommissioning the first execution node (Column 19, Lines 12-19, the bursting parameters and triggers 402 can include parameters for deprovisioning (e.g., destroying, canceling, un-reserving, etc.) nodes, such as a trigger (e.g., job TTL exceeded, idle node time exceeded, a job or workload completion, a threshold backlog or workload queue 258 reduction, a threshold cost, a threshold availability at the on-premises site 212, etc.; and Column 24, Lines 1-5, A node configuration 674 can define configuration parameters and/or actions for configuring nodes. In this example, a trigger 676 is defined for executing a node provisioning action defined by a script 678 referenced in the node configuration 674). The combination of Karanasos- Pianigiani and Allen are analogous because they are each related to task scheduling. Karanasos teaches a method of task scheduling among distributed nodes based on task priorities and resource status. Pianigiani teaches a method of task scheduling using an automation controller to deploy tasks to distributed nodes using Ansible Playbooks. Allen teaches a method of prioritized task scheduling and resource management based on monitored resource metrics: Abstract, based on the number of jobs in the jobs queue and number of nodes available, determining whether to spin up a new node, take offline an existing node, or shutdown the existing node to yield a determination; and based on the determination and cloud bursting configuration, performing a cloud bursting action including spinning up the new node, taking offline the existing node, or shutting down the existing node; and Column 19, Lines 21-32, he parameters can define a trigger for retiring or destroying provisioned nodes from clouds 202-210 based on a job TTL being exceeded or an idle node time being exceeded. As another example, the parameters can define a trigger for retiring or destroying provisioned nodes from clouds 202-210 when the workload queue 258 has below a threshold number of jobs/requests pending and/or processing. In some cases, the network operator at the on-premises site 212 can also manually retire or destroy provisioned nodes from clouds 202-210 based on any criteria, such as a number of pending jobs, a backlog reduction, etc. It would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention that based on the combination, the task management system taught by the combination of Karanasos-Pianigiani would be modified with the resource deactivation mechanism taught by Allen resulting in a system that assigns tasks among distributed nodes while efficiently managing resources based on metrics data. Therefore, it would have been obvious to combine the teachings of the combination of Karanasos-Pianigiani and Allen. As per claim 13, this claim is similar to claim 6 and is rejected for the same reasons. The same motivation used in the rejection of claim 6 is applicable to the instant claim. As per claim 20, this claim is similar to claim 6 and is rejected for the same reasons. Claims 7 and 14 are rejected under 35 U.S.C. 103 as being unpatentable over Karanasos as applied to independent claims 1 and 8 and in further view of Allen et al. (US 11836535 B1) and Glew et al. (US 20130111489 A1). As per claim 7, Karanasos teaches, further comprising: receiving updated device metrics from a first execution node of the plurality of execution nodes ([0109], each node periodically publishes information about its resource and queue status). Karanasos fails to specifically teach, comparing the updated device metrics of the first execution node with a configuration profile of the first execution node, wherein the configuration profile indicates minimum resource thresholds that the first execution node must maintain; and in response to determining that the first execution node is approaching the minimum resource thresholds, modifying a priority of one or more tasks being executed by the first execution node. However, Allen teaches, comparing the updated device metrics of the first execution node with a configuration profile of the first execution node (Column 19, Lines 21-28, parameters can define a trigger for retiring or destroying provisioned nodes from clouds 202-210 based on a job TTL being exceeded or an idle node time being exceeded. As another example, the parameters can define a trigger for retiring or destroying provisioned nodes from clouds 202-210 when the workload queue 258 has below a threshold number of jobs/requests pending and/or processing; and Column 24, Lines 1-5, A node configuration 674 can define configuration parameters and/or actions for configuring nodes. In this example, a trigger 676 is defined for executing a node provisioning action defined by a script 678 referenced in the node configuration 674), wherein the configuration profile indicates minimum resource thresholds that the first execution node must maintain (Column 19, Lines 12-19, the bursting parameters and triggers 402 can include parameters for deprovisioning (e.g., destroying, canceling, un-reserving, etc.) nodes, such as a trigger (e.g., job TTL exceeded, idle node time exceeded, a job or workload completion, a threshold backlog or workload queue 258 reduction, a threshold cost, a threshold availability at the on-premises site 212, etc.; and Column 24, Lines 1-5, A node configuration 674 can define configuration parameters and/or actions for configuring nodes. In this example, a trigger 676 is defined for executing a node provisioning action defined by a script 678 referenced in the node configuration 674). The same motivation used in the rejection of claim 6 is applicable to the instant claim. The combination of Karanasos-Allen fails to specifically teach, in response to determining that the first execution node is approaching the minimum resource thresholds, modifying a priority of one or more tasks being executed by the first execution node. However, Glew teaches, in response to determining that the first execution node is approaching the minimum resource thresholds, modifying a priority of one or more tasks being executed by the first execution node ([0026], priority to the threads can be allocated using a NICE utility which specifies acceptable performance for a particular operation and allows reduced priority in appropriate conditions for tasks that can be assigned lower priority with little or no consequence; [0030], the entitlement level of the process with respect to the floating point unit can be changed to very low because the resource is not needed for a foreseeable duration. The process thus indicates to other processes a willingness to relinquish access to the source, for example a willingness to be "nice" about allowing others to use the resource, so that access is deferred in favor of any other process that uses the resource, or the resource is shut down if not currently needed by another process). The combination of Karanasos-Pianigiani-Allen and Glew are analogous because they are each related to task scheduling. Karanasos teaches a method of task scheduling among distributed nodes based on task priorities and resource status. Pianigiani teaches a method of task scheduling using an automation controller to deploy tasks to distributed nodes using Ansible Playbooks. Allen teaches a method of prioritized task scheduling and resource management based on monitored resource metrics. Glew teaches a method of task management, including adjusting task priorities, and resource management based on idleness thresholds. Abstract, information handling apparatus can further comprise a scheduler operable to schedule a plurality of threads based at least partly on entitlement as specified by the entitlement vector; and [0026], priority to the threads can be allocated using a NICE utility which specifies acceptable performance for a particular operation and allows reduced priority in appropriate conditions for tasks that can be assigned lower priority with little or no consequence. It would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention that based on the combination, the task management system taught by the combination of Karanasos-Pianigiani-Allen would be modified with the priority adjustment mechanism taught by Glew resulting in a system that adjusts task priority when resources are shutdown. Therefore, it would have been obvious to combine the teachings of the combination of Karanasos-Pianigiani-Allen and Glew. As per claim 14, this claim is similar to claim 7 and is rejected for the same reasons. The same motivation used in the rejection of claim 7 is applicable to the instant claim. Conclusion The prior art made of record and not relied upon is considered pertinent to applicant's disclosure and are as follows: Kannan et al. (US 20230205591) Teaches managing task priorities and node status based on monitored activity: [0365], the system throughput or system load may be monitored to adjust tasks and priorities. In addition, temperature within a secondary node may be monitored as discussed above to influence where tasks are sent, which drives within a secondary node or across secondary nodes are utilized, or power required to address a hot spot Neginhal et al. (US 20210286647 A1) Teaches queue-based task management: Abstract, task execution data is monitored from a plurality of task execution engines. A task request is identified. The task request can include a task and a Boolean predicate for task assignment. The task is assigned to a task execution engine embedded in a distributed application process if the Boolean predicate is true, and a capacity of the task execution engine is sufficient to execute the task. The task is enqueued in a persistent queue. The task is retrieved from the persistent queue and executed McCallum et al. (US 20200073706 A1) Teaches task management using various priority queues: Abstract, Aspects of the disclosure provide for mechanisms for scheduling computing tasks in a computer system. A method of the disclosure includes maintaining a priority queue comprising a plurality of computing tasks sorted in view of a plurality of numerical representations of priorities associated with the plurality of computing tasks; determining an attribute mask for a processing unit of a computer system, the attribute mask comprising a numerical representation of at least one attribute of the processing unit; and identifying, in view of the attribute mask, a computing task in the priority queue of the sorted computing tasks for processing by the processing unit of the computer system. Any inquiry concerning this communication or earlier communications from the examiner should be directed to MELISSA A HEADLY whose telephone number is (571)272-1972. The examiner can normally be reached Monday- Friday 9-5:30pm. Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice. If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Bradley Teets can be reached at 571-272-3338. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300. Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000. /MELISSA A HEADLY/Examiner, Art Unit 2197
Read full office action

Prosecution Timeline

Feb 14, 2024
Application Filed
Jun 12, 2026
Non-Final Rejection mailed — §101, §103 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12664011
Hybrid Cloud Based Protection for Applications and Virtual Machines
3y 9m to grant Granted Jun 23, 2026
Patent 12650862
Sharing Virtual Environment Data
4y 9m to grant Granted Jun 09, 2026
Patent 12639091
PROBE DEPLOYMENT
4y 4m to grant Granted May 26, 2026
Patent 12632290
METHOD AND APPARATUS FOR DYNAMICALLY ADJUSTING PIPELINE DEPTH TO IMPROVE EXECUTION LATENCY
4y 4m to grant Granted May 19, 2026
Patent 12619453
COMMUNICATION PROCESSING DEVICE, PROGRAM AND COMMUNICATION PROCESSING METHOD
5y 1m to grant Granted May 05, 2026
Study what changed to get past this examiner. Based on 5 most recent grants.

Strategy Recommendation AI-generated — please review before filing

Get a prosecution strategy drawn from examiner precedents, rejection analysis, and claim mapping.
Typically takes 5-10 seconds — AI-generated, attorney review required before filing

Prosecution Projections

1-2
Expected OA Rounds
75%
Grant Probability
99%
With Interview (+40.1%)
3y 5m (~1y 0m remaining)
Median Time to Grant
Low
PTA Risk
Based on 412 resolved cases by this examiner. Grant probability derived from career allowance rate.

Sign in with your work email

Enter your email to receive a magic link. No password needed.

Personal email addresses (Gmail, Yahoo, etc.) are not accepted.

Free tier: 3 strategy analyses per month