Patent ID: 8056083

Claim:
A method, comprising: dividing a computer job, into a plurality of micro-jobs, by a program that is separate from an operating system to which the computer job is to be submitted for execution; wherein the program selects a size of a first micro-job of the plurality of micro-jobs based, at least in part, on a duration of time-slices that are being allocated to threads, by the operating system, for use of a resource; after the program selects the size of the first micro-job, the program submitting the first micro-job to the operating system for execution; wherein the first micro-job is executed within a first allotted time for which the first micro-job is given ownership of the resource; subsequent to waiting a first time interval after execution of the first micro-job is completed, the program submitting a second micro-job, of the plurality of micro-jobs, for execution; wherein the second micro-job is executed within a second allotted time for which the second micro-job is given ownership of the resource; wherein the method is executed by one or more computing devices.