Job queue
   HOME

TheInfoList



OR:

In
system software System software is software designed to provide a platform for other software. Examples of system software include operating systems (OS) like macOS, Linux, Android and Microsoft Windows, computational science software, game engines, search engin ...
, a job queue ( batch queue, input queue), is a data structure maintained by
job scheduler A job scheduler is a computer application for controlling unattended background program execution of job (computing), jobs. This is commonly called batch scheduling, as execution of non-interactive jobs is often called batch processing, though tr ...
software containing jobs to run. Users submit their programs that they want executed, "jobs", to the queue for
batch processing Computerized batch processing is a method of running software programs called jobs in batches automatically. While users are required to submit the jobs, no other interaction by the user is required to process the batch. Batches may automatically ...
. The scheduler software maintains the queue as the pool of jobs available for it to run. Multiple batch queues might be used by the scheduler to differentiate types of jobs depending on parameters such as: * job priority * estimated execution time * resource requirements The use of a batch queue gives these benefits: * sharing of computer resources among many users * time-shifts job processing to when the computer is less busy * avoids idling the compute resources without minute-by-minute human supervision * allows around-the-clock high utilization of expensive computing resources Any process that comes to the CPU should wait in a queue.


See also

*
Command pattern In object-oriented programming, the command pattern is a behavioral design pattern in which an object is used to encapsulate all information needed to perform an action or trigger an event at a later time. This information includes the method name ...
*
Command queue In computer science, a command queue is a queue for enabling the delay of command execution, either in order of priority, on a first-in first-out basis, or in any order that serves the current purpose. Instead of waiting for each command to be ...
*
Job scheduler A job scheduler is a computer application for controlling unattended background program execution of job (computing), jobs. This is commonly called batch scheduling, as execution of non-interactive jobs is often called batch processing, though tr ...
* Priority queue * Task queue Job scheduling {{Reflist