IBM 3790

The IBM 3790 Communications System was one of the first distributed computing platforms. The 3790 was developed by IBM's Data Processing Division (DPD) and announced in 1974. It preceded the IBM 8100, announced in 1979.

It was designed to be installed in branch offices, stores, subsidiaries, etc., and to be connected to the central host mainframe, using IBM Systems Network Architecture (SNA).

Although its successor's role in distributed data processing was said to be "a turning point in the general direction of worldwide computer development," the 3790 was described by Datamation in March 1979 as "less than successful."

System description
IBM described it as "a programmable, operator oriented terminal system."

Components
The 3790 supported
 * up to 16 IBM 3277 display stations
 * an integrated floppy disk unit
 * an integrated 120 lines per minute (lpm) line printer
 * up to three 3292 auxiliary control units
 * up to four 3793 keyboard-printers
 * a Synchronous Data Link Control (SDLC) communications interface
 * A 1200 baud internal or external modem

The base unit of the 3790 was the IBM 3791 programmable control unit, which was offered as a choice of:
 * the model 1, supporting 8.3MB of disk storage
 * the model 2, with up to 26.9MB.

Attached to the 3791 were:
 * The 3792 auxiliary control unit, which had options for attachment of
 * up to two dial-in IBM 2741 communications terminals,
 * up to four 3793 display stations, and a line printer.
 * The 3793 printer-keyboard (up to four).
 * The 3411 model 1, Magnetic tape unit and controller (added in 1977) and
 * up to three 3410 tape units attached to the 3411 unit.

Host software

 * Function Support Program.
 * Subsystem Support Services.
 * VTAM (with the host running DOS/VS, OS/VS1, or OS/VS2)
 * User Application Support Program.

Reception
The 3790 failed to achieve the success IBM intended, due to several issues. It had a complex programming language, The 3790 Macro Assembler, and the customers found it difficult to deploy applications on it. The Macro Assembler ran only on an IBM mainframe and then the compiled and linked object was moved to the 3790 for testing.

The 3790 was designed as a departmental processor, but the requirement for an IBM mainframe development environment inhibited adoption in its target market of mid-size companies. The result was lackluster interest in the product. In addition the 3790 was priced higher than minicomputers of comparable processing power.

One of the products IBM released to help developers was Program Validation Services (PVS). With PVS, one could test a program in the mainframe environment using scripts. The scripts were cumbersome to create, and prone to errors. Since mainframe time was expensive and often difficult to obtain very few programmers used PVS for anything other than initial testing.

The manual for the Macro Assembler was bulky (about 4 inches thick) and difficult to use as a reference. Another programming issue was code design and size; the hardware architecture loaded code into memory on 2k segments, for optimal execution time it was critical to ensure that processing intensive loops did not cross the segment boundary and incur delays swapping segments in and out of memory.

IBM recognized the problems with the Macro Assembler and created an automated program generator named DMS. DMS later became Cross System Product (CSP) on the 8100. DMS was essentially a screen painter; it could do simple edits such as field range checking or numeric tests but more complex logic still had to be coded using the Macro Assembler.

IBM 3730
The IBM 3730 is a word-processing variant of the 3790, announced in the late 1970s. It used 3790 hardware but its software made it a dedicated shared-logic word-processing system which could support a dozen or more word-processing IBM 3732 terminals, which were derived from the IBM 3270 family of terminals. Defunct IBM 3777 terminals which had been returned by customers were re-engineered and equipped with a specialized word-processing keyboard, and shipped back to other customers as part of the 3730 word processing system. The 3730 could be connected using Systems Network Architecture to a central mainframe running IBM DISOSS which was a centralized document exchange software running on CICS.