Введение

IBM System/3 - компьютер среднего класса IBM, представленный в 1969 году и продававшийся до 1985 года. Он был произведен компанией IBM Rochester в штате Миннесота как бизнес-компьютер начального уровня, самый маленький представитель семейства IBM System/360. Многие из первых систем System/3 модели 10 поставлялись без дисководов, только с новым многофункциональным карточным блоком IBM 5424 (MFCU), который осуществлял чтение, перфорацию, печать и сортировку новых, более компактных перфокарт с 96 столбцами, представленных одновременно. IBM выпустила следующие модели:
1969 — IBM 5410, или System/3 Model 10, представленная (поставки начались в 1970 году)
1970 — IBM 5406, или System/3 Model 6, представленная (дисковая система)
1973 — IBM 5415, или System/3 Model 15, представленная
1974 — IBM 5408, или System/3 Model 8, представленная
1975 — IBM 5412, или System/3 Model 12, представленная
1976 — IBM 5404, или System/3 Model 4, представленная

Системы System/3 и последующие модели System/32, System/34, System/36 и System/38 в терминологии IBM обычно называют "системами среднего класса" – в отличие от мейнфреймов IBM.

Память

Входные модели имели всего 4K (4096) байтов магнитной памяти на сердечниках.

Хранение данных с прямым доступом

Для массового хранения System/3 использовал односторонний дисковый накопитель IBM 5444, размером примерно с большую пиццу; изначально каждый диск содержал 2,5 МБ данных. Стандартная конфигурация для хранения включала один или два фиксированных диска, каждый в отдельном выдвижном отсеке, где обычно размещались операционная система и программы, разработанные пользователями. К каждому фиксированному диску можно было подключить съемный дисковый картридж; на них обычно хранились файлы данных, связанные с различными приложениями, например, для расчета заработной платы, и пользователи часто использовали несколько таких картриджей. Таким образом, системы начального уровня могли поддерживать до 10 МБ онлайн-хранилища (два фиксированных, два съемных), хотя на практике это было очень дорого и не распространено. System/3 также был доступен с дисковым накопителем IBM 5445 (20 МБ), а позже модель 15 поддерживала диски 3340 типа "винчестер". На более компактных моделях, хотя можно было подключить диски 5445, необходимо было сохранять 5444 для операционной системы и других библиотек программирования, однако это ограничение было снято с помощью программного обеспечения elimn8, которое позволяло дискам 5445 полностью заменить диски 5444. Другие компании, такие как Memorex, производили совместимые диски 5445 для System/3.

Многофункциональный блок карт

Наиболее распространенным устройством для работы с перфокартами был IBM 5424 Multifunction Card Unit (MFCU), который считывал, перфорировал, печатал и сортировал новые, более компактные перфокарты с 96 столбцами. В отличие от прямоугольных пробивок в классической 80-столбцовой карте IBM, новые карты имели крошечные (1 мм) круглые отверстия, подобные отверстиям в перфоленте. Данные хранились в шестибитном двоично-десятичном коде (BCD), тремя строками по 32 символа в каждой, или в восьмибитном EBCDIC, при этом два дополнительных отверстия располагались в верхних строках. На новых картах помещалось 128 печатных символов, организованных в четыре строки по 32 символа в каждой. Они были примерно на треть меньше старых 80-столбцовых карт, но вмещали на 20% больше текстовой информации. Меньший вес карт позволял обрабатывать их более быстро и с меньшим количеством замятий. Для работы с 80-столбцовыми картами в качестве RPQ (специального оборудования под заказ) были доступны IBM 2560 Multifunction Card Machine (MFCM), способная считывать, перфорировать, интерпретировать и сортировать, и IBM 1442, которая могла только считывать и перфорировать.

Магнитная лента

Оффлайн-хранилище было доступно при покупке внешнего накопителя на магнитной ленте, который осуществлял чтение и запись стандартных 9-трековых магнитных лент IBM. Система/3 Mod 10 опционально включала в себя подсистему магнитной ленты IBM 3410.

Устройство консоли оператора

Система/3 Operator Console Facility (OCF) состояла либо из модифицированной пишущей машинки IBM Selectric, подключенной к компьютеру, либо из специализированного дисплея IBM 3270. В OCF была возможность отменять выполняющиеся процессы и/или задачи, включая любую из партий (P1 или P2). Система могла одновременно выполнять только две программы, за исключением модели 15 или систем, работающих с программой управления связью CCP. CCP представляла собой функцию системного программирования, позволяющую поддерживать онлайн-сеть терминалов.

Принтеры

