Burroughs B2000
Encyclopedia
The Burroughs B2500-B4900 series of computers were also known as Burroughs Medium Systems. They were manufactured by Burroughs Corporation in Pasadena, California
Pasadena, California
Pasadena is a city in Los Angeles County, California, United States. Although famous for hosting the annual Rose Bowl football game and Tournament of Roses Parade, Pasadena is the home to many scientific and cultural institutions, including the California Institute of Technology , the Jet...

, United States, and were aimed straight at the business world with an instruction set optimized for the COBOL
COBOL
COBOL is one of the oldest programming languages. Its name is an acronym for COmmon Business-Oriented Language, defining its primary domain in business, finance, and administrative systems for companies and governments....

 programming language.
History and Architecture =
The B2500 and B3500 computers were announced in 1966.

They operated directly on COBOL-68's primary decimal data types: strings of up to 100 digits, with one EBCDIC or ASCII digit character or two 4-bit binary-coded decimal
Binary-coded decimal
In computing and electronic systems, binary-coded decimal is a digital encoding method for numbers using decimal notation, with each decimal digit represented by its own binary sequence. In BCD, a numeral is usually represented by four bits which, in general, represent the decimal range 0 through 9...

 BCD digits per byte. Portable COBOL programs did not use binary integers at all, so the B2500 did not either, not even for memory addresses. Memory was addressed down to the 4-bit digit in big-endian style, using 5-digit decimal addresses. Floating point numbers also used base 10 rather than some binary base, and had up to 100 mantissa digits! A typical COBOL statement 'ADD A, B GIVING C' may use operands of different lengths, different digit representations, and different sign representations. This statement compiled into a single 12-byte instruction with 3 memory operands.

Complex formatting for printing was accomplished by executing a single EDIT instruction with detailed format descriptors. Other high level instructions implemented "translate this buffer through this (e.g. EBCDIC to ASCII) conversion table into that buffer" and "sort this table using these sort requirements into that table". In extreme cases, single instructions could run for several hundredths of a second. MCP could terminate over-long instructions but could not interrupt and resume partially completed instructions. (Resumption is a prerequisite for doing page style virtual memory when operands cross page boundaries.)

The machine matched COBOL so closely that the COBOL compiler was simple and fast, and COBOL programmers found it easy to do assembly programming as well.

In the original instruction set, all operations were memory-to-memory only, with no visible data registers. Arithmetic was done serially, one digit at a time, beginning with most-significant digits then working rightwards to least-significant digits. This is backwards from manual right-to-left methods and more complicated, but it allowed all result writing to be suppressed in overflow cases. Serial arithmetic worked very well for COBOL. But for languages like FORTRAN or BPL, it was much less efficient than standard word-oriented computers.

Later Medium Systems machines added an accumulator register and accumulator/memory instructions using 32-bit, 7-digit integers and 48-bit or 80-bit floating point values, all aligned on 16-bit word boundaries. In the B4900 and later machines, integer operations of 10 digits or less were now handled in a parallel way; only longer operands continued to use the serial method. And all floating point operations were limited to 17 digits of precision.

Three reserved memory locations were used as address indexing 'registers'. The third index register was dedicated to pointing at the current procedure's stack frame on the call/return stack. Other reserved memory locations controlled operand sizes when that size was not constant.

The B3500 was similar to the B2500 but with a faster cycle time and more expansion choices. The B2500 had a maximum of 60K bytes of core memory and a 2 microsecond cycle time. The B3500 had a maximum of 500K bytes and a 1-microsecond cycle time.

The B2500/B3500 machines were followed by B2700/B3700/B4700 in 1972, then B2800/B3800/B4800 in 1976, then B2900/B3900/B4900 in 1980, and then finally the Unisys V Series machines V340-V560 in 1985-90.

Unisys cancelled further V series hardware development in 1991, and support ended in 2004.
The operating system was called MCP, for Master Control Program. It shared some multi-programming features with the MCP of Burroughs' Large Systems stack machines, but was entirely different inside, and was coded in assembler, not some high level language. Programs had separate address spaces dynamically relocated by a base register, but otherwise there was no virtual memory; no paging and no segmentation. Larger programs were squeezed into the limited code address space by explicit overlays. The nonresident parts of MCP were also heavily overlaid. Initially, code and data shared a single 300,000 digit address space. Later machines had separate million-digit spaces for program code and process data. Instructions' address fields were extended from 5 digits to 6 digits, and 4 more real index registers were added.

