Prosecution Insights
Last updated: July 17, 2026
Application No. 18/735,299

JOB SCHEDULING METHOD AND INFORMATION PROCESSING APPARATUS

Non-Final OA §103
Filed
Jun 06, 2024
Priority
Jul 20, 2023 — JP 2023-117957
Examiner
BOURZIK, BRAHIM
Art Unit
2191
Tech Center
2100 — Computer Architecture & Software
Assignee
Fujitsu Limited
OA Round
1 (Non-Final)
64%
Grant Probability
Moderate
1-2
OA Rounds
1y 5m
Est. Remaining
99%
With Interview

Examiner Intelligence

Grants 64% of resolved cases
64%
Career Allowance Rate
248 granted / 385 resolved
+9.4% vs TC avg
Strong +44% interview lift
Without
With
+44.0%
Interview Lift
resolved cases with interview
Typical timeline
3y 6m
Avg Prosecution
26 currently pending
Career history
417
Total Applications
across all art units

Statute-Specific Performance

§101
0.6%
-39.4% vs TC avg
§103
94.1%
+54.1% vs TC avg
§102
1.9%
-38.1% vs TC avg
§112
3.0%
-37.0% vs TC avg
Black line = Tech Center average estimate • Based on career data from 385 resolved cases

Office Action

