Scheduling computer program jobs based on historical availability of resources
First Claim
1. A method for scheduling a program for execution, the program requiring a computer hardware resource for execution, the method comprising the steps of:
- a computer determining and recording historic utilization or availability of the computer hardware resource at a multiplicity of times a day;
the computer subsequently receiving a request to schedule the program for execution on the day at a specified time and (a) daily thereafter at the specified time or (b) weekly thereafter on the day of the week at the specified time, or (c) monthly thereafter on the day of the month at the specified time, and in response, the request receiving computer checking the record of the historic utilization or availability of the computer hardware resource for the day at approximately the specified time to determine if there has been historical availability of the resource exceeding a predetermined availability threshold on the day at approximately the specified time to execute the program, and if so, scheduling the program for execution, and executing the program, on the day at the specified time and (i) daily thereafter at the specified time, or (ii) weekly thereafter on the day of the week at the specified time, or (iii) monthly thereafter on the day of the month at the specified time, as requested, and if not, the request receiving computer not scheduling the program for execution on the day at the specified time or (i) daily thereafter at the specified time, or (ii) weekly thereafter on the day of the week at the specified time, or (iii) monthly thereafter on the day of the month at the specified time, as requested; and
in response to a determination that there was not historical availability of the resource exceeding the predetermined availability threshold on the day at approximately the specified time, the request receiving computer (i) automatically determining an other time on the day within a predetermined time interval, relative to the specified time, during which there was historical availability of the resource exceeding the predetermined availability threshold in the past to execute the program, wherein the automatically determining the other time comprises determining the other time as being a time of expected maximum availability of the resource within the time interval, (ii) displaying on a computer monitor a notification that the other time on the day is available to execute the program, (iii) scheduling the program for execution at the other time on the day, and (iv) executing the program at the other time on the day.
2 Assignments
0 Petitions
Accused Products
Abstract
A method and system for scheduling, for periodic execution, a program requiring a computer hardware resource for execution. A computer determines and records historic utilization or availability of the resource multiple times a day. The computer subsequently receives a request to schedule the program for execution on the day at a specified time and (a) daily, (b) weekly, or (c) monthly at the specified time, and in response, the computer determines if there has been historical availability of the resource exceeding a predetermined availability threshold on the day at approximately the specified time to execute the program, and if so, schedule the program for execution on the day at the specified time and (i) daily, (ii) weekly, or (iii) monthly thereafter, as requested, and if not, not schedule the program for execution on the day at the specified time or (i) daily, (ii) weekly, or (iii) monthly thereafter, as requested.
59 Citations
14 Claims
-
1. A method for scheduling a program for execution, the program requiring a computer hardware resource for execution, the method comprising the steps of:
-
a computer determining and recording historic utilization or availability of the computer hardware resource at a multiplicity of times a day; the computer subsequently receiving a request to schedule the program for execution on the day at a specified time and (a) daily thereafter at the specified time or (b) weekly thereafter on the day of the week at the specified time, or (c) monthly thereafter on the day of the month at the specified time, and in response, the request receiving computer checking the record of the historic utilization or availability of the computer hardware resource for the day at approximately the specified time to determine if there has been historical availability of the resource exceeding a predetermined availability threshold on the day at approximately the specified time to execute the program, and if so, scheduling the program for execution, and executing the program, on the day at the specified time and (i) daily thereafter at the specified time, or (ii) weekly thereafter on the day of the week at the specified time, or (iii) monthly thereafter on the day of the month at the specified time, as requested, and if not, the request receiving computer not scheduling the program for execution on the day at the specified time or (i) daily thereafter at the specified time, or (ii) weekly thereafter on the day of the week at the specified time, or (iii) monthly thereafter on the day of the month at the specified time, as requested; and in response to a determination that there was not historical availability of the resource exceeding the predetermined availability threshold on the day at approximately the specified time, the request receiving computer (i) automatically determining an other time on the day within a predetermined time interval, relative to the specified time, during which there was historical availability of the resource exceeding the predetermined availability threshold in the past to execute the program, wherein the automatically determining the other time comprises determining the other time as being a time of expected maximum availability of the resource within the time interval, (ii) displaying on a computer monitor a notification that the other time on the day is available to execute the program, (iii) scheduling the program for execution at the other time on the day, and (iv) executing the program at the other time on the day. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A computer program product for scheduling a program for execution, the program requiring a computer hardware resource for execution, the computer program product comprising:
a computer-readable storage device and program instructions stored on the storage device, the program instructions comprising; program instructions to determine and record historic utilization or availability of the computer hardware resource at a multiplicity of times a day; program instructions to subsequently receive a request to schedule the program for execution on the day at a specified time and (a) daily thereafter at the specified time or (b) weekly thereafter on the day of the week at the specified time, or (c) monthly thereafter on the day of the month at the specified time, and in response, check the record of the historic utilization or availability of the computer hardware resource for the day at approximately the specified time to determine if there has been historical availability of the resource exceeding a predetermined availability threshold on the day at approximately the specified time to execute the program, and if so, schedule the program for execution, and execute the program, on the day at the specified time and (i) daily thereafter at the specified time, or (ii) weekly thereafter on the day of the week at the specified time, or (iii) monthly thereafter on the day of the month at the specified time, as requested, and if not, not scheduling the program for execution on the day at the specified time or (i) daily thereafter at the specified time, or (ii) weekly thereafter on the day of the week at the specified time, or (iii) monthly thereafter on the day of the month at the specified time, as requested; and program instructions stored on the storage device, in response to a determination that there was not historical availability of the resource exceeding the predetermined availability threshold on the day at approximately the specified time, (i) to automatically determine another time on the day within a predetermined time interval, relative to the specified time, during which there was historical availability of the resource exceeding the predetermined availability threshold in the past to execute the program, wherein the program instructions to automatically determine the other time comprise program instructions to automatically determine the other time as being a time of expected maximum availability of the resource within the time interval, (ii) to display on a computer monitor a notification that the other time on the day is available to execute the program, (iii) to schedule the program for execution at the other time on the day, and (iv) to execute the program at the other time on the day. - View Dependent Claims (7, 8, 9, 10)
-
11. A computer system for scheduling a program for periodic;
- execution, the program requiring a computer hardware resource for execution, the computer system comprising;
a processor; a computer readable memory, and a computer-readable storage device and program instructions stored on the storage device for execution by the processor via the computer readable memory, the program instructions comprising; program instructions to determine and record historic utilization or availability of the computer hardware resource at a multiplicity of times a day; program instructions to subsequently receive a request to schedule the program for execution on the day at a specified time and (a) daily thereafter at the specified time or (b) weekly thereafter on the day of the week at the specified time, or (c) monthly thereafter on the day of the month at the specified time, and in response, check the record of the historic utilization or availability of the computer hardware resource for the day at approximately the specified time to determine if there has been historical availability of the resource exceeding a predetermined availability threshold on the day at approximately the specified time to execute the program, and if so, schedule the program for execution, and execute the program, on the day at the specified time and (i) daily thereafter at the specified time, or (ii) weekly thereafter on the day of the week at the specified time, or (iii) monthly thereafter on the day of the month at the specified time, as requested, and if not, not scheduling the program for execution on the day at the specified time or (i) daily thereafter at the specified time, or (ii) weekly thereafter on the day of the week at the specified time, or (iii) monthly thereafter on the day of the month at the specified time, as requested; and program instructions stored on the storage device, in response to a determination that there was not historical availability of the resource exceeding the predetermined availability threshold on the day at approximately the specified time, (i) to automatically determine another time on the day within a predetermined time interval, relative to the specified time, during which there was historical availability of the resource exceeding the predetermined availability threshold in the past to execute the program, wherein the program instructions to automatically determine the other time comprise program instructions to automatically determine the other time as being a time of expected maximum availability of the resource within the time interval, (ii) to display on a computer monitor a notification that the other time on the day is available to execute the program, (iii) to schedule the program for execution at the other time on the day, and (iv) to execute the program at the other time on the day. - View Dependent Claims (12, 13, 14)
- execution, the program requiring a computer hardware resource for execution, the computer system comprising;
Specification