Как стать автором
Обновить

Комментарии 23

Поправки: во-первых 32-битные адреса использовались только в 65-ой и 67-ой моделях (для интерактивных систем), дальше они не прижились из-за проблем с совместимостью и сомнением, что такая большая память кому-нибудь понадобится. В старших моделях и S/370 адреса были 24-битные. Во-вторых BCD был двух типов: пакованный (4 бита на цифру) и зонный (байт на цифру, старшие нибблы равны нулю).
BCD был двух типов

в статье:
Два вида упакованных в бинарный формат десятичных чисел


я бы сказал что это скорее не поправка с вашей стороны а дополнение

упакованных в бинарный формат
— Я об этом. Упакован только один. Но это так — занудство с моей стороны, и не более.
упакованных в бинарный формат десятичных чисел

В русском языке всё же принят термин двоично-десятичный код".
Спасибо за статью!

Прозвучит, конечно, диковато, но часть описания лично мне (и, подозреваю, не только мне) не сказала ровно ничего на тему, почему же System/360 была революционной. Количество регистров сегодня вряд ли выглядит показателем революционности. Вот что был указан «определенный набор функций, не уточняя при этом с помощью каких именно физических средств они должны реализовываться» — это выглядит новаторски.

В общем, не хочется выглядеть Незнайкой, но было бы неплохо хоть как-то объяснять, (чуть не написал «когда хлопать») что из написанного и почему должно считаться прорывом. Тем более, что в семействе System/360 было, как Вы же и описывали, далеко не одна модель, и младшие от старших отличались весьма заметно — т.е., вероятно, что-то было такое, что выделяло это семейство на фоне других вычислительных систем того времени.
Выделяло наличие младших и старших моделей (собственно совместимость), плюс регистровая архитектура (я не уверен, что S/360 — первая система с РОН, но во всяком случае первая широко распространенная). Но вообще говоря, выделял тот факт, что ей широко пользовались.
Вот собственно наличие семейства и есть самое главное. Шесть совместимых моделей. Младшай от старшей по скорости отличается в 200 раз (!). Но при этом общие программы, общая периферия, одна система команд.

Это была революция просто фантастических масштабов. Это сейчас когда вы покупаете новый китайский телефон за $100 и на нём вдруг не идёт ваша любимая игрушка вы плюётесь и клянёте Google, китайцев и всех на свете. Вам даже в голову не приходит что это чудо: вы купили железяку другой компании, выпущенную совсем другими людьми — и вам не придётся весь софт с нуля переписывать. А тогда — это было в порядке вещей. Не только OS и программы приходилось переписывать. Файлы с данными было нельзя перенести, так как у разных машин были разные не то, что наборы символов, а и разные машинные слова: 12 бит, 18 бит, 36 бит. Собственно сам 8-битный байт — это тоже инновация, введённая в IBM/360!
Вот! Об этом я и говорю: у Хабра есть свой уровень аудитории, ниже которого писать как-то не комильфо, но и выше которого статью поймут далеко не все. Вы сейчас в 50 словах изложили хоть какую-то базу, так почему это — в комментах, а не во вводной к статьях?

Если писать для Хабра, то, может быть, все же ориентироваться на аудиторию, а не изложение для некоего виртуального общества «знаталов старой техники»? :)
В посте есть ссылка на "прошлую статью", где всё написано:
Первой инновацией IBM, использующейся до сих пор, стал анонс целой линейки компьютеров, отличавшихся по цене, размеру и производительности, но использовавших общий набор команд (кроме нескольких моделей для специфичных рынков). Это позволяло компаниям приобрести модель попроще, а по мере роста потребностей, осуществить «апгрейд» железа, без необходимости переписывания уже отлаженного ПО.
Насчёт защиты памяти хочу сделать некоторую коррекцию.
Насколько я помню, каждой прикладной программе (а не
каналу ввода-вывода) присваивался
уникальный ключ от 1 до 15 (нулевой ключ был зарезервирован
за системой) и при обращении к памяти этот ключ сравнивался с
дескриптором блока памяти.
Все эти системные команды вроде присвоения ключа производились
в режиме супервизора, в режим которого можно было попасть с
помощью волшебной команды MODESET.
A, поскольку, эта команда не на всех компьютерах была разрешена,
существовали недокументированные возможности получения
режима супервизора.
А ещё существовала система Примус, разработанная в нашем институте…
Одним словом, IBM360/370 — это целая эпоха.
MODESET
— В PoOps об этом ничего нет. Может быть, это особенность ЕС ЭВМ?
Это такая макрокоманда, которая вызывала
определённый SVC.
> А ещё существовала система Примус

Напрасно ты винишь в непостоянстве рок,
Что не внакладе ты. Глупец, тебе и невдомёк —
Когда б он в милости своей был постоянен,
Ты б очереди ждать своей до смерти мог.

:)

