Job control (computing): Difference between revisions

Content deleted Content added
{{anchor}}Batch processing: Remove wordy, junky info
Move interesting info to (overly short) intro
Line 5:
{{More citations needed|date=August 2017}}
In [[computing]], '''job control''' refers to the automated control of [[Job (computing)|job]] execution; ensuring that each job has access to adequate resources to perform correctly, that competition for limited resources does not cause a [[Deadlock (computer science)|deadlock]], resolving such situations where they do occur, and terminating jobs that, for any reason, are not performing as expected. Even with sophisticated automation, most systems, such as [[Job control (Unix)|Unix-like systems]], permit manual operations such as interrupting, pausing and resuming jobs and to execute them in the foreground (interactively) instead of the usual background (batch) mode for fully automated execution.
 
Job control, a.k.a. [[batch processing]] mostly proceeds without human intervention.<ref>{{cite web
|url=http://publib.boulder.ibm.com/infocenter/zos/basics/index.jsp?topic=/com.ibm.zos.zmainframe/zconc_batchproc.htm
|title=Mainframe working after hours: Batch processing}}</ref> Job control is configured by [[programmer]]s who decide details including:
* When to run a job
* Under which conditions to skip a step
* Which files and/or devices to use for input/output
* Whether a file is to be retained or deleted
* The maximum amount of storage that can be used
 
== History ==
Line 14 ⟶ 23:
 
However, this scheduling has drawbacks. A process that seldom waits (i.e. does not use a peripheral) would hog the processor until it completed or was interrupted. Other processes would then be starved of processor resources and might become slow. This can be resolved via [[Preemption (computing)|preemptive]] multitasking, a.k.a. time slicing, in which each process is swapping out after it has had the processor for a period of time. Further, a process can be given a priority that allows it to be given more access to the process relative to lower priority processes.
 
=={{anchor}}Batch processing==
Job control, a.k.a. [[batch processing]] mostly proceeds without human intervention.<ref>{{cite web
|url=http://publib.boulder.ibm.com/infocenter/zos/basics/index.jsp?topic=/com.ibm.zos.zmainframe/zconc_batchproc.htm
|title=Mainframe working after hours: Batch processing}}</ref> Job control is configured by [[programmer]]s who decide details including:
* When to run a job
* Which files and/or devices to use for input/output
* Whether a file is to be retained or deleted
* The maximum amount of storage that can be used
* Under which conditions to skip a step
 
==Job control languages==