Job Queue

What is Job Queue?

In relation to the jobs of a computer processor, a job queue refers to the location where all its jobs are stored before these are sent to it for processing. It can also be referred to as the list of incoming jobs on hold.

In theory, the job queue signifies the initial location where the batch jobs submitted to the system goes to, before they become active in the subsystem.

These jobs are held here awaiting a number of different factors to be met and allocated.

Understanding Job Queue

Understanding Job Queue

Typically, a job queue refers to jobs entering into the system that are ordered and stored. This is actually the list of jobs that wait to be processed by the subsystems.

This means that the jobs in the job queue will remain there unless there is an active subsystem that is free and ready to accept jobs from the job queue.

Read Also:  What is RGB lighting in PC? Types & More

These subsystems can carry out tasks received from several different job queues, but, at a time, one subsystem can process jobs from only one specific job queue.

Job queues can be created either in an independent disk pool or you may even use the one in the system.

However, the jobs listed in the job queue created in an independent disk pool will end only when an IPL or Initial Program Load of the system occurs or when the disk pool is varied off.

Ideally, when a job queue is created in an independent disk pool, the jobs on it do not move to a new system.

From the perspective of the system software, a job queue, which is also called input queue or batch queue, refers to a specific type of data structure.

This is typically retained by the job scheduler software which actually contains the jobs to do.

It maintains the queue so that jobs from the pool are available for the software to run as and when required.

Jobs, in this case, refer to the programs that are submitted by the users and are to be executed. These are held in the job queue awaiting batch processing.

There may be multiple batch queues used by the scheduler. This helps in separating the jobs based on their types and other specific parameters such as:

There are several benefits of using batch queues which include but are not limited to:

Jobs are selected from a job queue on the basis of different factors such as:

Read Also:  What is Firewall? Types, Function, Uses & More

Jobs are identified by the job queue entry and accordingly these are chosen for running in the subsystem.

If a job queue is allocated to a subsystem already, it must complete and de-allocate it before receiving further jobs.

If there is no job queue and the subsystem is started, the job queue is allocated when:

Multiple job queues can be created for normal work and for special purposes on the basis of the following parameters:

The subsystem monitor selects jobs from these multiple job queues based on the sequence number. It can assign more than one job queue.

The security of the job queue can be maintained by teasers if they are authorized. Usually there are three ways in which they can be authorized such as:

Where is the Job Queue Found?

Usually, in conventional batch systems, the job queue is found in the secondary memory.

Some of the jobs in this job queue may, however, be picked by the job scheduler or the long term scheduler to move them into the primary memory or RAM.

Read Also:  14 Differences Between DIMM & SIMM

However, if you consider the modern time-sharing operating systems or batch systems that are designed mainly for multiprogramming, the newly created jobs may go directly to the Random Access Memory or RAM.

This means that these jobs will be located in the ready queue and hence it can be interpreted in the same way as the ready queue.

Job Queue Vs Ready Queue


A job queue holds the jobs that are needed to be processed by the subsystems of a computer based on their priority.

Ideally, any process that comes to the system cannot go to the CPU directly but needs to wait in a job queue first.

From there, it will be allocated to the main memory of the system and then to the CPU.