DOS/360 and successors: Difference between revisions

Content deleted Content added
DOS versions: BOS sounds a lot like DOS - same job control, etc.
VSE/AF: minor copyedit for tense and insertion of date from source
Tags: Mobile edit Mobile web edit Advanced mobile edit
 
(13 intermediate revisions by 12 users not shown)
Line 2:
{{About|the family of operating systems for IBM System/360 computers||DOS (disambiguation)}}
{{History of IBM mainframe operating systems}}
'''Disk Operating System/360''', also '''DOS/360''', or simply '''DOS''', is the discontinued first member of a sequence of [[operating system]]s for [[IBM System/360]], [[System/370]] and later [[IBM mainframe|mainframes]]. It was announced by [[IBM]] on the last day of 1964, and it was first delivered in June 1966.<ref>{{cite book |first1=E.W. |last1=Pugh, |first2=L.R. |last2=Johnson, and |first3=John H. |last3=Palmer, ''|title=IBM's 360 and early 370 systems,'' |date=1991 |publisher=[[MIT Press,]] |location=Cambridge, MA and London, {{ISBN|isbn=0-262-16123-0}}<br/>&ndash; extensive (819&nbsp;''pp.'') treatment of IBM's offerings during this period</ref> In its time, DOS/360 was the most widely used operating system in the world.<ref>Pugh, ''op. cit., p.'' 331 &ndash; most widely used OS</ref>
 
==DOS versions==
Line 8:
===BOS/360===
{{main|BOS/360}}
The '''Basic Operating System''' (BOS) was an early version of DOS and TOS which could provide usable functionality on a system with as little as 8&nbsp;KB of main storage and one 2311 disk drive.<ref>{{cite book |last1=IBM Corporation |title=IBM System/36D Basic Operating System Programmer's Guide |date=Sep 1967 |url=http://bitsavers.org/pdf/ibm/360/bos_bps/C24-3372-6_BOSpgmr_Sep67.pdf |access-date=Jan 24, 2022}}</ref>
 
===TOS/360===
'''TOS/360''' (Tape Operating System/360, not a DOS as such and not so called) was an [[IBM]] [[operating system]] for the [[System/360]], used in the early days around 1965 to support the [[IBM System/360 Model 30|System/360 Model 30]] and similar platforms.
 
TOS, as per the "Tape" in the name, required a tape drive. It shared most of the code base<ref name=40Y.mem>{{cite newsgroup|url=https://groups.google.com/d/msg/alt.folklore.computers/RZA6FD27Tc0/-LoIXsOee7gJ|title=DOS/360: Forty years|author=Joe Morris|newsgroup=alt.folklore.computer|date=April 25, 2005|quote=Don't forget TOS, the bastard cousin of DOS. Either could be generated from the same set of distribution libraries...}}</ref> and some manuals<ref>{{cite web|url=http://www.bitsavers.org/pdf/ibm/360/dos/GC24-5030-8_Disk_and_Tape_Operating_Systems_Concepts_and_Facilities_Oct70.pdf|title=IBM System/360 Disk and Tape Operating Systems Concepts and Facilities|date=October 1970|id=GC2ij-5030-8}}</ref><ref>{{cite web|url=http://www.bitsavers.org/pdf/ibm/360/dos/GC24-3465-8_DOS_and_TOS_Utility_Programs_R26.1_Aug73.pdf|title=DOS and TOS Utility Programs|date=August 1973|id=GC24-3465-8}}</ref> with IBM's DOS/360.
 
TOS went through 14 releases, and was discontinued<ref>{{cite mailing list|url=https://www.mail-archive.com/ibmvm@listserv.uark.edu/msg24371.html|author=Anne and Lynn Wheeler|title=Re: IBM 1401|date=May 28, 2009|mailing-list=ibmvm@listserv.uark.edu}}</ref>{{failed verification|date=July 2019}} when disks such as the [[IBM 2311]] and [[IBM 2314]] became more affordable at the time of System/360,<ref>{{cite magazine|magazine=Computerworld|date=September 5, 1977|volume=11|issue=36|pages=39–40|title=IBM Feared Competition to 360/30 CPU|url=https://books.google.com/books?id=nAq5oP06EfEC&pg=PA39}}</ref>{{failed verification|date=July 2019}} whereas they had been an expensive luxury on the [[IBM 7090]].
Line 40:
===VSE/AF===
 
'''VSE/Advanced Functions'''<ref>{{cite manualbook
| title = VSE/Advanced Functions Program Summary
| id = GC33-6157-0
Line 48:
| publisher = IBM
}}
</ref> (VSE/AF), isprepared afor product1983 thatdelivery, addsadded new device support and functionality to DOS/VSE. Many installations installedran VSE/AF using products such as VSE System Installation Productivity Option/Extended (VSE System IPO/E), which combinescombined DOS/VSE, VSE/AF and various other products.
 
===SSX/VSE===
Line 55:
 
===VSE/SP===
In 1986 IBM released '''VSE/SP''' ("System Product") in conjunction with the announcement of the [[IBM 9370|9370]] processors. VSE/SP replaced SSX/VSE and bundled VSE with the most popular VSE program products such as VSE/AF, [[VTAM#ACF.2FVTAM|ACF/VTAM]], [[CICS]], and [[IBM POWER (software)|POWER/VS]].<ref>{{cite web|last=IBM Corporation|title=IBM VSE/SYSTEM PACKAGE (VSE/SP), VERSION 3 RELEASE 1.1 ENHANCED AND AVAILABLE|date=30 June 1987 |url=http://www-01.ibm.com/common/ssi/cgi-bin/ssialias?subtype=ca&infotype=an&appname=iSource&supplier=897&letternum=ENUS287-332&open&cm_mmc=5733-_-n-_-vrm_newsletter-_-10207_134134&cmibm_em=dm:0:12046832|access-date=June 1, 2011}}</ref> VSE/SP supported only 24-bit addresses, despite customer requests to provide an XA (31 bit) version.
 
===VSE/ESA===
VSE/ESA was a 31-bit DOS/VSE version, which was released in 1990 with support for up to 384&nbsp;MB of real storage. It provided up to twelve ''static partitions'' and allowed VSE/POWER and ACF/VTAM to be run in ''private address spaces''. It introduced a new feature called ''dynamic partitions'' which could allow up to 150 concurrent jobs, each in its own address space.<ref name=VSEESAAnnounce>{{cite web|last=IBM Corporation|title=IBM VSE/ENTERPRISE SYSTEMS ARCHITECTURE VERSION 1 RELEASE 1|date=5 September 1990 |url=http://www-01.ibm.com/common/ssi/cgi-bin/ssialias?infotype=an&subtype=ca&appname=Demonstration&htmlfid=897/ENUS290-513|access-date=May 31, 2012}}</ref> Version 1 could run in either ESA or 370 mode, with the ESA mode also supporting XA hardware with limitations. Version 2 (1995) only supported ESA mode with ESA hardware. Version 2 added support for [[multiprocessing]], through the new ''Turbo Dispatcher'', which permits different partitions to execute simultaneously on different processors. A partition can only run on one processor at a time, which mostly limits the multiprocessing to [[Computer multitasking|multitasking]]. Up to ten processors are theoretically supported ("tolerated"), but up to four are effectively utilized.<ref>{{cite web |title=VSE/ESA Version 2 Release 1 and VSE/ESA Languages -- PL/I, COBOL, LE Software Announcement | date=13 September 1994 |url=https://www.ibm.com/common/ssi/ShowDoc.wss?docURL=/common/ssi/rep_ca/9/897/ENUS294-519/index.html&lang=en-ZZ-ZZ |publisher=IBM}}</ref><ref>{{cite web |title=VSE/ESA Turbo Dispatcher Guide and Reference |url=https://ibmdocs.pocnet.net/SC33-6797-00.pdf }}</ref> Those limits remain in the last z/VSE.<ref>{{cite web |title=The z/VSE Turbo Dispatcher |url=https://www.ibm.com/docs/en/zvse/6.2?topic=SSB27H_6.2.0/fa2pl_zvse_turbo_dispatcher.htm |publisher=IBM}}</ref>
 
===z/VSE===
Line 70:
* DOS/360 for machines with at least 16&nbsp;KB memory and a [[disk drive]],
* TOS/360 for machines with at least 16&nbsp;KB memory and a [[tape drive]].<ref group=NB>DOS/360 and TOS/360 had the same code base; the difference was whether it used disk libraries or tape libraries.</ref>
When OS/360 was finally released, a year late, it required at least 64&nbsp;KB of memory. DOS was designed to use little memory, and could run on 16&nbsp;KB machines, a configuration available on the low-end [[IBM 2030|S/360 model 30]]. Unlike OS/360, DOS/360 was initially a single-job system which did not support [[Computer multitasking|multitasking]]. A version with multitasking, supporting up to three [[Memory management (operating systems)#Partitioned allocation|memory partitions]], requiring 32&nbsp;KB of memory was later released. Despite its limitations, DOS/360 became the most widely used operating system for processors with less than 256&nbsp;KB of memory{{cncitation needed|date=September 2017}} because: System/360 hardware sold very well; DOS/360 ran well on System/360 processors which medium-sized organizations could afford; and it was better than the "operating systems" these customers had before.
 
DOS/360 was the operating system which filled the time gap between the announcement of the System/360 and the availability of the intended operating system, OS/360. As a result of the delay, a number of customers implemented DOS systems and committed significant investments to run them. IBM expected that DOS/360 users would soon upgrade to OS/360, but as a result of those investments, they were reluctant to commit to such conversion. IBM then needed to continue to offer DOS/360 as an additional operating system. The [[Hacker's Jargon File]] incorrectly states that [[GECOS]] (also known as GCOS) was copied from DOS/360, which was not the case, however the [[Xerox Data Systems]] [[Xerox Operating System]] (XOS) was intentionally similar to DOS to simplify program porting.
Line 88:
The concept of transient area is part of [[The Mythical Man-Month|Mythical Man-Month]]'s discussion on design and the use of main memory.<ref>{{cite book
|title=The Mythical Man-Month |year=1975 |page=101
|author=F. P. Brooks |publisher=Addison-Wesley Publishing Company |isbn=0-201-00650-2}}</ref> To further reduce memory usage, the supervisor employed overlays called ''transients'' that were read into one of two reserved ''transient areas'' as required.
* Physical transients were loaded into the 556 byte A-Transient area to handle hardware errors (ERPs), record error-specific data (OBR/MDR) on IJSYSRC, and issue error messages. All A-Transient module names began with {{mono|$$A}}.
* Logical transients were loaded into the 1200 byte B-Transient area to provide common program services like OPEN and CLOSE for LIOCS. All B-Transient module names began with {{mono|$$B}}.
 
The use of {{mono|$$A}} and {{mono|$$B}} prefixes ensured rapid loading of transients because their names were stored first in the directory.
 
DOS/VS added Machine Check and Channel Check Handlers, which were another set of transients all starting with {{mono|$$RAST}} and executing in the Recovery Transient area. This was done as part of the reliability, availability, and serviceability (RAS) enhancements for the [[System/370]]. Before this addition, machine checks caused termination of the program running and channel checks caused termination of the program accessing the device, at the time of the error.
 
===Multiprogramming===
Line 113:
 
===Telecommunications===
DOS/360 offered Basic Telecommunications Access Method ([[BTAM]]) and Queued Telecommunications Access Method ([[QTAM]]). BTAM was primitive and hard to use by later standards, but it allowed communication with almost any type of terminal, which was a big advantage at a time when there was little standardization of communications protocols. The simplicity of its API also allowed the relatively easy interface of external communications processors, which facilitated DOS/360 machines becoming nodes in the multi-tier networks of large organizations. Conversely, QTAM users didn'tdid not need as much knowledge about individual devices because QTAM operated at the logical level using the OPEN/CLOSE/GET/PUT macros.
 
==Job control==
 
All DOS job control statements began with "{{mono|//}}" in card columns one and two except ''end-of-job'' which was "{{mono|/&␢}}", ''end-of-data'', "{{mono|/*␢}}", and ''comments'' , "{{mono|*␢}}". (''In the description that follows the character "{{mono|␢}}" represents a single blank''.)
* The {{code|JOB}} statement indicates "the beginning of control information for a job." The format is <syntaxhighlight lang="jcl" inline>// JOB <jobname> <comments></syntaxhighlight>. {{mono|<jobname>}} must be one to eight alphanumeric characters to identify the job. {{mono|<comments>}} are ignored.
Line 131:
* The {{code|MTC}} statement issues command to a magnetic tape unit. The format is <syntaxhighlight lang="jcl" inline>// MTC <opcode>,SYSxxx[,<nn>]</syntaxhighlight>. {{mono|<opcode>}} is a function such as "FSF" to forward space one file or "REW" to rewind the tape. {{mono|<nn>}} is a number that can specify the number of times the operation is to be performed, such as forward space two files.
* The {{code|VOL}} statement provides disk or tape volume label information for standard label checking. The format is <syntaxhighlight lang="jcl" inline>// VOL SYSxxx,<volume></syntaxhighlight>.
* DOS originally provided the {{code|TPLAB}} statement for tape label information and the {{code|DLAB}} and {{code|XTENT}} statements for disk label and extent information. At least as early as 1968 the {{code|TPLAB}} statement had been replaced by {{code|TLBL}} and the {{code|DLAB}} statement by {{code|DLBL}} . These statements used numerous [[Job_Control_LanguageJob Control Language#Positional_parametersPositional parameters|positional parameters]] and had fairly high information densities.
<ref name=ControlStatements>{{cite book|last=IBM Corporation|title=System/360 Disk Operating System User's Guide: Control Statement Techniques|year=1967|url=http://www.bitsavers.org/pdf/ibm/360/dos/GC20-1685-0_Disk_Operating_System_Users_Guide_Control_Statement_Techniques_Dec69.pdf}}</ref>
 
Line 140:
 
===Spooling===
Early DOS included no [[spooling]] sub-system to improve the efficiency of [[punched card]] and [[line printer]] I/O. By the late 1960s both IBM and aftermarket vendors began filling this void. IBM's spooler was an option called [[IBM POWER (software)|Priority Output Writers, Execution processors and input Readers (POWER)]], and Software Design, Inc., an independent software company, sold a spooler called [[Grasp (softwarespooler)|GRASP]].
 
===Program loading===
Line 168:
[[Category:IBM mainframe operating systems]]
[[Category:Assembly language software]]
[[Category:1965 software]]