An attempted redesign in 1975 of the address space was called MS-3 for "Medium Systems 3rd Generation", but that project was cancelled.
Early machines used Burroughs's head-per-track disk systems rather than the now-standard movable head platter disks. In one attempt to speed up MCP, its overlays were carefully laid out so that the likely-next overlays would soon arrive at their read head just after the current overlay completed. This was similar to time-dependent layout optimizations on early delay-line and drum computers. But this turned out to be impractical to maintain after software changes, and better results were consistently gotten with a totally randomized layout of all MCP overlays.

Other than the operating system itself, all system software was coded in BPL (Burroughs Programming Language), a systems programming language derived from ALGOL and Large System's ESPOL systems language.

Machines prior to the B4800 had no cache memory. Every operand byte or result byte required its own separate main memory cycle, which limited program performance. To compensate for this, the B3700/B4700 generation used semiconductor main memory that was faster but more expensive and power hungry than the DRAM used in competing machines. The unusual use of decimal numbers as memory addresses was initially no problem; it merely involved using 1-in-5 rather than 1-in-8 decoder logic in the core memory's row selects and bank selects. But later machines used standard memory chips that expected binary addresses. Each 1000-byte block of logical memory could be trivially mapped onto a subset of 1024 bytes in a chip with only 2.3% waste. But for denser chips and larger total memories, the entire decimal address had to be crunched into a shorter quasi binary form before sending the address to the chips, and done again for each cache or memory cycle. This conversion logic slowed the machine cycle somewhat.

Machines before the B2900 allowed input numbers with 'undigit' values above 9, but arithmetic on this gave unspecified results. This was used as a form of hexadecimal arithmetic within the MCP and also by some application programmers. Later versions discontinued this and instead supported two new opcodes (binary to decimal and decimal to binary) to support addressing the hard drives available after Burroughs's acquisition of Memorex.

The Medium Systems series were very effective multi-programming machines. Even very basic versions of the B2500 could support multi-programming on a usable scale. Larger Medium Systems processors supported major data center activities for banks and other financial institutions, as well as many businesses and government customers. The Medium System was the preferred platform for many data processing professionals.

With the Medium System, a computer could be simultaneously running a batch payroll system, inputting bank checks on a MICR
Magnetic ink character recognition
Magnetic Ink Character Recognition, or MICR, is a character recognition technology used primarily by the banking industry to facilitate the processing of cheques and makes up the routing number and account number at the bottom of a check. The technology allows computers to read information off...

 reader sorter, compiling COBOL applications, supporting on-line transactions, and doing test runs on new applications (colloqially called 'the mix', as the console command 'MX' would shows that jobs were executing). It was not unusual to be running eight or ten programs on a medium-size B2500. In addition, the operating system (a assembler-coded version of MCP) allowed programs to communicate with each other via core-to-core transmissions (CRCR) or by using storage queues (STOQ), implemented as functions within the operating system itself and exposed to the languages (COBOL FILL FROM/INTO). This was unheard of except on the very largest IBM S/360 systems of the time, and even then it was a major operational headache to manage the interactions of the multiple program streams.

Medium System installations often had tape clusters (four drives integrated into a mid-height cabinet) for magnetic tape input and output. Free-standing tape drives were also available, but they were much more expensive. Tape was a major storage medium on these computers, but it was often not used for father-son batch updating but instead as a library/backup device that contained all the data files and sometimes the program files for a particular application or customer/client.

COBOL to machine code

Tape resident disk files

Job headers for card input

Card and print spooling

I did accounting system (parameter driven)

—a blank verse

Blank verse
Blank verse is poetry written in unrhymed iambic pentameter. It has been described as "probably the most common and influential form that English poetry has taken since the sixteenth century" and Paul Fussell has claimed that "about three-quarters of all English poetry is in blank verse."The first...

by unknown B2500 user

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK