IBM System/360 ( S/360 ) — семейство мэйнфреймовых компьютерных систем, анонсированное IBM 7 апреля 1964 года [1] и поставлявшееся в период с 1965 по 1978 год. [2] System/360 была первым семейством компьютеров, разработанных для охвата как коммерческих, так и научных приложений, а также полного спектра приложений от малых до больших. Дизайн отличался архитектурой и реализацией, что позволило IBM выпустить набор совместимых проектов по разным ценам. Все, кроме единственной частично совместимой Model 44 и самых дорогих систем, используют микрокод для реализации набора инструкций, включающего 8-битную байтовую адресацию и вычисления с фиксированной точкой в двоичном, фиксированной точкой в десятичном и шестнадцатеричном формате с плавающей точкой .
Семейство System/360 представило технологию Solid Logic Technology (SLT) компании IBM, которая позволила разместить больше транзисторов на плате, что позволило сделать компьютеры более мощными, но при этом меньшими по размеру. [3]
Самая медленная модель System/360, анонсированная в 1964 году, Model 30 , могла выполнять до 34 500 инструкций в секунду с объемом памяти от 8 до 64 КБ . [4] Высокопроизводительные модели появились позже. IBM System/360 Model 91 1967 года могла выполнять до 16,6 миллионов инструкций в секунду . [5] Более крупные модели 360 могли иметь до 8 МБ основной памяти , [6] хотя такой объем памяти был необычным; большая установка могла иметь всего 256 КБ основной памяти, но более распространенными были 512 КБ, 768 КБ или 1024 КБ. Для некоторых моделей также было доступно до 8 мегабайт более медленной (8 микросекунд) памяти большой емкости (LCS) .
IBM 360 был чрезвычайно успешным, позволяя клиентам приобретать меньшую систему, зная, что они могут расширить ее, если их потребности возрастут, без перепрограммирования прикладного программного обеспечения или замены периферийных устройств. Он повлиял на дизайн компьютеров на долгие годы вперед; многие считают его одним из самых успешных компьютеров в истории.
Главным архитектором System/360 был Джин Амдал , а проектом руководил Фред Брукс , подчинявшийся председателю Томасу Дж. Уотсону-младшему. [6] Коммерческий выпуск был пилотируемым другим помощником Уотсона, Джоном Р. Опелем , который руководил запуском семейства мэйнфреймов IBM System 360 в 1964 году. [7]
Совместимость на уровне приложений (с некоторыми ограничениями) для программного обеспечения System/360 сохраняется и по сей день с мэйнфрейм-серверами System z .
К началу 1960-х годов IBM боролась с нагрузкой по поддержке и модернизации пяти отдельных линеек компьютеров. Они были нацелены на разные сегменты рынка и полностью отличались друг от друга. Клиент, купивший машину для ведения бухгалтерского учета, например IBM 1401 , который теперь искал машину для инженерных расчетов, например IBM 7040 , не имел никаких причин выбирать IBM — 7040 была несовместима с 1401, и они могли бы быть от разных компаний. Клиенты были разочарованы тем, что требовались крупные инвестиции, часто совершенно новые машины и программы, когда требовались, казалось бы, небольшие улучшения производительности. [8]
В 1961 году IBM собрала целевую группу для составления плана своих разработок на 1960-е годы, известную как SPREAD (Systems Programming, Research, Engineering and Development). На встречах в New Englander Motor Hotel в Гринвиче, штат Коннектикут , SPREAD разработала новую концепцию для следующего поколения машин IBM. В то время на рынок выходили новые технологии, включая введение замены отдельных транзисторов на малогабаритные интегральные схемы и переход на 8-битный байт с прежних 6-битных ориентированных слов. Это должно было привести к новому поколению машин, сегодня известных как третье поколение, от всех существующих поставщиков. [8]
SPREAD значительно отличался от предыдущих концепций, так это то, какие функции будут поддерживаться. Вместо машин, нацеленных на разные рыночные ниши, новая концепция фактически представляла собой объединение всех этих разработок. Архитектура с единым набором инструкций (ISA) включала инструкции для двоичной , плавающей запятой и десятичной арифметики, обработки строк, преобразования между наборами символов (основная проблема до широкого использования ASCII ) и обширную поддержку обработки файлов, среди многих других функций. [8]
Это означало бы, что IBM должна была бы представить еще одну линейку машин, снова несовместимую с их более ранними машинами. Но новые системы могли бы запускать все программы, которые ранее требовали других машин. Беспокойство вызывал риск того, что их клиенты, столкнувшись с покупкой еще одной новой и несовместимой платформы, просто выберут какого-то другого поставщика. Тем не менее, концепция постепенно набирала поддержку, и через шесть месяцев после своего создания компания решила реализовать концепцию SPREAD. [8]
Была организована новая команда под руководством Боба Эванса , который лично убедил генерального директора Томаса Дж. Уотсона-младшего разработать новую систему. Джин Амдал был главным архитектором самих компьютеров, в то время как Фред Брукс был руководителем проекта по программному обеспечению, а Эрих Блох руководил разработкой гибридных интегральных схем IBM , Solid Logic Technology . [9]
Создание единой машины с поддержкой всех этих функций граничило бы с невозможностью. Вместо этого концепция SPREAD основывалась на разделении определенного набора функций от его внутренней работы, с семейством машин с различной производительностью и различной внутренней конструкцией. В частности, в зависимости от машины некоторые инструкции могли не поддерживаться напрямую в оборудовании, а вместо этого выполнялись бы с использованием небольших программ во внутреннем машинно-специфическом коде, хранящемся в постоянной памяти , или в том, что сегодня известно как микрокод . [10]
Таким образом, модель, предназначенная для использования с бухгалтерским учетом, может выбрать реализацию десятичной математики непосредственно в оборудовании и оставить обработку инструкций с плавающей точкой подпрограммам. Это заставило бы плавающую точку в такой системе работать (намного) медленнее, но, что критически важно, она бы работала. Аналогично, компания, покупающая систему для инженерной поддержки, выбрала бы модель с оборудованием для плавающей точки и могла бы время от времени использовать ее для расчета заработной платы. При использовании предыдущих разработок система, которая выполняла бы операции с плавающей точкой, как правило, не имела бы никакой поддержки десятичной математики и потребовала бы от клиента написать такой пакет или купить другую машину.
Это означало, что одна линейка могла иметь машины, адаптированные под ниши цены и производительности, которые ранее требовали совершенно отдельных компьютерных систем. Такая гибкость значительно снизила барьеры для входа. У большинства других поставщиков клиентам приходилось выбирать между машинами, которые они могли перерасти, или машинами, которые были потенциально слишком мощными и, следовательно, слишком дорогими. На практике это означало, что многие компании просто не покупали компьютеры. Теперь клиент мог купить машину, которая решала определенную задачу, зная, что он может менять модели по мере изменения своих потребностей, не теряя поддержки для программ, которые они уже запускали. [8]
Например, в случае фирмы, которая приобрела бухгалтерскую систему и теперь хотела расширить свою компьютерную поддержку в области инжиниринга, это означало, что они могли разрабатывать и тестировать свою инженерную программу на машине, которую они уже использовали. Если им когда-либо понадобится больше производительности, они могли купить машину с оборудованием для вычислений с плавающей точкой, зная, что больше ничего не изменится, она просто станет быстрее. Можно было использовать даже те же самые периферийные устройства, позволяя, например, записывать данные из инженерной системы на ленту, а затем печатать их с помощью высокоскоростного линейного принтера, уже подключенного к их бухгалтерской системе. Или они могли бы полностью заменить бухгалтерскую систему на систему с производительностью, достаточной для выполнения обеих задач. [8]
Идея о том, что единый дизайн может охватывать все бесчисленные способы использования машин, дала начало названию: «360» — это отсылка к 360 градусам в круге, а круги машин и компонентов занимают видное место в рекламе IBM. [8]
Первоначально IBM анонсировала серию из шести компьютеров и сорока общих периферийных устройств. В конечном итоге IBM поставила четырнадцать моделей, включая редкие уникальные модели для NASA . Самой дешевой моделью была Model 20 с всего лишь 4096 байтами основной памяти , восемью 16-битными регистрами вместо шестнадцати 32-битных регистров других моделей System/360 и набором инструкций , который был подмножеством того, что использовался остальной частью диапазона.
Первоначальное объявление в 1964 году включало модели 30 , 40 , 50 , 60, 62 и 70. Первые три были системами низкого и среднего уровня, нацеленными на рынок серии IBM 1400. Все три впервые были поставлены в середине 1965 года. Последние три, предназначенные для замены машин серии 7000 , так и не были отправлены и были заменены на 65 и 75 , которые были впервые поставлены в ноябре 1965 года и январе 1966 года соответственно.
Более поздние дополнения к нижнему уровню включали модели 20 (1966, упомянуто выше), 22 (1971) и 25 (1968). Модель 20 имела несколько подмоделей; подмодель 5 была на верхнем уровне модели. Модель 22 была переработанной моделью 30 с небольшими ограничениями: меньшей максимальной конфигурацией памяти и более медленными каналами ввода-вывода, что ограничивало ее более медленными и малоемкими дисковыми и ленточными устройствами, чем у 30.
Модель 44 (1966) представляла собой специализированную модель, разработанную для научных вычислений, а также для вычислений в реальном времени и управления процессами. Она имела некоторые дополнительные инструкции, а также была лишена всех инструкций по передаче данных между хранилищами и пяти других сложных инструкций.
Последовательность высококлассных машин включала Model 67 (1966, упомянута ниже, кратко ожидаемая как 64 и 66 [11] ), 85 (1969), 91 (1967, ожидаемая как 92), 95 (1968) и 195 (1971). Конструкция 85 была промежуточной между линейкой System/360 и последующей System/370 и стала основой для 370/165. Существовала версия 195 System/370, но она не включала динамическую трансляцию адресов.
Реализации существенно различались, используя различную ширину собственных путей данных, наличие или отсутствие микрокода, но были чрезвычайно совместимы. За исключением случаев, когда это специально документировано, модели были архитектурно совместимы. Например, 91 был разработан для научных вычислений и обеспечивал выполнение инструкций вне очереди (и мог выдавать «неточные прерывания», если программная ловушка возникала во время чтения нескольких инструкций), но не имел десятичного набора инструкций, используемого в коммерческих приложениях. Новые функции могли быть добавлены без нарушения архитектурных определений: 65 имел двухпроцессорную версию (M65MP) с расширениями для межпроцессорной сигнализации; 85 представил кэш-память. Модели 44, 75, 91, 95 и 195 были реализованы с помощью аппаратной логики, а не микрокода, как все другие модели.
Модель 67 , анонсированная в августе 1965 года, была первой серийной системой IBM, предлагающей аппаратное обеспечение динамической трансляции адресов (виртуальной памяти) для поддержки разделения времени . «DAT» теперь чаще называют MMU . Экспериментальное одноразовое устройство было построено на основе модели 40. До 67 IBM анонсировала модели 64 и 66, версии DAT 60 и 62, но они были почти сразу заменены на 67 в то же время, когда 60 и 62 были заменены на 65. Аппаратное обеспечение DAT снова появилось в серии S/370 в 1972 году, хотя изначально оно отсутствовало в этой серии. Как и его близкий родственник 65, 67 также предлагал два ЦП.
IBM прекратила продажу всех моделей System/360 к концу 1977 года. [12]
Существующие клиенты IBM имели большие инвестиции в программное обеспечение, которое работало на машинах второго поколения . Несколько моделей System/360 имели возможность эмулировать существующий компьютер клиента с помощью специального оборудования [13] и микрокода , а также программы эмуляции, которая позволяла существующим программам работать на новой машине.
Первоначально клиентам приходилось останавливать компьютер и загружать программу эмуляции. [14] Позже IBM добавила функции и изменила программы эмулятора, чтобы обеспечить эмуляцию 1401, 1440, 1460, 1410 и 7010 под управлением операционной системы. Модель 85 и более поздняя System/370 сохранили прецедент, сохранив возможности эмуляции и позволив эмуляторам работать под управлением ОС вместе с собственными программами. [15] [16]
System/360 (за исключением моделей 20, 44 [NB 1] и 67 [NB 2] ) была заменена совместимым диапазоном System/370 в 1970 году, а пользователи Model 20 были направлены на переход на IBM System/3 . (Идея крупного прорыва с технологией FS была отброшена в середине 1970-х годов по причинам экономической эффективности и преемственности.) Более поздние совместимые системы IBM включают семейство 4300 , семейство 308x , 3090 , семейства ES/9000 и 9672 ( семейство System/390 ), а также серию IBM Z.
Компьютеры, которые были в основном идентичны или совместимы с точки зрения машинного кода или архитектуры System/360, включали семейство Amdahl 470 (и его преемников), мэйнфреймы Hitachi, серию UNIVAC 9000 , [17] Fujitsu как Facom, серию RCA Spectra 70 , [NB 3] и English Electric System 4. [ NB 4] Машины System 4 были созданы по лицензии RCA. RCA продала серию Spectra компании, которая тогда называлась UNIVAC , где они стали UNIVAC Series 70. UNIVAC также разработала UNIVAC Series 90 в качестве преемников серий 9000 и Series 70. [17] Советский Союз выпустил клон System/360 под названием ES EVM . [18]
Портативный компьютер IBM 5100 , представленный в 1975 году, предлагал возможность выполнения языка программирования APL.SV System/360 через аппаратный эмулятор. IBM использовала этот подход, чтобы избежать затрат и задержек, связанных с созданием версии APL, специфичной для 5100.
Специальные радиационно-устойчивые и в остальном несколько модифицированные System/360 в виде авионики System/4 Pi используются в нескольких истребителях и бомбардировщиках. В полной 32-битной версии AP-101 машины 4 Pi использовались в качестве реплицированных вычислительных узлов отказоустойчивой компьютерной системы Space Shuttle (в пяти узлах). Федеральное управление гражданской авиации США эксплуатировало IBM 9020 , специальный кластер модифицированных System/360 для управления воздушным движением, с 1970 по 1990-е годы. (Некоторые программные обеспечения 9020, по-видимому, все еще используются посредством эмуляции на более новом оборудовании. [ требуется ссылка ] )
System/360 вывела на рынок ряд отраслевых стандартов, таких как:
Спецификация архитектуры компьютера серии System/360 не делает никаких предположений о самой реализации, а скорее описывает интерфейсы и ожидаемое поведение реализации. [37] [38] [39] Архитектура описывает обязательные интерфейсы, которые должны быть доступны во всех реализациях, и необязательные интерфейсы. Некоторые аспекты этой архитектуры:
Некоторые из дополнительных функций:
Все модели System/360, за исключением Model 20 и Model 44, реализовали эту спецификацию.
Двоичные арифметические и логические операции выполняются как регистр-регистр и как память-регистр/регистр-память в качестве стандартной функции. Если была установлена опция Commercial Instruction Set, упакованная десятичная арифметика могла выполняться как память-память с некоторыми операциями память-регистр. Функция Scientific Instruction Set, если установлена, предоставляла доступ к четырем регистрам с плавающей точкой , которые могли быть запрограммированы для 32-битных или 64-битных операций с плавающей точкой. Модели 85 и 195 также могли работать с 128-битными числами с плавающей точкой расширенной точности, хранящимися в парах регистров с плавающей точкой, а программное обеспечение обеспечивало эмуляцию в других моделях. System/360 использовала 8-битный байт, 32-битное слово, 64-битное двойное слово и 4-битный полубайт . Машинные инструкции имели операторы с операндами, которые могли содержать номера регистров или адреса памяти. Эта сложная комбинация вариантов инструкций привела к появлению различных длин и форматов инструкций.
Адресация памяти осуществлялась с использованием схемы «база плюс смещение» с регистрами от 1 до F (15). Смещение кодировалось в 12 битах, что позволяло получить смещение размером 4096 байт (0–4095) в качестве смещения от адреса, помещенного в базовый регистр.
Регистр 0 не мог использоваться ни как базовый регистр, ни как индексный регистр (ни как регистр адреса перехода), поскольку «0» был зарезервирован для указания адреса в первых 4 КБ памяти, то есть, если регистр 0 был указан, как описано, значение 0x00000000 неявно вводилось в расчет эффективного адреса вместо любого значения, которое могло содержаться в регистре 0 (или, если он был указан как регистр адреса перехода, то переход не производился, а содержимое регистра 0 игнорировалось, но любой побочный эффект инструкции выполнялся).
Это специфическое поведение допускало первоначальное выполнение подпрограмм прерывания, поскольку базовые регистры не обязательно будут установлены в 0 в течение первых нескольких циклов инструкций подпрограммы прерывания. Это не нужно для IPL («Initial Program Load» или загрузки), поскольку всегда можно очистить регистр без необходимости его сохранения.
За исключением Model 67, [29] все адреса были реальными адресами памяти. Виртуальная память не была доступна в большинстве мэйнфреймов IBM до серии System/370 . Model 67 представила архитектуру виртуальной памяти, которую использовали MTS , CP-67 и TSS/360 , но не основная операционная система IBM System/360.
Инструкции машинного кода System/360 имеют длину 2 байта (без операндов памяти), 4 байта (один операнд) или 6 байтов (два операнда). Инструкции всегда располагаются на границах 2 байтов.
Такие операции, как MVC (Move-Characters) (Hex: D2), могут перемещать не более 256 байт информации. Перемещение более 256 байт данных требует нескольких операций MVC. (В серии System/370 появилось семейство более мощных инструкций, таких как инструкция MVCL "Move-Characters-Long", которая поддерживает перемещение до 16 МБ в виде одного блока.)
Операнд имеет длину два байта, обычно представляя адрес как 4-битный полубайт, обозначающий базовый регистр и 12-битное смещение относительно содержимого этого регистра в диапазоне 000–FFF (показано здесь как шестнадцатеричные числа). Адрес, соответствующий этому операнду, представляет собой содержимое указанного регистра общего назначения плюс смещение. Например, инструкция MVC, которая перемещает 256 байт (с кодом длины 255 в шестнадцатеричном виде как FF ) из базового регистра 7, плюс смещение 000 , в базовый регистр 8, плюс смещение 001 , будет закодирована как 6-байтовая инструкция " D2FF 8001 7000 " (оператор/длина/адрес1/адрес2).
System/360 была разработана для разделения состояния системы от состояния проблемы . Это обеспечивало базовый уровень безопасности и восстанавливаемости после ошибок программирования. Проблемные (пользовательские) программы не могли изменять данные или хранилище программ, связанных с состоянием системы. Ошибки адресации, данных или исключений операций заставляли машину входить в состояние системы через контролируемую процедуру, чтобы операционная система могла попытаться исправить или завершить программу с ошибкой. Аналогичным образом она могла восстанавливать определенные аппаратные ошибки процессора через процедуры проверки машины .
Периферийные устройства, подключенные к системе через каналы . Канал — это специализированный процессор с набором инструкций, оптимизированным для передачи данных между периферийным устройством и основной памятью. В современных терминах это можно сравнить с прямым доступом к памяти (DMA). S/360 соединяет каналы с блоками управления с помощью шин и теговых кабелей; IBM в конечном итоге заменила их каналами Enterprise Systems Connection (ESCON) и Fibre Connection (FICON), но уже после эры S/360.
Первоначально существовало два типа каналов: каналы байт-мультиплексора (известные в то время просто как «каналы мультиплексора») для подключения «медленноскоростных» устройств, таких как считыватели карт и перфораторы, линейные принтеры и контроллеры связи, и каналы селектора для подключения высокоскоростных устройств, таких как дисководы , ленточные накопители , ячейки данных и барабаны . Каждая System/360 (за исключением Model 20, которая не была стандартной 360) имеет канал байт-мультиплексора и 1 или более каналов селектора, хотя у модели 25 есть только один канал, который может быть либо каналом байт-мультиплексора, либо селектором. Меньшие модели (до модели 50) имеют интегрированные каналы, тогда как для более крупных моделей (модель 65 и выше) каналы представляют собой большие отдельные блоки в отдельных шкафах: IBM 2870 представляет собой канал байт-мультиплексора с четырьмя селекторными подканалами, а IBM 2860 — с тремя селекторными каналами.
Канал байт-мультиплексора способен обрабатывать ввод-вывод с/на несколько устройств одновременно на самых высоких номинальных скоростях устройства, отсюда и название, поскольку он мультиплексирует ввод-вывод с этих устройств на один путь данных в основную память. Устройства, подключенные к каналу байт-мультиплексора, настроены на работу в 1-байтовом, 2-байтовом, 4-байтовом или «пакетном» режиме. Более крупные «блоки» данных используются для обработки все более быстрых устройств. Например, считыватель карт 2501, работающий со скоростью 600 карт в минуту, будет работать в 1-байтовом режиме, в то время как принтер 1403-N1 будет работать в пакетном режиме. Кроме того, каналы байт-мультиплексора на более крупных моделях имеют дополнительный раздел подканала селектора, который может вмещать ленточные накопители. Адрес канала байт-мультиплексора обычно был «0», а адреса подканалов селектора были от «C0» до «FF». Таким образом, ленточные накопители в System/360 обычно адресуются по адресу 0C0–0C7. Другие распространенные адреса байт-мультиплексора: 00A: 2501 Card Reader, 00C/00D: 2540 Reader/Punch, 00E/00F: 1403-N1 Printers, 010–013: 3211 Printers, 020–0BF: 2701/2703 Telecommunications Units. Эти адреса по-прежнему широко используются в виртуальных машинах z/VM.
Модели System/360 40 и 50 имеют интегрированную консоль 1052-7, которая обычно адресуется как 01F, однако она не была подключена к каналу байт-мультиплексора, а имела прямое внутреннее соединение с мэйнфреймом. Модель 30 подключала другую модель 1052 через блок управления 1051. Модели 60–75 также используют 1052–7.
Каналы селектора обеспечивали ввод-вывод для высокоскоростных устройств. Эти устройства хранения данных были подключены к блоку управления, а затем к каналу. Блок управления позволял подключать кластеры устройств к каналам. В моделях с более высокой скоростью несколько каналов селектора, которые могли работать одновременно или параллельно, улучшали общую производительность.
Блоки управления подключаются к каналам с помощью пар кабелей «шина и тег». Кабели шины передавали адрес и информацию о данных, а кабели тегов определяли, какие данные находились на шине. Общая конфигурация канала заключается в соединении устройств в цепочку, например: мэйнфрейм — блок управления X — блок управления Y — блок управления Z. Каждому блоку управления назначается «диапазон захвата» адресов, которые он обслуживает. Например, блок управления X может захватывать адреса 40–4F, блок управления Y: C0–DF, а блок управления Z: 80–9F. Диапазоны захвата должны быть кратны 8, 16, 32, 64 или 128 устройствам и быть выровнены по соответствующим границам. К каждому блоку управления, в свою очередь, подключено одно или несколько устройств. Например, у вас может быть блок управления Y с 6 дисками, которые будут адресоваться как C0-C5.
IBM выпускает три основных типа кабелей bus-and-tag. Первый — это стандартный серый кабель bus-and-tag, за ним следует синий кабель bus-and-tag и, наконец, коричневый кабель bus-and-tag. Как правило, более новые версии кабелей способны работать на более высоких скоростях или на больших расстояниях, а некоторые периферийные устройства указывают минимальные версии кабелей как для восходящего, так и для нисходящего потока.
Порядок кабелей блоков управления на канале также имеет значение. Каждый блок управления «привязан» к высокому или низкому приоритету. Когда выбор устройства отправлялся на канал мэйнфрейма, выбор отправлялся из X->Y->Z->Y->X. Если блок управления был «высоким», то выбор проверялся в исходящем направлении, если «низким», то во входящем направлении. Таким образом, блок управления X был либо 1-м, либо 5-м, Y был либо 2-м, либо 4-м, а Z был 3-м в очереди. Также возможно иметь несколько каналов, подключенных к блоку управления с одного или нескольких мэйнфреймов, тем самым обеспечивая богатую высокопроизводительную, множественную доступность и резервные возможности.
Обычно общая длина кабеля канала ограничена 200 футами, предпочтительнее меньше. Каждый блок управления составляет около 10 "футов" из 200-футового лимита.
IBM впервые представила новый тип канала ввода-вывода в Model 85 и Model 195, канал блочного мультиплексора 2880, а затем сделала их стандартными в System/370 . Этот канал позволял устройству приостанавливать программу канала, ожидая завершения операции ввода-вывода, и таким образом освобождать канал для использования другим устройством. Канал блочного мультиплексора может поддерживать либо стандартные соединения 1,5 МБ/с, либо, с функцией 2-байтового интерфейса, 3 МБ/с; последние используют один кабель тега и два кабеля шины. В S/370 есть опция для канала потоковой передачи данных 3,0 МБ/с [40] с одним кабелем шины и одним кабелем тега.
Первоначально для этого использовался диск с фиксированной головкой 2305, имеющий 8 «экспозиций» (псевдонимов адресов) и датчик вращательного положения (RPS).
Каналы блочного мультиплексора могут работать как селекторный канал, обеспечивая совместимое присоединение устаревших подсистем. [41]
Будучи неуверенной в надежности и доступности новых на тот момент монолитных интегральных схем , IBM решила вместо этого разработать и изготовить собственные гибридные интегральные схемы . Они были построены на квадратных керамических подложках размером 11 мм. Резисторы были нанесены шелкографией , а также были добавлены дискретные стеклянные инкапсулированные транзисторы и диоды . Затем подложка была закрыта металлической крышкой или инкапсулирована в пластик для создания модуля « Solid Logic Technology » (SLT).
Несколько таких модулей SLT затем были смонтированы методом переворота кристалла на небольшой многослойной печатной плате "SLT card". Каждая карта имела один или два гнезда на одном краю, которые вставлялись в штырьки на одной из "SLT boards" компьютера (также называемой объединительной платой). Это было противоположностью монтажу большинства карт других компаний, где карты имели штырьки или печатные контактные области и вставлялись в гнезда на платах компьютера.
До двадцати плат SLT можно было собрать бок о бок (вертикально и горизонтально, максимум 4 в высоту и 5 в ширину), чтобы сформировать «логический вентиль». Несколько ворот, смонтированных вместе, составляли коробчатую «логическую раму». Внешние ворота обычно крепились на петлях вдоль одного вертикального края, чтобы их можно было откинуть, чтобы обеспечить доступ к фиксированным внутренним воротам. Более крупные машины могли иметь более одной рамы, скрепленной болтами, для создания конечного блока, например, многорамного центрального процессора (ЦП).
Меньшие модели System/360 использовали Basic Operating System/360 ( BOS/360 ), Tape Operating System (TOS/360) или Disk Operating System/360 ( DOS/360 , которая впоследствии превратилась в DOS/VS, DOS/VSE, VSE/AF, VSE/SP, VSE/ESA, а затем и z/VSE ).
Более крупные модели использовали Operating System/360 (OS/360). IBM разработала несколько уровней OS/360 со все более мощными функциями: Primary Control Program (PCP), Multiprogramming with a Fixed number of Tasks (MFT) и Multiprogramming with a Variable number of Tasks (MVT). MVT потребовалось много времени, чтобы превратиться в пригодную для использования систему, и менее амбициозная MFT получила широкое распространение. PCP использовалась на промежуточных машинах, слишком маленьких для хорошей работы MFT, и на более крупных машинах до того, как MFT стала доступна; финальные выпуски OS/360 включали только MFT и MVT. Для System/370 и более поздних машин MFT превратилась в OS/VS1 , в то время как MVT превратилась в OS/VS2 (SVS) (Single Virtual Storage), затем в различные версии MVS (Multiple Virtual Storage), достигшие кульминации в текущей z/OS .
Когда в августе 1965 года IBM анонсировала Model 67 , IBM также анонсировала TSS/360 (Time-Sharing System) для поставки одновременно с 67. TSS/360, ответ на Multics , был амбициозным проектом, включавшим множество расширенных функций. У него были проблемы с производительностью, он был отложен, отменен, восстановлен и, наконец, снова отменен [NB 8] в 1971 году. Клиенты перешли на CP-67 , MTS ( Michigan Terminal System ), TSO ( Time Sharing Option for OS/360) или одну из нескольких других систем с разделением времени .
CP-67, оригинальная система виртуальной машины , также была известна как CP/CMS . CP/67 была разработана вне основного направления IBM в научном центре IBM в Кембридже в сотрудничестве с исследователями Массачусетского технологического института . CP/CMS в конечном итоге получила широкое признание и привела к разработке VM/370 (виртуальная машина), которая имела основную интерактивную «под»-операционную систему, известную как VM/CMS (система разговорного мониторинга). Это превратилось в сегодняшнюю z/VM .
Модель 20 предлагала упрощенную и редко используемую ленточную систему под названием TPS (Tape Processing System) и DPS (Disk Processing System), которая обеспечивала поддержку дисковода 2311. TPS могла работать на машине с 8 КБ памяти; DPS требовала 12 КБ, что было довольно много для Model 20. Многие клиенты вполне успешно работали с 4 КБ и CPS (Card Processing System). С TPS и DPS устройство чтения карт использовалось для чтения карт языка управления заданиями , которые определяли стек заданий для выполнения и для считывания данных транзакций, таких как платежи клиентов. Операционная система хранилась на ленте или диске, а результаты также могли сохраняться на лентах или жестких дисках. Стекированная обработка заданий стала захватывающей возможностью для небольшого, но предприимчивого пользователя компьютера.
Для небольших систем был доступен малоизвестный и малоиспользуемый набор служебных программ для 80-колоночных перфокарт, известный как Basic Programming Support (BPS) (в шутку: Barely Programming Support), предшественник TOS.
IBM создала новую систему наименований для новых компонентов, созданных для System/360, хотя были сохранены известные старые названия, такие как IBM 1403 и IBM 1052. В этой новой системе наименований компонентам были присвоены четырехзначные номера, начинающиеся с 2. Вторая цифра описывала тип компонента следующим образом:
IBM разработала новое семейство периферийного оборудования для System/360, перенеся некоторые элементы из своей старой серии 1400. Интерфейсы были стандартизированы, что обеспечило большую гибкость в комбинировании и сопоставлении процессоров, контроллеров и периферийных устройств, чем в более ранних линейках продуктов.
Кроме того, компьютеры System/360 могли использовать определенные периферийные устройства, которые изначально были разработаны для более ранних компьютеров. Эти более ранние периферийные устройства использовали другую систему нумерации, например, цепной принтер IBM 1403. 1403, чрезвычайно надежное устройство, которое уже заслужило репутацию рабочей лошадки, продавалось как 1403-N1, когда было адаптировано для System/360.
Также были доступны оптические считыватели символов (OCR) IBM 1287 и IBM 1288, которые могли считывать буквенно-цифровые (A/N) и цифровые рукописные (NHP/NHW) символы с рулонов кассовой ленты на страницы полного юридического размера. В то время это делалось с помощью очень больших оптических/логических считывателей. Программное обеспечение в то время было слишком медленным и дорогим.
Модели 65 и ниже продавались с IBM 1052–7 в качестве консольной пишущей машинки. 360/85 с функцией 5450 использовала консоль дисплея, которая не была совместима ни с чем другим в линейке; [42] [43] более поздняя консоль 3066 для 370/165 и 370/168 использовала ту же базовую конструкцию дисплея, что и 360/85. Модели IBM System/360 91 и 195 использовали графический дисплей, аналогичный IBM 2250, в качестве основной консоли.
Также были доступны дополнительные пульты оператора. Некоторые высокопроизводительные машины можно было дополнительно приобрести с графическим дисплеем 2250 , стоимостью более 100 000 долларов США; машины меньшего размера могли использовать менее дорогой дисплей 2260 или более поздний 3270 .
Первыми дисководами для System/360 были IBM 2302s [44] : 60–65 и IBM 2311s . [44] : 54–58 Первым барабаном для System/360 был IBM 7320 . [45] [46] : 41
Модель 2302 со скоростью 156 кбит/с была основана на более ранней модели 1302 и была доступна как модель 3 с двумя модулями по 112,79 МБ [44] : 60 или как модель 4 с четырьмя такими модулями. [44] : 60
Модель 2311 со сменным дисковым блоком 1316 была основана на IBM 1311 и имела теоретическую емкость 7,2 МБ, хотя фактическая емкость варьировалась в зависимости от конструкции пластинки. [46] : 31 (При использовании с 360/20, блок 1316 был отформатирован в сектора фиксированной длины по 270 байт , что давало максимальную емкость 5,4 МБ.)
В 1966 году были отправлены первые 2314. Это устройство имело до восьми используемых дисководов со встроенным блоком управления; было девять дисководов, но один был зарезервирован в качестве запасного. Каждый дисковод использовал съемный дисковый блок 2316 емкостью почти 28 МБ. Дисковые пакеты для 2311 и 2314 были физически большими по сегодняшним меркам — например, дисковый пакет 1316 имел диаметр около 14 дюймов (36 см) и имел шесть пластин, установленных на центральном шпинделе. Верхняя и нижняя внешние пластины не хранили данные. Данные записывались на внутренние стороны верхних и нижних пластин и обе стороны внутренних пластин, обеспечивая 10 поверхностей записи. 10 головок чтения/записи перемещались вместе по поверхностям пластин, которые были отформатированы с 203 концентрическими дорожками. Чтобы уменьшить количество перемещений головки (поиск), данные записывались в виртуальный цилиндр изнутри верхней пластины вниз внутрь нижней пластины. Эти диски обычно не форматировались с фиксированным размером секторов, как современные жесткие диски (хотя это делалось с помощью CP/CMS ). Вместо этого большинство программного обеспечения System/360 I/O могли настраивать длину записи данных (записи переменной длины), как в случае с магнитными лентами.
Некоторые из самых мощных ранних System/360 использовали высокоскоростные барабанные запоминающие устройства с головкой на дорожку. 3500 RPM 2301, [47] который заменил 7320, был частью оригинального объявления System/360, с емкостью 4 МБ. 303,8 кбит/с IBM 2303 [44] : 74–76 был анонсирован 31 января 1966 года с емкостью 3,913 МБ. Это были единственные барабаны, анонсированные для System/360 и System/370, и их нишу позже заняли диски с фиксированной головкой.
6000 RPM 2305 появился в 1970 году с емкостью 5 МБ (2305–1) или 11 МБ (2305–2) на модуль. [48] [49] Хотя эти устройства не имели большой емкости, их скорость и скорость передачи данных сделали их привлекательными для высокопроизводительных нужд. Типичным применением была оверлейная связь (например, для ОС и подпрограмм приложений) для разделов программ, написанных для чередования в тех же областях памяти. Диски с фиксированной головкой и барабаны были особенно эффективны в качестве устройств подкачки страниц в ранних системах виртуальной памяти. 2305, хотя его часто называли «барабаном», на самом деле был дисковым устройством с головкой на дорожку, с 12 записывающими поверхностями и скоростью передачи данных до 3 МБ/с.
Редко можно было увидеть IBM 2321 Data Cell , [50] механически сложное устройство, содержащее несколько магнитных полос для хранения данных; полосы могли быть доступны в случайном порядке, помещены на цилиндрический барабан для операций чтения/записи; затем возвращены во внутренний картридж хранения. IBM Data Cell [сборщик лапши] был среди нескольких зарегистрированных IBM «быстрых» массовых сетевых периферийных устройств хранения с прямым доступом (реинкарнированных в последние годы как «виртуальная лента» и автоматизированные периферийные устройства ленточного библиотекаря). Файл 2321 имел емкость 400 МБ, в то время как дисковый накопитель 2311 имел только 7,2 МБ. IBM Data Cell был предложен для заполнения разрыва в стоимости/емкости/скорости между магнитными лентами, которые имели большую емкость при относительно низкой стоимости за сохраненный байт, и дисками, которые имели более высокую стоимость за байт. Некоторые установки также обнаружили, что электромеханическая операция менее надежна, и выбрали менее механические формы хранения с прямым доступом.
Модель 44 была уникальной, предлагая интегрированный однодисковый привод в качестве стандартной функции. Этот привод использовал картридж 2315 "ramkit" и обеспечивал 1 171 200 байт памяти. [30] : 11
Серия 2400 1/2-дюймовых магнитных лент состояла из 2401 и 2402 Models 1-6 Magnetic Tape Units, 2403 Models 1-6 Magnetic Tape Unit and Control, 2404 Models 1-3 Magnetic Tape Unit and Control и 2803/2804 Models 1 и 2 Tape Control Units. [51] Более поздняя 2415 Magnetic Tape Unit and Control, представленная в 1967 году, содержала два, четыре или шесть ленточных приводов и управление в одном блоке, и была медленнее и дешевле. [52] Приводы и управление 2415 не продавались отдельно. [53] С появлением System/360 IBM перешла с 7-дорожечного на 9-дорожечный формат ленты IBM. Некоторые приводы серии 2400 можно было приобрести для чтения и записи 7-дорожечных лент для совместимости со старыми IBM 729 ленточных накопителей. В 1968 году была выпущена ленточная система IBM 2420, предлагающая гораздо более высокую скорость передачи данных, самозатягивающуюся ленту и плотность упаковки 1600 бит/дюйм. [54] Она оставалась в линейке продуктов до 1979 года. [55]
Несмотря на то, что они были проданы или сданы в аренду в очень больших количествах для мэйнфреймовой системы своего времени, осталось лишь несколько компьютеров System/360 — в основном как нерабочая собственность музеев или коллекционеров. Примеры существующих систем включают:
Текущий список оставшихся процессоров System/360, представляющих собой нечто большее, чем просто «передние панели», можно найти на странице «Всемирный перечень оставшихся процессоров System/360».
В этой галерее показана консоль оператора с лампами индикации значений , тумблерами (в середине фотографий) и « аварийным » выключателем (в правом верхнем углу фотографий) различных моделей.
...время машинного цикла ... варьируется от одной миллионной доли секунды до всего лишь 200 миллиардных долей секунды. ...объем памяти варьируется от 8000 символов информации до более чем 8 000 000.
Состояние режима (System/360, Model 30, режим или режим совместимости 1401) устанавливается во время считывания инициализационной карты совместимости.
{{cite journal}}
: CS1 maint: другие ( ссылка )