К основной системе был подключен принтер меньшего размера (IBM 5203). Принтер 5203 был цепным с возможностью замены картриджей. Его скорость печати составляла 100 или 200 строк в минуту, в зависимости от модификации. Впоследствии IBM предложила несколько моделей существующей линейки принтеров IBM 1403, изначально разработанной для компьютера IBM 1401.

Дискета

С появлением системы ввода данных IBM 3740, System/3 Model 10 получила функцию под названием LCA (локальный адаптер связи), которая позволяла подключать станцию IBM 3741 к системе для передачи и приема данных. Более поздние модели System/3, такие как Model 8, не использовали карты и работали с 8-дюймовыми дискетами, совместимыми с IBM 3740.

Язык управления операцией

Простой язык управления заданиями, называемый языком управления операциями (OCL), был внешне похож на язык управления заданиями (JCL).

Команды управления оператором

Для связи с системой использовались команды управления оператором (КОУ).

Языки

System/3 поддерживала RPG II, Fortran IV, COBOL и Assembler.

Компилятор RPG II

Система/3 поставлялась в стандартной комплектации с компилятором RPG II. В системе, работающей только с перфокартами, компилятор RPG II поставлялся в виде двух фаз. Первая фаза загружалась из одного входного бункера MFCU, после чего считывался исходный код. Промежуточный результат записывался на перфокарты, которые затем считывались второй фазой компилятора. После этого формировалась исполняемая колода программ. Эту исполняемую программу можно было загрузить ("IPL'ed", от "Initial Program Load") для выполнения необходимой обработки. Этот процесс мог занимать более часа для программы значительного размера.

Проблемы с системой/3

Система/3 не предусматривала возможность остановки процесса после его запуска. Например, если компиляция завершалась неудачей из-за ошибки на самой первой странице, пользователю приходилось ждать полной печати иногда весьма объемного листинга компиляции. Пользователи научились протягивать руку под принтер и толкать лоток для бумаги, что приводило к остановке машины с отображением кода "P3" (ошибка принтера). Затем пользователь мог ввести код ответа FF для прерывания выполнения. Другой способ остановить систему – просто нажать зеленую кнопку "Пуск" на консоли, что вызывало перезагрузку. Коды ошибок отображались на двухразрядном семисегментном индикаторе (один из первых, построенный на лампах, а не на светодиодах). Диапазон кодов ошибок включал не только десятичные и шестнадцатеричные цифры (как это обычно делается в семисегментных индикаторах), но и ограниченный набор других символов; например, "P3" был одним из нескольких кодов ошибок принтера. Толстый справочник, поставлявшийся с Системой/3, помогал оператору интерпретировать коды ошибок и предлагал процедуры восстановления. В Системе/3 не было звукового предупредительного устройства, поэтому программа, которая не печатала, не считывала карты или не выполняла другую очевидную деятельность, могла остановиться, и оператор не узнал бы об этом, если бы случайно не посмотрел на дисплей состояния. Модели с функцией двойной программы имели два отдельных дисплея состояния. Большинство пользователей не покупали консоль. Вместо этого код OCL либо полностью подавлялся, либо печатался на принтере 5203. Консоль, предлагаемая IBM, значительно замедляла выполнение программы при печати команд OCL, поскольку по сути представляла собой селективную пишущую машинку. Идея ввода перфокарт через консоль была маркетинговым ходом. На самом деле, Система/3 не могла одновременно быть компьютером и клавиатурой, поэтому, когда она использовалась как клавиатура, вычисления были невозможны. Оригинальная IBM System/3, представленная в июле 1969 года, была оснащена консолью с клавиатурой, чтобы IBM могла предложить компьютер стоимостью менее 2000 долларов в месяц. Однако это оказалось непрактичным, и почти всегда пользователи приобретали автономную клавиатуру/проверку. Позже несколько OEM-компаний производили 96-колонные клавиатуры, сортировщики и коллаторы. Это снимало основную нагрузку с MFCU и освобождало Систему/3 для выполнения реальных вычислительных задач. Большинство опытных пользователей Системы/3 старались максимально ограничить использование MFCU, поскольку он являлся узким местом системы.

Эмуляция

Поздние модели System/32, IBM System/34 и IBM System/36 могли запускать приложения System/3 посредством эмуляции. System/32 использовала вертикально микропрограммируемый процессор с 16-битными словами микрокода, который эмулировал набор инструкций System/3, довольно медленно, с помощью микрокода. System/34 и System/36 обе имели два процессора: процессор управления хранилищем (CSP), как и в System/32, который обрабатывал большинство операций супервизора и ввода-вывода, и процессор основного хранилища (MSP). Последний являлся переработкой процессора System/3 модели 15, фактически обеспечивая "аппаратную эмуляцию" System/3.