Job control (computing): Difference between revisions

Content deleted Content added
/* moved "
Line 29:
* using which file(s) &/or device(s)<ref>and many more details, such as whether the file is to be retained or deleted, the maximum of disk space to which it can grow, the name of a tape to be pre-mounted</ref> for input/output, and
* at times to also indicate under what conditions to skip a step.
 
==Job control languages==
Early computer [[resident monitor]]s and [[operating system]]s were relatively primitive and were not capable of sophisticated resource allocation. Typically such allocation decisions were made by the computer operator or the user who submitted a job. [[Batch processing]] was common, and interactive computer systems rare and expensive. Job control languages (JCLs) developed as primitive instructions, typically punched on cards at the head of a deck containing input data, requesting resources such as memory allocation, serial numbers or names of magnetic tape spools to be made available during execution, or assignment of filenames or devices to device numbers referenced by the job. A typical example of this kind of language, still in use on mainframes, is [[IBM]]'s [[Job Control Language]] (also known as JCL). Though the format of early JCLs was intended for [[punched card]] use, the format survived the transmission to storage in computer files on disk.
 
As time sharing systems developed, interactive job control emerged. An end-user in a time sharing system could submit a job interactively from his remote [[computer terminal|terminal]] ([[remote job entry]]), communicate with the operators to warn them of special requirements, and query the system as to its progress. He could assign a priority to the job, and terminate (kill) it if desired. He could also, naturally, run a job in the foreground, where he would be able to communicate directly with the executing program. During interactive execution he could interrupt the job and let it continue in the background or kill it. This development of [[interactive computing]] in a multitasking environment led to the development of the modern [[shell (computing)|shell]].
 
==Real-time computing==
Line 46 ⟶ 51:
* Computer operator commands ("unsolicited key-in")
* Background job streams ([[#Batch processing|batch jobs]])
 
==Job control languages==
Early computer [[resident monitor]]s and [[operating system]]s were relatively primitive and were not capable of sophisticated resource allocation. Typically such allocation decisions were made by the computer operator or the user who submitted a job. [[Batch processing]] was common, and interactive computer systems rare and expensive. Job control languages (JCLs) developed as primitive instructions, typically punched on cards at the head of a deck containing input data, requesting resources such as memory allocation, serial numbers or names of magnetic tape spools to be made available during execution, or assignment of filenames or devices to device numbers referenced by the job. A typical example of this kind of language, still in use on mainframes, is [[IBM]]'s [[Job Control Language]] (also known as JCL). Though the format of early JCLs was intended for [[punched card]] use, the format survived the transmission to storage in computer files on disk.
 
As time sharing systems developed, interactive job control emerged. An end-user in a time sharing system could submit a job interactively from his remote [[computer terminal|terminal]] ([[remote job entry]]), communicate with the operators to warn them of special requirements, and query the system as to its progress. He could assign a priority to the job, and terminate (kill) it if desired. He could also, naturally, run a job in the foreground, where he would be able to communicate directly with the executing program. During interactive execution he could interrupt the job and let it continue in the background or kill it. This development of [[interactive computing]] in a multitasking environment led to the development of the modern [[shell (computing)|shell]].
 
==External links==
Line 62:
==References==
{{reflist}}
 
 
 
[[Category:Computing terminology]]