Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
История информационных технологий I.doc
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
8.02 Mб
Скачать

21.Американская система ibm-360

В 1964-м году фирма IBM начала разработку семейства компьютеров IBM-360 (System/360). В отличие от предыдущих разработок, IBM создала ряд компьютеров, от малых к большим, от низкой к высокой производительности. Все модели использовали один и тот же набор команд, что обеспечивало программную совместимость между различными моделями. Точнее, программы, работающие на младшей модели, должны работать на всех старших моделях. Наоборот – не обязательно. Эта особенность позволяла заказчику использовать недорогую модель, после чего обновиться до более крупной системы, с ростом компании — без необходимости переписывать программное обеспечение.

Для обеспечения совместимости, IBM впервые применила технологию микроуправления, которая применялся во всех моделях ряда, кроме самых старших. Существо этой технологии состоит в следующем. Команда компьютера представлялась как последовательность микропрограмм, хранящихся в особом запоминающем устройстве. Микропрограмма, в свою очередь, состояла из совокупности микрокоманд, выполняемых процессором микропрограммного управления. Таким образом, обеспечивалось разграничение системы команд компьютера от технической реализации компьютера.

До объявления IBM-360 практически все компьютеры (как зарубежные, так и отечественные) разрабатывались для решения научных и инженерных задач, т.е. в, конечном итоге, для вычисления математических функций. Фирма IBM проектировала свою машину для решения экономических задач, что существенным образом определило ее архитектуру, не говоря уж о системном программном обеспечении.

В то время существовала классификация прикладных задач в соответствии со спецификой их проблемной области. Научные и инженерные задачи (решение уравнений) требовали больших затрат машинного времени на свое решение, а объем вводимой и выводимой информации был относительно небольшой. Альтернативой служили, так называемые, экономические задачи (обработка самых разнообразных таблиц), которые требовали больших объемов ввода-вывода, а затраты на их решение были относительно небольшие.

Примечание. Ориентация на научные расчеты отчетливо просматривается в архитектуре самого мощного отечественного компьютера БЭСМ-6, который имел сверхбыстродействующий центр (1миллион операций в секунду) и слабо развитую периферию ввода-вывода.

Назовем некоторые новаторские решения в системе IBN-360, которые определили ее в качестве своеобразного "законодателя мод" в компьютеростроении.

Байт (8 бит), как минимальная адресуемая ячейка оперативной памяти.

Байтовая структура оперативной памяти.

Каналы ввода-вывода, работающие параллельно с центральным процессором.

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

Операционная система нового типа, которая настраивается на работу с заданной конфигурацией оборудования.

Охарактеризуем кратко эти новаторские решения. Размер байта в 8 бит определился в результате "волевого" решения при ответе на вопрос: "Какую ячейку выделять для хранения одного символа?" Восьмиразрядный байт имеет 28 различных состояний, т.е. способен хранить 256 различных символов. В дальнейшем выяснилось, что хранение символов (с учетом языка, шрифта и т.д.) требует гораздо больше памяти, но размер байта в 8 двоичных разрядов, по-видимому, остался навсегда.

На самом деле каждый байт памяти имеет еще девятый бит (бит четности), скрытый от пользователя. Он используется для контроля правильности работы ячейки памяти. При записи двоичного кода в байт памяти считается контрольная сумма этого кода (сумма по модулю 2 восьми разрядов двоичного кода), которая записывается в бит четности. Таким образом, контрольная сумма кодового слова (девяти битов) всегда четная.

Пример. Число 10111101 содержит 6 '1' битов. Бит чётности будет 0, получаем кодовое слово 101111010.

Число 01110011 содержит 5 '1' битов. Бит чётности будет 1, получаем кодовое слово 011100111.

Число 00000000 не содержит '1' битов. Бит чётности будет 0, получаем кодовое слово 000000000.

При чтении из байта, вычисляется контрольная сумма его кодового слова байта. В случае четности кодового слова считается, что из байта читается то, что в нем было записано. Эта методика "засекает" сбой при чтении-записи в одном разряде. Вероятность сбоя, в двух разрядах одновременно, неизмеримо мала, и ей пренебрегают.

Байтовая структура памяти явилась следствием ориентации компьютера на обработку символьной информации. Такое решение создало проблему представления числовой информации. Для представления числа пришлось выделять несколько байт, что снижало быстродействие компьютера при решении математических задач. (Для вызова числа в арифметическое устройство требовалось выполнение несколько циклов обращения к оперативной памяти).

Мультиплексные и селекторные каналы являются по сути дела, специализированными машинами ввода вывода, которые работают параллельно с центральным вычислителем и не загружают его работой по вводу выводу данных (рис.79).

Рис. 79. Архитектура IBM-360

Различаются два типа каналов: селекторный и мультиплексный. Селекторный канал реализует обмен данными под управлением центрального процессора между основной памятью и высокоскоростными устройствами ввода-вывода, например, накопителями на дисках. С селекторным каналом в каждый момент времени может взаимодействовать одно устройство. Мультиплексный канал осуществляет одновременный обмен данными с несколькими низкоскоростными устройствами ввода-вывода, например, с устройствами ввода с перфокарт и вывода на буквопечатающее устройство. Мультиплексирование осуществляется за счет разделения времени работы канала между несколькими устройствами.

Так как к каналу может подключаться несколько контроллеров, а к каждому контроллеру – несколько устройств ввода-вывода, общее число таких устройств может варьироваться и быть достаточно большим.

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

Таким образом, все строки таблицы имеют единый формат, т.е. состоят из одинакового количества полей. Значение (содержимое) первого поля каждой строки однозначно идентифицирует эту строку и называется ключом строки. Например, табельный номер в таблице зарплат организации является ключом строки записи о работнике. Множество ключей первого столбца образуют множество, а сам столбец носит название ключевого столбца K (рис. 80).

Рис. 80. Таблица и последовательный файл

Последовательный файл размещается на магнитной ленте. Каждая строка таблицы образует запись последовательного файла, которая заканчивается меткой конца строки end. Последовательность записей представляет все строки таблицы и заканчивается меткой конца файла endf (рис.80). Несмотря на то, что первое поле каждой записи, по сути дела, является именем этой записи, прямой доступ по имени к записям файла не реализован.

Вводится понятие и реализация указателя текущей записи. Последовательный доступ к конкретной записи файла осуществляется посредством следующих основных команд управления последовательным файлом:

установить указатель текущей записи на первую запись;

сделать текущей записью следующую запись;

скопировать текущую запись в рабочую область оперативной памяти.

поместить новую запись в конец файла.

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

Операционная система IBM/360 с внешней точки зрения являет собой библиотеку программных модулей, из которых может быть собран тот или иной вариант операционной системы. С целью экономии оперативной памяти, постоянно работающие модули системы (супервизоры) помещаются в оперативной памяти и образуют ядро операционной системы. Остальные модули располагаются на внешних накопителях и вызываются в оперативную память по мере необходимости. Задание на генерацию системы описывает реальную конфигурацию оборудования и системных программ для управления которыми создается операционная система. После выполнения программы генерации создается индивидуальная операционная система, точнее ее ядро и заказанный набор трансляторов и сервисных программ.

Рис. 81. IBM-360