TRY SHARE
В некоторых местах Примус еще жив, а в старых залах стоят забытые железные призраки прошлого. Было очень интересно увидеть их своими глазами.
Да, забыл добавить, что диски были на 7 и 29 мегабайт и
каждую дорожку (и даже сектор) можно было форматировать
по-своему. И висли они (ЕС ЭВМ) каждые полчаса, а когда машина
висла, выходил обсолютно пьяный техник, с важным видом смотрел на
лампочки на пульте управления и нажимал кнопку перезагрузки.
А ещё у этой серии не было постоянной памяти (ПЗУ).
И для начальной загрузки процессор эмулировать команду ввода
для одного из каналов. А ещё была документация, которая у
на занимала длинную полку…
Много можно рассказывать.
До сих пор распространённый символ базы данных в виде цилиндра появился благодаря дисковому пакету IBM/360:


Один мой одногруппник после выпуска попал на военный ВЦ, и в его обязанности входил «перенос базы данных». Это было не совсем то, что вы подумали. Перенос производился так: он шёл в секретную часть, получал там (с соблюдением всех формальностей режима секретности) этот пакет, переносил его на ВЦ и устанавливал на время работы программы. Потом, соответственно, снимал, переносил и сдавал обратно.
Знакомая штука, помню, что у родителей на балконе хранилась парочка таких кожухов, без ленты. В них складывалась всякая мелочевка.
Скорее это диски из которых любили телеантенны делать.
И то, и другое: диски собраны в пакет, а он помещён в прозрачный кожух.
Из них получается хороший подшипник азимутальной оси крупноразмерной монтировки Добсона. К сожалению, их запас практически иссяк — большая часть была уничтожена как раз на антенны.
Шестнадцать 32-битных регистров общего назначения, именовавшихся от R0 до R15. Четыре 64-битных регистра для чисел с плавающей запятой, они именовались FP0, FP2, FP4 и FP6
.
В программах на ассемблере они просто нумеровались 0 до 15 и 0 до 6 соответственно:

LR 3, 4 загрузить в регистр 3 (Load Register) содержимое регистра 4
А 3,=F’123’ увеличить значение регистра 3 на 123

Путаницы между регистрами для целочисленной арифметики и плавающей арифметики не возникало, потому что с ними работали разные команды.
Один 64-битный регистр состояния (Program Status Word или PSW), помимо прочего содержащий 24-битный адрес инструкции.

В System/370 адрес был уже 32-х битный.
Адресация чаще всего использовалась «усеченная»: инструкции не содержали полный адрес, а только смещение, относительно базового адреса, содержащегося в одном из регистров общего назначения.

Ещё надо заметить, что все регистры общего назначения были равноправны, кроме нулевого. Если нулевой регистр участвовал в адресации, то это означало, что используется не содержимое нулевого регистра, а используется 0. Поясню: если в качестве операндов при формировании адреса были указаны регистры 11 и 12, то адрес — это сумма содержимого регистров 11 и 12. Если указаны 0 и 12, то адрес брался только из регистра 12.

Из недостатков системы команд System/360/370 следует отметить отсутствие концепции стека. Согласно легенде, главный архитектор IBM/360 за этот просчёт был отправлен во внутрифирменный аналог Сибири.

не сказала ровно ничего на тему, почему же System/360 была революционной.

что из написанного и почему должно считаться прорывом.

Революционным в этой серии оказалось то, что программное обеспечение могло работать на всех моделях, просто на одних медленнее, а на других быстрее. Сейчас это кажется само собой разумеющимся, но тогда это был прорыв. В те времена если взамен старого компьютера ставили новый, то приходилось заново переписывать ПО. Программы для БЭСМ-3 не работали на БЭСМ-6, не говоря уже о том, что программы для «Урала» не работали на «Минске». Унификация – вот что было революционным. Не только в ПО, но в периферийном оборудовании: одинаковые для всех моделей АЦПУ, диски, ленты и т.д. До этого был зоопарк. Что тут говорить, у «БЭСМ» байт был 6-разрядный, а у «Минск» — 7-разрядный. Вас такие факты убеждают в творившемся «зоопарке»?

Ну и революция состояла в эволюционном развитии ОС: сперва пакетная обработка программ, затем ОС с фиксированным числом задач в режиме разделения времени, потом с переменным числом задач. Затем система с виртуальной памятью, после неё – система виртуальных машин.
Ну и революция состояла в эволюционном развитии ОС: сперва пакетная обработка программ, затем ОС с фиксированным числом задач в режиме разделения времени, потом с переменным числом задач. Затем система с виртуальной памятью, после неё – система виртуальных машин.
— Не совсем эволюция: VM вообще возникла раньше MVS.
Из недостатков системы команд System/360/370 следует отметить отсутствие концепции стека. Согласно легенде, главный архитектор IBM/360 за этот просчёт был отправлен во внутрифирменный аналог Сибири.
— IMHO, не более чем легенда. В шестьдесят четвертом стека не было почти ни у кого. А у тех, у кого он был, не было регистров. Известно, что инженеры IBM потратили много времени на выбор между арифметическим стеком и gpr. А чистый стек вызовов, как у современных машин, в те времена был редкостью.

В System/370 адрес был уже 32-х битный.
— Нет, до S/370-XA адреса были 24-битные (кроме 206x процессоров).
Да, стека не было. Вместо него использовался 13-й регистр,
который указывал на область сохранения.
И надо было не забыть выделить эту область в начале
каждой процедуры.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории