IBM System/360 Model 50

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
IBM System/360 Model 50
File:IBM logo.svg
File:IBM system 360-50 console - MfK Bern.jpg
IBM System/360 Model 50 console and CPU with front panel
ManufacturerInternational Business Machines Corporation (IBM)
Product familySystem/360
Release dateApril 7, 1964 (1964-04-07)
DiscontinuedMarch 15, 1977 (1977-03-15)[1]
Memory64–512 KB Core

The IBM System/360 Model 50 is a member of the IBM System/360 family of computers. The Model 50 was announced in April 1964 with the other initial models of the family, and first shipped in August 1965 to the Bank of America.[2]

Models

[edit | edit source]

There are four models of the 360/50.[3]: page 5  They vary by the amount of core memory with which the system is offered. The F50, or 2050F is equipped with 65,536 bytes, the G50 has 131,072 bytes, the H50 262,144 bytes, and the I50 524,288 bytes.[3] The system can also attach IBM 2361 Large Capacity Storage (LCS) modules which provide up to 8,388,608 bytes of additional storage, however with a considerably slower memory cycle time of 8 microseconds compared to the 2 microseconds of processor storage.[3]

Relative performance

[edit | edit source]

The system has a CPU cycle time of 500 nanoseconds, 25% faster than the Model 40 and 40% of the speed of the Model 65 which has a 200 nanosecond cycle time. Processor storage is magnetic core memory that transfers four bytes per 2 microsecond cycle. It has "protected" and "local" core storage for registers and internal buffers with cycle times of 200 and 500 nanoseconds respectively.

Features

[edit | edit source]

The Model 50 implements the complete System/360 "universal instruction set" architecture, including floating-point, decimal, and character operations as standard features. The "direct control" instructions are an optional feature. Optional logic, microcode and software providing compatibility with either the IBM 1410/7010 or 7070/7074 systems is available.

An IBM 1052 printer/keyboard for use as an operator's console is optional. The I/O options include one channel-to-channel adapter (CTCA) and up to three selector channels. A multiplexer channel for attachment of slow-speed devices is standard on all models. The F50 has 64 subchannels, so it can attach up to 64 slow-speed devices on its multiplexer channel. The other models have 128 subchannels. This can optionally increase to 256 subchannels on the H50 and I50.[3]

Microcode

[edit | edit source]

The Model 50 uses a 90 bit (or 85 bit, depending on definition) "horizontal microcode" instruction format, with each word containing 15 (or 25) separate fields.[4] There are 2816 words of microcode storage.[5]

Read-only control storage for microcode employs "balanced capacitor technology" (BCROS) with a cycle time of 500 nanoseconds, designed by Anthony Proudman in IBM's Hursley laboratory and implemented by Fernando "Fred" Neves. This technology uses two capacitors to represent each bit.

File:1970 CNRZ Mécanographie-8-cliche Jean Weber.jpg
B&W closeup of 360/50 console

System software

[edit | edit source]

It was possible to choose DOS/360, OS/360 MFT (Multi-programming with a Fixed number of Tasks), or OS/360 MVT (Multi-programming with a Variable number of Tasks) as the operating system of an IBM System/360 Model 50. Few chose MVT.[6]

The choice of operating system for the System/360 Model 50 was based primarily on the amount of main storage. The F50, with 65,536 bytes of main storage, can not run OS/MFT, which requires a minimum of 131,072 bytes of main storage.[7] DOS/360 has a minimum of 16,384 bytes of main storage.[8]

Systems with 131,072 or more bytes of main storage could run OS/360. Although 360/50 systems equipped with 1 MB or more[9] could and did run MVT[10][11] one IBMer described this as "[getting] blood out of the turnip", and noted that "most didn't run MVT".[6]

Reasons for a 360/50 site to run MFT[12] rather than MVT were:

  • MVT's minimum memory requirements of 256KB[13][14] - the F50 and G50 models have less;
  • CPU power: the next larger System/360, the Model 65, has triple the power.[15][16]

Time-sharing (CALL/OS)

[edit | edit source]

IBM advertised time-sharing capability[17] by featuring what originally was known as CALL/360[18] (note the 'SLASH' - which was retained in the name of its successor) and later[19] was named CALL/OS. CALL/OS featured its own versions of BASIC[20] as well as FORTRAN IV[21] and PL/I,[22][23] rather than the versions implemented by the MFT/MVT compilers known as FORTRAN G, FORTRAN H and PL/I F. CALL/OS is sometimes referred to as "CALL-OS".[24]

Installations with a larger model of the System/360 family sometimes ran/retained the combination of MFT and CALL/OS,[21] rather than switch to MVT, a pre-requisite for TSO,[25] after an upgrade.

References

[edit | edit source]
  1. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  2. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  3. ^ a b c d Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  4. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  5. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  6. ^ a b Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  7. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  8. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  9. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  10. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  11. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  12. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  13. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  14. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  15. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  16. ^ A convenience sample of ads for used 360/50 and 360/65 configurations in the back of Computerworld for the 1971 - 1973 period show mostly MVT installed on 360/65 OS and NOT EVEN ONE 360/50 with MVT
  17. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  18. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  19. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  20. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  21. ^ a b Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  22. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  23. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  24. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  25. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
[edit | edit source]
  • Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).