IBM System/360 Model 20: Difference between revisions

Content deleted Content added
Citation bot (talk | contribs)
Alter: template type. Add: s2cid, isbn, doi, pages. | Use this bot. Report bugs. | Suggested by Whoop whoop pull up | #UCB_webform 333/668
Non-restrictive clause - it's just *descriptive* - so use "which".
 
(32 intermediate revisions by 13 users not shown)
Line 1:
{{Short description|Low-end IBM computer model from 1960s}}
{{Infobox informationcomputing appliancedevice
| name = IBM System/360 Model 20
| title = IBM System/360 Model 20
| aka =
| logo = File:IBM Logo 1956 1972.svg
Line 42:
| website =
}}
The '''IBM System/360 Model 20''' is the smallest member of the [[IBM System/360]] family announced in November 1964. The Model 20 supports only a subset of the System/360 instruction set, with binary numbers limited to 16 bits and no [[floating point arithmetic]].<ref name=FuncChar>{{cite book|publisher=IBM|id=A26-5847-3|title=IBM System/360 Model 20 Functional Characteristics|date=1967|url=http://www.bitsavers.org/pdf/ibm/360/functional_characteristics/A26-5847-3_360-20_funChar_Apr67.pdf}}</ref> In later years it would have been classified as a 16-bit [[minicomputer]] rather than a [[Mainframe computer|mainframe]], but the term "minicomputer" was not current, and in any case IBM wanted to emphasize the compatibility of the Model 20 rather than its differences from the rest of the System/360 line. It does, however, have the full System/360 decimal instruction set, thatwhich allows for addition, subtraction, product, and dividend of up to 31 decimal digits.
 
Developed by IBM in [[Böblingen]], Germany,<ref name=Pugh>{{cite book|last1=Pugh|first1=Emerson W.|last2=Johnson|first2=Lyle R.|last3=Palmer|first3=John H.|title=IBM's 360 and Early 370 Systems|year=1991|publisher=MIT Press|isbn=0-262-16123-0|url=https://archive.org/details/ibms360early370s0000pugh|url-access=registration}}</ref>{{rp|pp.217–218,352}} the system was intended for [[Computer data processing|data processing]] and as a replacement for [[Unit record equipment|tabtabulating equipment]]. An incompatible small computer, the [[IBM 1130]] introduced the following year, was designed for scientific and engineering computing.
 
The design of the Model 20 was the result of a tug of war within IBM. [[John Haanstra]] had wanted a low-end machine that could execute [[IBM 1401]] instructions. [[Fred Brooks]] wanted the machine to have System/360 architecture. The final result was a compromise where cost concerns predominated: the system leased for under $2000 per month ({{inflation|US|2000|1964|fmt=eq}}) including ''[[#IBM 2560 Multi-Function Card Machine|Multi-Function Card Machine]]'' and line printer, compared to around $3000 ({{inflation|US|3000|1964|fmt=eq}}) for a comparable 1401 system.<ref name=Pugh />{{rp|p.446}}
 
Based on number of systems sold, the Model 20 was the most successful model of System/360. According to Pugh "The number of Model 20 processors installed by the end of 1970 in the United States exceeded 7,400."<ref name=Pugh />{{rp|p.639}} Other models, however, brought in greater revenue. Despite their popularity there are relatively few Model 20s in existence in working condition in 2020.<ref>{{cite web |last1=Bradley |first1=Adam |last2=Blackburn |first2=Christopher |last3=Vaughan |first3=Peter |title=IBM 360 Model 20 Rescue and Restoration |url=https://ibms360.co.uk/ |accessdate=Mar 2, 2020}}</ref>
 
[[File:IBM system 360.JPG |thumb|Another IBM System/360 Model 20 CPU.]]
Line 54:
 
==Architecture==
The Model 20 was available with six memory sizes: 4, 8, 12, 16, 24 and 32&nbsp;KB. As in other models of System/360, memory is byte-addressable.<ref name=FuncChar />{{rp|p.1}} It has eight 16-bit [[Processor register|general purpose registers]] numbered R8 through R15 which can be used in computations as base [[Addressing mode#Base plus offset, and variations|register]]s. All of memory is also directly addressable through a feature, called direct addressing, that combines the twelve -bit displacement and the low-order bits of what would normally be the base register field of the instruction (R0-R7) to form a combined fifteen bit address.<ref name=FuncChar />{{rp|p.4}} No storage protection is provided, except for the low 144 bytes of "protected area".
 
The instruction set is a subset of System/360 consisting of 37 instructions instead of 143,<ref name=FuncChar />{{rp|pp.7–25}}<ref>{{cite book|last=Pugh|first=Emerson W.|title=Building IBM: Shaping an Industry and Its Technology|year=1995|publisher=MIT Press|isbn=0-262-16147-8|url=http://mitpress.mit.edu/catalog/item/default.asp?ttype=2&tid=7339|access-date=2012-10-15|archive-date=2012-05-05|archive-url=https://web.archive.org/web/20120505165349/http://mitpress.mit.edu/catalog/item/default.asp?ttype=2&tid=7339|url-status=dead}}</ref>{{rp|p.384}} with some incompatible instructions, such as a BASR (Branch And Store Register) rather than BALR (Branch And Link Register).
*'''Binary arithmetic''' uses the S/360 "halfword" instructions to operate on 16-bit quantities. Load Halfword, Add Halfword, Subtract Halfword, Compare Halfword, and Store Halfword were available, along with Add Register and Subtract register,
*'''Decimal arithmetic''' includes the complete S/360 decimal instruction set for operations on [[Packed decimal#Packed BCD|packed decimal]] operands of up to 31 digits plus sign in storage.
Line 74:
*[[IBM 2520]] Card Read/Punch or Card Punch.
*[[IBM 1419]] Magnetic Ink Character Reader.
*[[IBM 2311]] Disk Storage (Models 11 and 12).
*[[IBM 1442]] Model 5 Card Punch.
*[[IBM 2203]] Line Printer.
Line 83:
 
===2311 Disk Storage===
Model 20 disk storage uses [[History of IBM magnetic disk drives#IBM 2311|IBM 2311 disk drives]], model 11 or 12, attached to an integrated "storage control feature" on the CPU.<ref name=FuncChar />{{rp|pp.58–76}} If multiple drives are attached they have to be the same model. Both models use the 1316 [[disk pack]] which provides a maximum of 203 [[Cylinder (disk drive)|cylinders]] with 10 [[Track (disk drive)|tracks]] per cylinder. The model 11 uses all cylinders, the model 12 uses only the outermost 103. Each track is divided into ten [[Disk sector|sector]]s of 270 bytes each. The model 11 has a formatted capacity of 5.4&nbsp;million bytes, and the model 12 of 2.5&nbsp;million.<ref>[{{cite book |url=http://www.mirrorservice.org/sites/www.bitsavers.org/pdf/ibm/dasd/2311/Y26-5897-4_2311_FE_Theory_Of_Operation_Oct674_2311_Models_1_11_12_FETOM_196710.pdf "|title=IBM Field Engineering Theory of Operation 2311 Disk Storage Drive Models 1, 11 and 12 Field|id=Y26-5897-4 Engineering Theory of Operation"|publisher=[[IBM]]}} describes the IBM 2311, including models 11 and 12, used on System/360 model 20</ref>
 
===IBM 2560 Multi-Function Card Machine===
The '''IBM 2560 Multi-Function Card Machine''' ('''MFCM''')<ref>{{cite bookconference
|website=[[Association for Computing Machinery|ACM]] Digital Library (dl.acm)
|url=https://dl.acm.org/doi/10.1145/1464182.1464221
|title=The IBM 2560 multi-function card machine |author=C. E. Spurrier |year=1966|pages=315–321
|book-title=Proceedings of the April 26–28, 1966, Spring joint computer conference - AFIPS '66 (Spring)
|year=1966|pages=315–321
|doi=10.1145/1464182.1464221
|isbn=9781450378925
|s2cid=24960497
|doi-access=free
}}</ref> is a peripheral first offered on the Model 20. Due to its reliability problems, often involving card jams, the acronym was frequently interpreted as referring to many less favorable names.
 
The 2560 has two hoppers into which punch cards can be placed. The cards in the second hopper can contain punched cards to be read or blank cards to be punched. Two models were offered:
* Model A1: five card stackers, and an optional printing/interpreter, with two, four or six print heads.<ref name=SystemSummary.360_20>{{cite book
|title=System Summary: IBM System/360 System Summary |at=Model 20 (|id=A22-6810) |publisher=[[IBM]]}}</ref>
* Model A2: four card stackers.
 
Card flow is: a read station, a punch station, and on the A2 a print station allowing text to be printed on cards. Cards then flowed into one of the stackers after being processed.<ref name=FuncChar/>{{rp|41-4341–43}} This allows it to function as a [[Punched card input/output|card reader]] and a [[Punched card input/output|card punch]]. As a program can issue a Write Card instruction to print on the card after reading card data with a Read Primary Card or Read Secondary Card instruction, it can also, under program control, function as an [[Interpreter (computing)#Punched card interpreter|interpreter]] and, as a program can issue a Primary Card Stacker Select or Secondary Card Stacker Select instruction to select the stacker into which a card should be put after reading card data, it can function as a [[IBM card sorter|card sorter]]. This allows the Model 20 to replace several separate pieces of punched-card equipment.
 
IBM's announcement proclaimed the 2560 as providing "a card-handling capability never before possible on a single pass through the system."<ref>{{cite web
|url=http://ed-thelen.org/comp-hist/IBM-ProdAnn/360-20.pdf
|title=IBM 360- Model 20 customer engineering announcement}}</ref><ref>A22-6810, pname=SystemSummary.360_20 13</ref>{{rp|page=13}}<ref>{{cite web |website=BitSaversbook
|url=http://bitsavers.informatik.uni-stuttgart.deorg/pdf/ibm/360/fe/2020/Z26-5908_360-20_FE_Manual_Of_Instruction_Aug65.pdf
|title=IBM Confidential Field Engineering Manual of Instruction, System/360 Model 20 2020 Processor |publisher=[[IBM]]}}</ref> Since all I/O is performed by the processor, the system is particularly suited to controlling timing-dependent devices such as the 2560, where a card can be read, punched into, printed on, and sent to a specified output stacker with tight timing requirements if full rated speed is to be maintained.
 
==Software==
 
===Disk Programming System===
The '''Disk Programming System (DPS)''' is a control program for a Model 20 with at least 12&nbsp;KiB of memory and one disk drive. The components of DPS are:<ref>{{cite book|last=IBM Corporation|title=IBM System/360 Model 20 Disk Programming System Control and Service Programs|yearedition=Fifth|date=March 1969|url=http://bitsavers.trailing-edge.com/pdf/ibm/360/model20/C24-9006-4_260-20_CtlPgm_Mar69.pdf|id=C24-9006-4|publisher=[[IBM]]}}</ref>
* The ''[[Initial Program Load#IBM Initial Program Load|Initial Program Loader]]'' (IPL).
* A small ''resident monitor'' which handles disk input/output, error recovery, and job-to-job transition, and loads programs to be executed from the ''core-image library'' on disk.
Line 124 ⟶ 126:
On such systems TPS provides an assembler and tape manipulation utility programs.
Additional capabilities are provided on systems with 8192 bytes of main storage,
and still more with four or more magnetic tape drives.<ref>[{{cite book |url=http://bitsavers.trailing-edge.comorg/pdf/ibm/360/model20/C24-9009-3_TPS_OperProcedures_Mar69.pdf |title=IBM System/360 Model 20 Tape Programming System Operating Procedures |edition=Fourth |date=March 1969 |id=C24-9009-3 |publisher=[[IBM]] "|quote=This publication provides Model 20 operators with the information required to operate their systems using the Model 20 Tape Programming System (TPS)"}}</ref>{{rp|pp.42-43pages=42–43}}
 
===Card Programming Support===
Line 131 ⟶ 133:
===Languages===
* [[IBM RPG|Report Program Generator (RPG)]].
* [[PL/I]] subset, DPS only.<ref>{{cite book|last=IBM Corporation|title=IBM System/360 Model 20 Disk Programming System PL/I|yearedition=First|date=December 1968|url=http://bitsavers.trailing-edge.com/pdf/ibm/360/model20/C33-6007-1_360-20_PLI_Dec68.pdf|id=C33-6007-1|publisher=[[IBM]]}}</ref>
* [[IBM Basic assembly language|Basic Assembler]] versions were available for CPS, TPS, and DPS including [[Input/Output Control System]] (IOCS) macros and processing routines.
 
Line 139 ⟶ 141:
 
==Clones==
The [[UNIVAC 9000 series|UNIVAC 9200 and 9300 processorscomputers]] were clones of the Model 20.
 
==Remaining machines==
Despite having been sold or leased in very large numbers for a [[mainframe computer|mainframe]] system of its era, only a few of System/360 Model 20 computers remain. These are primarily the property of museums or collectors. Examples of existing systems include:
 
* Two Model 20 processors along with numerous peripherals (forming at least one complete system) located in Nürnberg, Germany were purchased on [[eBay]] in April/May 2019 for €3710 by two UK enthusiasts who, over the course of some months, moved the machine to [[Creslow Park]] in [[Buckinghamshire]], United Kingdom. The system was in a small, abandoned building left untouched for decades, and apparently had been used in that building since all peripherals were still fully wired and interconnected. The systems are now in a dedicated machine room, and are undergoing restoration in preparation for public display in the future.<ref name="ibms360">{{cite web|url=https://ibms360.co.uk/?page_id=22|title=Project History|website=IBM 360 MODELModel 20 RESCUERescue AND& RESTORATIONRestoration|access-date=2019-05-20|year=2019}}</ref> As of September 2024 the systems have been moved on a long-term loan basis to the [[System Source Computer Museum]] in [[Hunt Valley, Maryland]], USA for display and restoration.<ref>{{cite web|title=The 360’s have a new home!|work=IBM 360 Model 20 Rescue & Restoration Blog|date=September 11, 2024|url = https://www.ibm360.co.uk/?p=916}}</ref>
* A{{As of|2020}}, a Model 20 processor along with some peripherals is currently on public display at the [[Deutsches Museum]] in [[Munich]], [[Germany]].<ref name="ibm360deutsches">{{cite web|url=http://www.deutsches-museum.de/en/exhibitions/communication/computers/universal-computers/|title=Deutsches Museum - Computers with semiconductor components|access-date=2020-03-18|year=2020|archive-url=https://web.archive.org/web/20200601131705/http://www.deutsches-museum.de/en/exhibitions/communication/computers/universal-computers/|archive-date=2020-06-01|url-status=dead}}</ref>
 
* A Model 20 processor along with some peripherals is currently on public display at the [[Deutsches Museum]] in [[Munich]], [[Germany]].<ref name="ibm360deutsches">{{cite web|url=http://www.deutsches-museum.de/en/exhibitions/communication/computers/universal-computers/|title=Deutsches Museum - Computers with semiconductor components|access-date=2020-03-18|year=2020}}</ref>
 
A running list of remaining System/360s can be found at [http://www.ibmsystem3.nl/System360/ World Inventory of remaining System/360 CPUs].
Line 161 ⟶ 162:
* [http://bitsavers.informatik.uni-stuttgart.de/pdf/ibm/360/model20/C26-3810-3_360-20_diskUtils_Mar69.pdf IBM System/360 Model 20 / Disk Programming System / Disk Utility Programs] "The purpose of this manual is to show you how to use and modify the Disk Utility programs by describing the job-control and utility control statements and indicating the variety of disk operations these programs can perform."
*[http://bitsavers.trailing-edge.com/pdf/ibm/360/model20/C24-9006-4_260-20_CtlPgm_Mar69.pdf IBM System/360 Model 20 Disk Programming System Control and Service Programs] "This publication describes the purpose and functions of the Control and Service programs of the IBM System/360 Model 20 Disk Programming System (DPS)."
 
*[http://bitsavers.trailing-edge.com/pdf/ibm/360/model20/GC26-3602-5_360_20_Card_Programming_Support_Basic_Assembler_Language_Jan71.pdf IBM System/360 Model 20 / Card Programming Support / Basic Assembler Language] "This reference publication provides programmers with the information required to write programs in the Basic Assembler language of the IBM System/360 Model 20."
 
Line 167:
 
{{DEFAULTSORT:IBM System 360 Model 20}}
[[Category:IBM System/360 mainframe line|System/ 360 Model 20]]
[[Category:16-bit computers]]
[[Category:Remote job entry]]