Третье поколение — интегральные схемы (1965-1980)
Изобретение в 1958 году Робертом Нойсом (Robert Noyce) кремниевой интегральной схемы означало возможность размещения на одной небольшой микросхеме десятков транзисторов. Компьютеры на интегральных схемах были меньшего размера, работали быстрее и стоили дешевле, чем их предшественники на транзисторах.
К 1964 году компания IBM лидировала на компьютерном рынке, но существовала одна большая проблема: компьютеры 7094 и 1401, которые она выпускала, были несовместимы друг с другом. Один из них предназначался для сложных расчетов, в нем использовалась двоичная арифметика на регистрах по 36 бит, во втором применялась десятичная система счисления и слова разной длины. У многих покупателей были оба этих компьютера, и им не нравилось, что они совершенно несовместимы.
Когда пришло время заменить эти две серии компьютеров, компания IBM сделала решительный шаг. Она выпустила линейку транзисторных компьютеров System/360, которые были предназначены как для научных, так и для коммерческих расчетов. Линейка System/360 имела много нововведений. Это было целое семейство компьютеров для работы с одним языком (ассемблером). Каждая новая модель была больше по возможностям, чем предыдущая. Компания смогла заменить 1401 на 360 (модель 30), а 7094 — на 360 (модель 75). Модель 75 была больше по размеру, работала быстрее и стоила дороже, но программы, написанные для одной из них, могли использоваться в другой. На практике программы, написанные для маленькой модели, выполнялись большой моделью без особых затруднений. Но в случае переноса программного обеспечения с большой машины на маленькую могло не хватить памяти. И все же создание такой линейки компьютеров было большим достижением. Идея создания семейств компьютеров вскоре стала очень популярной, и в течение нескольких лет большинство компьютерных компаний выпустили серии сходных машин с разной стоимостью и функциями. В табл. ниже показаны некоторые параметры первых моделей из семейства 360. О других моделях этого семейства мы расскажем далее.
Первые модели серии IBM 360:
Параметры | Модель 30 | Модель 40 | Модель 50 | Модель 65 |
Относительная производительность | 3,5 | |||
Время цикла (нс) | ||||
Максимальный объем памяти (байт) | ||||
Количество байтов, вызываемых из памяти за 1 цикл | ||||
Максимальное число каналов данных |
Еще одно нововведение в 360 — мультипрограммирование. В памяти компьютера могло находиться одновременно несколько программ, и пока одна программа ждала, когда закончится процесс ввода-вывода, другая выполнялась. В результате ресурсы процессора расходовались более рационально.
Компьютер 360 был первой машиной, которая могла полностью эмулировать работу других компьютеров. Маленькие модели могли эмулировать 1401, а большие — 7094, поэтому программисты могли оставлять свои старые программы без изменений и использовать их в работе с 360. Некоторые модели 360 выполняли программы, написанные для 1401, гораздо быстрее, чем сама 1401, поэтому стала бессмысленной переделка программ.
Компьютеры серии 360 могли эмулировать работу других компьютеров, потому что создавались с использованием микропрограммирования. Нужно было написать всего лишь три микропрограммы: одну — для системы команд 360, другую — для системы команд 1401, третью — для системы команд 7094. Требование гибкости стало одной из главных причин применения микропрограммирования.
Компьютеру 360 удалось разрешить дилемму между двоичной и десятичной системами счисления: у этого компьютера было 16 регистров по 32 бит для бинарной арифметики, но память состояла из байтов, как у 1401. В 360 использовались такие же команды для перемещения записей разного размера из одной части памяти в другую, как ив 1401.
Объем памяти у 360 составлял 224 байт (16 Мбайт). В те времена такой объем памяти казался огромным. Линейка 360 позднее сменилась линейкой 370, затем 4300, 3080, 3090. У всех этих компьютеров была сходная архитектура. К середине 80-х годов 16 Мбайт памяти стало недостаточно, и компании IBM пришлось частично отказаться от совместимости, чтобы перейти на 32-разрядную адресацию, необходимую для памяти объемом в 232 байт.
Можно было бы предположить, что поскольку у машин были слова в 32 бит и регистры, у них вполне могли бы быть и адреса в 32 бит. Но в то время никто не мог даже представить себе компьютер с объемом памяти в 16 Мбайт. Обвинять IBM в отсутствии предвидения все равно что обвинять современных производителей персональных компьютеров в том, что адреса в них всего по 32 бит. Возможно, через несколько лет объем памяти компьютеров будет составлять намного больше 4 Гбайт, и тогда адресов в 32 бит будет недостаточно.
Мир мини-компьютеров сделал большой шаг вперед в третьем поколении вместе с производством линейки компьютеров PDP-11, последователей PDP-8 со словами по 16 бит. Во многих отношениях компьютер PDP-11 был младшим братом 360, a PDP-1 — младшим братом 7094. И у 360, и у PDP-11 были регистры, слова, память с байтами, и в обеих линейках компьютеры имели разную стоимость и разные функции. PDP-1 широко использовался, особенно в университетах, и компания DEC продолжала лидировать среди производителей мини-компьютеров.