7 апреля 1964 года, шестьдесят лет назад, компания IBM анонсировала семейство компьютеров с архитектурой IBM System/360. Автор книги «От хорошего к великому» Джим Коллинз включил System/360 в тройку лучших бизнес-достижений всех времен, наряду с моделью T Форда и первым реактивным лайнером Boeing 707.

IBM System/360 стала символом целой эпохи в истории информационных технологий. Именно для System/360 изобрели 8-битный байт. Также IBM/360 стала первой 32-разрядной компьютерной системой. В этой статье погрузимся в историю и узнаем, как IBM System/360 совершила технологический прорыв и превратила производство мэйнфреймов в крупномасштабный производственный процесс.


Were you reading this, Neo? Or were you looking at the woman in the blue dress?
Were you reading this, Neo? Or were you looking at the woman in the blue dress?

Назревающие проблемы

Сейчас идея System/360 кажется простой и очевидной. Всего-то линейка компьютеров, на которых будет работать одно и то же программное обеспечение. Однако до 1964 года компьютерные системы, даже от одного производителя, были вообще несовместимы друг с другом.

Программное обеспечение и периферийные устройства старых систем не могли работать с новыми системами. Проводить апгрейд было непросто. Чтобы просто обновить оборудование, приходилось переписывать приложения.

«Представьте, что компания потратила целое состояние и два-три года на разработку банковского приложения, а потом появляется новое оборудование, на котором прежнее ПО не работает, и все приходится делать заново», — говорил Пат Тул, один из инженеров первой модели System/360.

Да и для самой IBM ситуация была неблагоприятной. Нужно было выпускать устаревшее оборудование и содержать специалистов, умеющих его настраивать. Поддерживать множество несовместимых продуктовых линеек было затратно и по времени, и по ресурсам.

К тому же в отрасли была конкуренция: Honeywell, Burroughs и Control Data Corp., Remington Rand представляли свои продукты. А заказчикам было, по сути, все равно у кого купить очередной «уникальный» компьютер, ведь в любом случае все нужно было настраивать заново.

Поэтому, когда в январе 1961 года в IBM представили проект новой системы 8000, которая была очень «мощной», но все такой же несовместимой и дорогой, стало понятно, что компания в тупике. Проект реализовывать не стали, IBM взялась за разработку принципиально новых моделей.

«Авантюра на 5 миллиардов долларов»

В 1961 году под руководством нового генерального директора Томаса Дж. Уотсона-младшего IBM создала рабочую группу из 25 человек под названием SPREAD («Системное программирование, научные исследования и разработки»). Целью стало создание новой системы.

Бесконечные споры команды сильно тормозили процесс разработки идеи, поэтому руководство отправило членов SPREAD в отель в пригороде Нью-Йорка с ультиматумом, что никто не выйдет оттуда, пока команда не договорится. 

В итоге 80-страничный отчет был представлен к Рождеству. Идея команды заключалась в создании ряда масштабируемых систем, различающихся только вычислительной мощностью. 

Каждое устройство совместимо с другими. Программа, работающая на одном компьютере, может работать на всех системах, и все компьютеры используют стандартные интерфейсы.

Рекомендации легли в основу System/360. Название «360» было выбрано, чтобы выразить идею полного охвата, буквально на 360 градусов.

В ходе обсуждения стало понятно, что процессоры System/360 должны использовать новые технологии. А значит, новое семейство не будет совместимо с уже существующими системами IBM. Это было рискованно.

Томас Уотсон долго сомневался. 

System 360 «была самым важным и рискованным решением, которое я когда-либо принимал, и я мучился по этому поводу неделями, но в глубине души я верил, что нет ничего, чего IBM не могла бы сделать», — писал Уотсон в книге «Отец, сын и компания: Моя жизнь в IBM и за ее пределами».

В итоге Уотсон сделал ставку всей компании на разработку System/360.

Главным архитектором System/360 стал Джин Амдал, создатель IBM 704, мэйнфрейма, используемого в научных исследованиях. Руководил проектом Фред Брукс. Именно он придумал термин «компьютерная архитектура». 

Брукс сотрудничал с Бобом Эвансом и Эрихом Блохом, за свою роль в разработке System/360 они получили первую в истории Национальную медаль технологий.

Джин Амдал и Фред Брукс
Джин Амдал и Фред Брукс

Журнал Fortune в 1966 году назвал создание System/360 — авантюрой IBM в 5 миллиардов долларов.

И действительно, многое пошло не по плану. Разработка системы заняла значительно больше времени, чем рассчитывали изначально, инженеры буквально жили в компании, работая по 100 часов в неделю.

Стоимость System/360 значительно превысила запланированные $625 млн. На разработку системы компания потратила $5,25 млрд (в современных ценах это около $41 млрд). Создание семейства компьютеров обошлось дороже, чем Манхэттенский проект.

Риск банкротства для IBM был реален, ведь компания потратила больше, чем зарабатывала за год, но все закончилось благополучно. 

Томас Уотсон анонсирует IBM System/360
Томас Уотсон анонсирует IBM System/360

Анонс системы состоялся 7 апреля 1964 года. Компания представила шесть моделей процессоров, охватывающих широкий диапазон производительности, а также 44 периферийных устройства.

System/360 предназначалась для обслуживания всех возможных типов пользователей.

Проектирование было отделено от сборки, поэтому системы можно было тиражировать. 

Совместимость компонентов сделала System/360 модульной, и хотя были анонсированы всего шесть систем, они имели 19 комбинаций мощности, скорости и объема памяти. 

В IBM стремились, чтобы аппаратное обеспечение было отделено от программного обеспечения, и программа могла работать на разных версиях System/360.

Председатель IBM в своих мемуарах отмечал, что не все оборудование, представленное на выставке 7 апреля, было настоящим — некоторые устройства были просто деревянными макетами. 

Основная работа была впереди. Начался очень опасный, напряженный и сложный период становления производства. Компания наняла больше семидесяти тысяч новых сотрудников, строила заводы и принимала новые и новые заказы.

Первые поставки машин низкого уровня были обещаны в третьем квартале 1965 года, а поставки более сложных машин — в первом квартале 1966 года.

Семейство компьютеров

Компания IBM выпустила 14 моделей System/360, включая отдельные машины для научных вычислений. 

Первые модели 30, 40, 50, 60, 62 и 70 были анонсированы еще в 1964 году. 

Модели 30 и 40 были ориентированы на низкий и средний сегмент рынка. Они были самыми прибыльными, на них приходилось более половины проданных единиц System/360

IBM 360 Модель 30
IBM 360 Модель 30

Модели 60, 62 и 70 не были реализованы. Вместо них IBM выпустила модели 65 и 75. 

В 1966 году вышла модель 20, которая стала самым бюджетным вариантом System/360. Она имела всего 4096 байт основной памяти и восемь 16-битных регистров.

Процессор IBM System/360 модель 20
Процессор IBM System/360 модель 20

В этот же период IBM выпустила специально оптимизированную для научных вычислений модель 44. 

Изначально для того чтобы все модели использовали один набор команд, в System/360 применили идею «микропрограммирования». Команды разбивались на ряд «микроопераций», специфичных для данной реализации системы.

В модели 75 и более крупных системах отказались от использования микрокода. Это сделали для обеспечения более высокой скорости.

Среди машин высокого уровня также были модели 67, 85, 91, 95 и 195. 

IBM System/360 модель 67 в главном кампусе Мичиганского университета
IBM System/360 модель 67 в главном кампусе Мичиганского университета

Модель 67 стала первым продуктом IBM, который поддерживал аппаратное обеспечение виртуальной памяти. 

System/360 модель 91. НАСА где-то в конце 60-х годов. Модель 91 была самой продвинутой из линейки System/360. Компьютер поддерживал выполнение инструкций вне очереди
System/360 модель 91. НАСА где-то в конце 60-х годов. Модель 91 была самой продвинутой из линейки System/360. Компьютер поддерживал выполнение инструкций вне очереди

Модель 85 была промежуточной между System/360 и более поздней System/370.

Технические особенности

System/360 представила новые технологические решения, такие как:

  • Solid Logic Technology (SLT). Метод, используемый IBM для гибридной упаковки электронных схем. Технология позволила компании создавать более быстрые и компактные машины, чем у конкурентов.

  • 8-битные байтовые адреса. В System/360 был стандартизирован байт как равный восьми битам, и использовалась длина слова в 32 бита, что помогло упростить архитектуру. 

  • 9-дорожечная лента. Магнитная лента с восемью дорожками для данных и одной дорожкой для бита четности была разработана специально под System/360.

  • Набор символов EBCDIC. Расширенный двоично-десятичный код также был разработан IBM в этот период.

Ленточные накопители IBM System 360
Ленточные накопители IBM System 360
  • Архитектура IBM с плавающей запятой. Числа с плавающей запятой стали поддерживаться в типичных операциях, связанных со сложением, вычитанием, умножением, извлечением квадратного корня и т. д.

Версии OS/360

Создание программного обеспечения стоило IBM многих хлопот. Стоимость проекта OS/360 предварительно оценивалась в 30 и 40 миллионов долларов. В итоге на ПО потратили 500 миллионов долларов.

Перед разработчиками стояли сложные задачи: обеспечить совместимость системы, сделать возможным одновременный запуск двух или более программ.

IBM привлекла к работе над операционной системой 1000 человек. Было создано более миллиона строк кода. Но увеличение числа программистов не принесло ожидаемых результатов.

Свой опыт работы над ОS/360, Брукс отразил в книге «Мифический человеко-месяц». Один из принципов, описанных в книге, гласит: увеличение ресурсов на проекте не всегда приводит к уменьшению его сроков.

Брукс утверждает, что разработка компилятора Алгол будет занимать полгода, независимо от количества программистов, задействованных в процессе.

Свой опыт работы над ОS/360, Брукс описал в книге «Мифический человеко-месяц» 
Свой опыт работы над ОS/360, Брукс описал в книге «Мифический человеко-месяц» 

Все пошло не по плану. Одну пакетно-ориентированную операционную систему создать не удалось. Не было времени на разработку, аппаратное обеспечение было готово, а OS/360 запаздывала. 

Было решено выпустить операционную систему в упрощенном виде с обещанием будущих обновлений.

Всего создали три варианта операционной системы: 

  • OS/360 PCP (Principal Control Program) была самой простой и могла запускать только одну программу одновременно. Ее использовали внутри компании IBM.

  • OS/360 MFT (Multiprogramming with a Fixed number of Tasks) Множественное программирование с фиксированным количеством задач. Система могла запускать несколько программ, но ограничение заключалось в том, что когда одна программа простаивает, выделенная для нее память остается недоступной для других программ.

  • OS/MVT (Multiprogramming with a Variable number of Tasks) Множественное программирование с переменным количеством задач. Система позволяла воссоздавать разделы памяти по мере необходимости. Когда память простаивает, она выделяется другой программе в очереди поиска. 

В 2000 году OS/360 стала общественным достоянием и теперь бесплатно доступна пользователям и разработчикам для загрузки и усовершенствований.

Значение System/360

Риск IBM окупился сторицей: всего за первые три месяца после выпуска IBM получила заказов на 1,2 миллиарда долларов. Уже к концу 1960-х годов System/360 стала отраслевым стандартом. Она использовалась в корпорациях, правительственных учреждениях, университетах и исследовательских центрах по всему миру. 

Доминирование IBM было настолько сильным, что в 1969 году Министерство юстиции США начало антимонопольное разбирательство, утверждая, что компания незаконно монополизировала рынок мэйнфреймов.

Система долго оставалась успешной, и у неё появился целый рынок «клонов». В 1960-х и 1970-х годах многие компании производили клоны IBM System/360. Некоторые компании, такие как Memorex, выпускали аппаратные средства-клоны System/360. Например, накопители на магнитных дисках.

Даже Джин Амдал, системный архитектор System/360, основал собственную компанию, производящую клоны IBM. 

В целом System/360 оказала огромное влияние на компьютерную индустрию, установив отраслевой стандарт и закрепив за IBM господство на рынке на два десятилетия. 

Успех системы привел к росту спроса на мэйнфреймы, поспособствовал технологическим инновациям. Появилась возможность перестать писать ПО для разных компьютеров, и разработчики смогли сосредоточиться на новых приложениях. Для IT открылся совершенно новый мир, мир мегапроектов.


НЛО прилетело и оставило здесь промокод для читателей нашего блога:

-15% на заказ любого VDS (кроме тарифа Прогрев) — HABRFIRSTVDS.

Комментарии (9)


  1. SIISII
    05.04.2024 10:34
    +10

    Для Системы 360 была разработана не только OS/360; более того, она, во-первых, прилично запоздала, а во-вторых, требовала довольно много ресурсов и поэтому не могла применяться на младших моделях. Так что младшие, но "настоящие" модели Системы 360 (30 и 40, как минимум) использовали DOS/360. Ну а та же модель 20 и ещё одна или две модели, хотя и формально относились к Системе 360, но в реальности нарушали принципы её работы -- в частности, не имели большинства обязательных команд; естественно, обычные ОС на них в принципе работать не могли (да и памяти было слишком мало). У нас обе этих системы, естественно, содрали -- они превратились в ОС ЕС и ДОС ЕС. Как правило, ОС начинали использовать, если у машины было хотя бы 512 Кбайт памяти, хотя технически она могла работать на 128 Кбайтах -- только особого смысла в этом не было.

    Ну и стоило б добавить, что эта архитектура -- самая древняя из до сих пор живых: современные мэйнфреймы z/Architecture выросли из Системы 360 и сохраняют с ней совместимость на уровне прикладного кода. Вот системного -- уже нет: под занавес Системы 370 и в Системе 370-XA были внесены изменения, ломающие совместимость некоторых привилегированных команд, ну и переход на 64 бита в z/Architecture тоже внёс множество изменений для системного кода. Вообще, эволюция этого семейства архитектур является, можно считать, прямой противоположностью эволюции IA-32 aka x86: на прикладном уровне действительно полная совместимость, а системный смело меняли, когда старые решения начинали мешать -- очевидно ведь, что переносимость нужна именно для прикладных программ, переписать систему, даже целиком на ассемблере, не такая кошмарная задача по сравнению с прикладным ПО.


  1. victor_1212
    05.04.2024 10:34

    Именно для System/360 изобрели 8-битный байт. Также IBM/360 стала первой 32-разрядной компьютерной системой.

    вообще говоря первой 32-разрядной машиной был SSEM (=Manchester Baby,1948), в ранних машинах часто использовалась более экономная 6-bit кодировка символов, поэтому длина машинного слова была кратна 6, например 36 (IBM 701, 704, UNIVAC 1108), 48 (CDC 1604), или 60 bits (CDC 6600),

    для IBM 7030 Stretch (1958-61) команды были как 32-bit, так и 64-bit, регистры в основном 64-bit, байт мог иметь любую длину 4 - 8 bits, архитектура 360 это типа развитие IBM 7030 в сторону упрощения


    1. andy_p
      05.04.2024 10:34

      Да и первым реактивным лайнером был ТУ-104, если Каравеллу не учитывать.


      1. SIISII
        05.04.2024 10:34

        Ну, к лайнеру можно придраться в том отношении, что Ту-104 -- переделанный бомбардировщик, а не с нуля спроектированный пассажирский самолёт. А к 32-разрядной машине -- что только с Системы 360 машинное слово стало делиться на части, адресуемые независимо.


  1. Greesha
    05.04.2024 10:34
    +3

    И ни слова про ЕС ЭВМ :) Кто знает, для того очевидно, а кто не знает, тому уже и не надо.


    1. victor_1212
      05.04.2024 10:34

      что собственно писать про них, надо было типа свои рабочие станции делать на mini, а не 360 копировать, вероятно отставание меньше могло бы быть, линию БЭСМ-6 развивать как Лебедев предлагал, интересно что уже упомянутый Brooks когда началось это копирование типа приглядывал за развитием ЕС ЭВМ, регулярно свои оценки давал, сколько времени займет для разных моделей, и что ожидается в результате, не удивлюсь если правильные


      1. dyadyaSerezha
        05.04.2024 10:34

        Делали и на мини, но они были на порядок слабее ЕС ЭВМ.


      1. SIISII
        05.04.2024 10:34

        БЭСМ-6 -- тупиковая машина, как и любая ЭВМ 1 и 2 поколений во всём мире, её всё равно пришлось бы выкинуть на свалку. И дело здесь не в элементной базе, а в архитектуре. Так что правильно, что скопировали весьма совершенные буржуинские архитектуры, заодно получив кучу готового системного ПО и обеспечив программную совместимость. Неправильно другое: что далее стали копировать всё больше и больше, причём не только базовые идеи, но и реализации...


    1. dyadyaSerezha
      05.04.2024 10:34
      +2

      А что тут писать. Все же знают, что СССР - родина слонов и ЭВМ. Поэтому понятно, кто у кого спер ;)