§103
CTNF 18/735,299 CTNF 88083 DETAILED ACTION Notice of Pre-AIA or AIA Status 07-03-aia AIA 15-10-aia The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA. Claims 1-6 are pending in this office action. Claim Rejections - 35 USC § 103 07-06 AIA 15-10-15 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. 07-20-aia AIA 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. 07-21-aia AIA Claim s 1-6 are rejected under 35 U.S.C. 103 as being unpatentable over Boutin et al US20160098292A1 in view of Smith et al US10,810,042B1 . As per claim 1, Boutin discloses a non-transitory computer-readable storage medium storing a computer program that causes a computer to perform a process comprising: [0097]“. For instance, such modules might be operated and/or instantiated in response to one or more processors of the computing system running one or more computer-executable instructions that are embodied on one or more computer-readable storage media that form a computer program product that is accessed by the computing system”; identifying, in a plurality of execution waiting jobs, an update job of updating a control software of a target node among a plurality of nodes and two or more user jobs : [0049]”The cluster-level information 520 might also include information regarding scheduled maintenance , upgrade , addition, or removal of one or more servers within the cluster system 100”; [0043]“ Thus, if the task categories were delineated by task processing resources 230 used to perform the task, the task categories might be, for example, delineated by the amount of processing resources (e.g., the number processing cores) and memory resources (e.g., in terms of size) that are to be used to perform tasks. For instance, FIG. 3 illustrates a wait time matrix 300 that shows the example expected wait times categorized by both processor cores and memory size”; each with specification of a number of used nodes and an expected execution time, the number of used nodes indicating how many nodes are used among the plurality of nodes: [0065]“For instance, runtime estimation might initially be conservative, based on the operators in a task and the amount of data to be processed. Tasks in the same stage given the acyclic graph perform the same computation over different datasets. Their runtime characteristics are similar and the statistics from the executions of the earlier tasks can help improve runtime estimates for the later ones. Once a task starts running, the server performance monitoring component 210 monitors its overall resource usage and responds to a corresponding job scheduler's status update requests with information such as memory usage, processor time, execution time (wall clock time), and I/O throughput . The scheduler then uses this information along with other factors such as operator characteristics and input size to refine resource usage and predict expected runtime for tasks from the same stage”; planning a schedule of the update job and the two or more user jobs so as to reduce a total waiting time of the two or more user jobs: [0095]”Opportunistic tasks are subject to starvation if the host server experiences resource pressure. Further, the opportunistic tasks can wait for an unbounded amount of time in the opportunistic task pool 221. In order to avoid job starvation, tasks scheduled opportunistically can be upgraded to regular tasks after being assigned a token. Because a job requires at least one token to run and there is a finite amount of tasks in a job, the scheduler is able to transition a starving opportunistic task to a regular task at one point , thus preventing job starvation.”; based on the number of used nodes and the expected execution time: [0033]“The ellipses 133 represent flexibility in the number of jobs being actively performed by the cluster system 100. Although only two jobs are illustrated as being scheduled in the cluster system 100 for simplicity and clarity, the number of jobs in process within a given cluster system will vary over time as jobs complete , initiate, abort, and so forth, and may include a very large number of jobs”; in such a manner that each of the two or more user jobs is assigned to one or more nodes that are available [0078]“Therefore, the job scheduler may adopt a variant of a stable matching algorithm to match tasks with servers . For each task in a batch , the job scheduler finds the server with the earliest estimated completion time as a proposal for that task ”. controlling an order of execution of the update job and the two or more user jobs according to the planned schedule. [0026]“Often, such computational jobs can have high degrees of parallelism. Each computational job consists of a number of tasks with inter-task dependencies that describe execution order. A “task” is a term of art that represents is a basic unit of computation.; [0074] Besides completion time estimation, the task- execution order also matters for overall job latency . For example, for the job graph in FIG. 8, suppose the tasks in S1 run for 1 minute on average, the tasks in S2 run for an average of 2 minutes (with potential partition-skew induced stragglers) running up to 10 minutes, and the tasks in S3 run for an average of 30 seconds on average. As a result, efficiently executing S1 and S2 appears more critical to achieve the fastest runtime. Therefore, the job scheduler prioritizes resources to tasks within S1 and S2 before considering tasks within S3. Within S2, the scheduler should start the vertex with the largest input as early as possible, because it is the most likely to be on the critical path of the job. But not explicitly: And have an identical version of the control software among the plurality of nodes; Smith discloses: and have an identical version of the control software among the plurality of nodes: Col 1 lines 7-12 “For example, a hypervisor running on a host machine or server may be used to create one or more virtual machines that may each run the same operating system or different operating systems (e.g., a first virtual machine may run a Windows® operating system and a second virtual machine may run a Unix-like operating system such as OS X®”; col 18 lines32-38 “in some cases, a majority of the data associated with the snapshot and the candidate snapshot may be identical (e.g., both the snapshot and the candidate snapshot may be associated with virtual machines that use the same operating system and have the same applications installed)”; It would have obvious to one having ordinary skill in the art before the effective filling date of the claimed invention to combine the teachings of cited references. One of ordinary skill in the art before the effective filling date of the claimed invention would have been motivated to incorporate the teachings of Smith into teachings of Boutin to improve system performance and decrease the maximum amount of disk space or memory allocated to child tasks running on a particular node if there is more than a threshold amount of time remaining to complete the job. The reduction in the maximum amount of disk space or memory allocated to the child tasks running on the particular node may improve the performance of other tasks running on the particular node.(Smith col 24 lines 15-23). As per claim 2, the rejection of claim 1 is incorporated and furthermore Boutin discloses: wherein the update job is placed at a top of an execution waiting queue containing the plurality of execution waiting jobs, and the two or more user jobs are placed after the update job in the execution waiting queue. [0074] Besides completion time estimation, the task- execution order also matters for overall job latency . For example, for the job graph in FIG. 8, suppose the tasks in S1 run for 1 minute on average, the tasks in S2 run for an average of 2 minutes (with potential partition-skew induced stragglers) running up to 10 minutes, and the tasks in S3 run for an average of 30 seconds on average. As a result, efficiently executing S1 and S2 appears more critical to achieve the fastest runtime. Therefore, the job scheduler prioritizes resources to tasks within S1 and S2 before considering tasks within S3. Within S2, the scheduler should start the vertex with the largest input as early as possible, because it is the most likely to be on the critical path of the job. As per claim 3, the rejection of claim 1 is incorporated and furthermore Boutin discloses: wherein the schedule is selected from a plurality of schedules including a first schedule that executes the update job earlier than the two or more user jobs and a second schedule that executes at least one of the two or more user jobs earlier than the update job: [0078] Therefore, the job scheduler may adopt a variant of a stable matching algorithm to match tasks with servers . For each task in a batch, the job scheduler finds the server with the earliest estimated completion time as a proposal for that task. A server accepts a proposal from a task if that is only proposal assigned. A conflict arises when more than one task proposes to the same server. In this case, the server picks the task whose completion time saving is the greatest if it is assigned to the server. The tasks not picked withdraw their proposals and enter the next iteration that tries to match the remaining tasks and servers. This iterates until all tasks have been assigned, or until it reaches the maximum number of iterations . As shown in FIG. 13, the variant of the matching matches Task2 to server C and Task3 to server B, which effectively leverages locality and results in better job performance.; . As per claim 4, the rejection of claim 1 is incorporated and furthermore Boutin discloses: computing a plurality of first patterns that each assign a first user job among the two or more user jobs to as many nodes with the identical version as the number of used nodes of the first user job, and computing, for each of the plurality of first patterns, a second pattern that assigns a second user job among the two or more user jobs to as many nodes with the identical version as the number of used nodes of the second user job. Smith discloses: computing a plurality of first patterns that each assign a first user job among the two or more user jobs to as many nodes with the identical version as the number of used nodes of the first user job: col 1 lines7-14 “For example, a hypervisor running on a host machine or server may be used to create one or more virtual machines that may each run the same operating system or different operating systems (e.g., a first virtual machine may run a Windows® operating system and a second virtual machine may run a Unix-like operating system such as OS X®.” Col 12 lines 1-12 “ The distributed job scheduler 108 may comprise a distributed fault tolerant job scheduler, in which jobs affected by node failures are recovered and rescheduled to be run on available nodes . In one embodiment, the distributed job scheduler 108 may be fully decentralized and implemented without the existence of a master node . The distributed job scheduler 108 may run job scheduling processes on each node in a cluster or on a plurality of nodes in the cluster and each node may independently determine which tasks to execute . The distributed job scheduler 108 may be used for scheduling backup jobs that acquire and store virtual machine snapshots for one or more virtual machines over time . The distributed job scheduler 108 may follow a backup schedule to backup an entire image of a virtual machine at a particular point in time or one or more virtual disks associated with the virtual machine at the particular point in time.”; computing, for each of the plurality of first patterns, a second pattern that assigns a second user job among the two or more user jobs to as many nodes with the identical version as the number of used nodes of the second user job. Col 4 lines 3-10 “Data management tasks may be assigned and executed across the distributed cluster in a fault tolerant manner based on the location of data within the cluster (e.g., assigning tasks to nodes that store data related to the task) and node resource availability (e.g., assigning tasks to nodes with sufficient compute or memory capacity for the task ).”; It would have obvious to one having ordinary skill in the art before the effective filling date of the claimed invention to combine the teachings of cited references. One of ordinary skill in the art before the effective filling date of the claimed invention would have been motivated to incorporate the teachings of Smith into teachings of Boutin to improve system performance and decrease the maximum amount of disk space or memory allocated to child tasks running on a particular node if there is more than a threshold amount of time remaining to complete the job. The reduction in the maximum amount of disk space or memory allocated to the child tasks running on the particular node may improve the performance of other tasks running on the particular node.(Smith col 24 lines 15-23). Claim 5 is the method claim corresponding to non-transitory computer-readable storage medium claim 1 and rejected under the same rational set forth in connection with the rejection of claim 1 above. Claim 6 is the system claim corresponding to non-transitory computer-readable storage medium claim 1 and rejected under the same rational set forth in connection with the rejection of claim 1 above. Pertinent arts: US 20110154320 A1: [0060] Also, or alternatively, specification user interface 400 may include VM Maintenance Schedule 420 and/or VM Patching Schedule, 425 that may enable a user (e.g., a user of client device 210) to specify scheduled recurring maintenance events and/or patching events, respectively, for the particular VM 230 in the production state of the VM lifecycle. US 20190220285 A1: The information specified for the job may be propagated to the configuration provider to create a maintenance window, at operation , and instructions may be further communicated via the user interface (as initiated from an administrative user) to approve the specific job or task sequence in operation . Conclusion Any inquiry concerning this communication or earlier communications from the examiner should be directed to BRAHIM BOURZIK whose telephone number is (571)270-7155. The examiner can normally be reached Monday-Friday (8-4:30). 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, Wei Y Mui can be reached at 571-270-2738. 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. /BRAHIM BOURZIK/Examiner, Art Unit 2191 /WEI Y MUI/Supervisory Patent Examiner, Art Unit 2191 Application/Control Number: 18/735,299 Page 2 Art Unit: 2191 Application/Control Number: 18/735,299 Page 3 Art Unit: 2191 Application/Control Number: 18/735,299 Page 4 Art Unit: 2191 Application/Control Number: 18/735,299 Page 5 Art Unit: 2191 Application/Control Number: 18/735,299 Page 6 Art Unit: 2191 Application/Control Number: 18/735,299 Page 7 Art Unit: 2191 Application/Control Number: 18/735,299 Page 8 Art Unit: 2191 Application/Control Number: 18/735,299 Page 9 Art Unit: 2191 Application/Control Number: 18/735,299 Page 10 Art Unit: 2191 Application/Control Number: 18/735,299 Page 11 Art Unit: 2191
Read full office action

Prosecution Timeline

Jun 06, 2024
Application Filed
Jun 04, 2026
Non-Final Rejection mailed — §103 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12669988
SYSTEMS AND METHODS FOR UPDATING INFORMATION HANDLING SYSTEMS AT A REMOTE NETWORK LOCATION FROM THE UPDATE REPOSITORY
3y 6m to grant Granted Jun 30, 2026
Patent 12669994
PHYSICAL NODE OPTIMIZER IN A CONTAINERIZED APPLICATION MANAGEMENT SYSTEM
3y 0m to grant Granted Jun 30, 2026
Patent 12657112
INTEGRATED SYSTEM FOR ASSESSING APPLICATION FITNESS
3y 2m to grant Granted Jun 16, 2026
Patent 12645570
METHOD AND SYSTEM FOR OPTIMIZING TESTING AND DEPLOYMENT OF AN APPLICATION
3y 4m to grant Granted Jun 02, 2026
Patent 12619520
Software Engineering with Machine-Readable Feature Specifications
3y 0m 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
64%
Grant Probability
99%
With Interview (+44.0%)
3y 6m (~1y 5m remaining)
Median Time to Grant
Low
PTA Risk
Based on 385 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