МУЛЬТИПРОГРАММИРОВАНИЕ
многопрограммная
работ а, метод одновременного выполнения на ЦВМ нескольких программ,
относящихся
к различным задачам. Повышение быстродействия процессоров, увеличение объёмов
памяти и состава разнообразных устройств ввода - вывода информации обусловили
неравномерную загрузку отд. устройств ЦВМ. Напр., арифметич. устройство
не работает, пока не закончится обмен информацией оперативной памяти с
памятью на магнитных лентах или с устройством ввода - вывода данных. Когда
работает процессор, простаивают внешние устройства, ожидая окончания обработки
данных или получения информации для вывода. Кроме того, неравномерность
загрузки устройств определяется и характером решаемых задач, напр, одни
задачи требуют ввода большого числа данных и малого объёма вычислений,
другие - наоборот. M. обеспечивает максимальную загрузку отд. устройств
и совмещение их работы во времени, что повышает общую производительность
ЦВМ.
При многопрограммной работе в памяти
ЦВМ одновременно находятся программы неск. задач. Если возникает задержка
при выполнении одной из программ, напр, из-за поиска на магнитной ленте
участка, где хранятся исходные данные, то выполнение её прерывается и осуществляется
переход к диспетчер-программе, к-рая передаёт управление следующей
программе. Вся информация, необходимая для продолжения выполнения прерванной
программы, сохраняется в памяти ЦВМ. Новая программа будет выполняться
до тех пор, пока не потребуется обращение к одному из внешних устройств
или не будет устранена причина задержки ранее выполнявшейся программы.
Переключение с программы на программу может производиться автоматически
или оператором с пульта управления ЦВМ, когда израсходовано отведённое
для решения задачи время, при возникновении ошибок в вычислениях или обнаружении
неисправностей в ЦВМ.
Различают два осн. режима многопрограммной
работы ЦВМ: пакетной (групповой) обработки и разделения времени. Пакетная
обработка заключается в комплектовании пакетов задач по мере поступления
заявок от потребителей и в последовательной обработке каждого из этих пакетов
так, чтобы обеспечить максимальную загрузку устройств. Пакет рекомендуется
комплектовать из задач с различными объёмами информации и частотами обмена
ею между устройствами ЦВМ. Программы задач вводят во внешнюю память и по
очереди выполняют. При вынужденных прерываниях текущей программы ЦВМ переключается
на выполнение очередной программы пакета, а прерванная программа после
устранения причины прерывания снова ставится в очередь. При пакетной обработке
учитываются приоритет поступивших заявок, момент их поступления и др. Режим
пакетной обработки увеличивает производительность ЦВМ, снижает до минимума
простои оборудования и является типичным режимом использования ЦВМ в вычислительных
центрах. Однако пакетная обработка малоэффективна с точки зрения потребителей,
т. к., не работая непосредственно с ЦВМ, они не могут быстро обнаруживать
и исправлять ошибки в своих программах. Сроки получения результатов также
возрастают.
Режим разделения времени создаёт у
каждого потребителя впечатление, что ЦВМ обслуживает только его одного.
Каждый потребитель снабжается устройетвом для ввода - вывода данных (типа
"дисплей") или др. оборудованием, обеспечивающим взаимодействие потребителя
с ЦВМ, в т. ч. и по каналам связи. Периодически каждый потребитель в отведённое
для него машинное время решает свою задачу, изучает полученные результаты
и готовит следующее задание для ЦВМ. Обычно потребитель пользуется общей
библиотекой программ, но может иметь и частный архив. При пользовании общей
библиотекой диспетчер-программа планирует и осуществляет вынужденные прерывания
программ в зависимости от приоритета потребителя и отведённого ему машинного
времени, а также от характера решаемой задачи. Режим разделения времени
позволяет потребителю вести эффективный диалог с машиной, что наиболее
удобно в системах управления технологич. процессами, в автоматизированных
системах управления (АСУ) предприятиями и отраслями нар. х-ва, в информационно-справочных
службах, в мощных вычислительных центрах и т. д. В свободное от обслуживания
потребителей время ЦВМ могут проводить пакетную обработку данных.
M. обеспечивается аппаратными и программными
средствами. К аппаратным средствам относятся защита памяти и организация
прерываний. К программным средствам относятся диспетчер-программы и проблемно-ориентированные
языки программирования, учитывающие особенности M. Характерно M. для ряда
современных ЦВМ (70-е гг. 20 в.): в СССР - БЭСМ-6, "Минск-32", "Урал-14",
ЕС-1020; в США - ИБМ-360, КДК-7600.
Лит.: Современное программирование.
Мультипрограммирование и разделение времени. Сб. ст., пер. с англ., M.,
1970; П а ш-к е е в С. Д., Основы мультипрограммирования для специализированных
вычислительных систем, M., 1972; Поспелов Д. А., Введение в теорию вычислительных
систем, M., 1972; Бертэн Ж., Риту M., P у ж и е Ж., Работа ЭВМ с разделением
времени, пер. с франц., 2 изд., M., 1972.
А. В. Гусев.
А Б В Г Д Е Ё Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я