Организация работы мультипрограммных ЭВМ
Основные характеристики мультипрограммного режима работы ЭВМ
Мультипрограммным режимом работы (многозадачностью) называется такой способ организации работы системы, при котором в ее памяти одновременно содержатся программы и данные для выполнения нескольких процессов обработки информации (задач) [4]. При этом должна обеспечиваться взаимная защита программ и данных, относящихся к различным задачам, а также возможность перехода от выполнения одной задачи к другой (переключение задач).
Мультипрограммирование позволяет повысить производительность работы ЭВМ за счет более эффективного использования ее ресурсов.
Базовыми понятиями мультипрограммного режима функционирования ЭВМ являются процесс и ресурс [12]
В строгом понимании процесс - это система действий, реализующая определенную функцию в вычислительной системе и оформленная так, что управляющая программа вычислительной системы может перераспределять ресурсы этой системы в целях обеспечения мультипрограммирования. То есть процесс - это некоторая деятельность, связанная с исполнением программы на процессоре.
Процесс может находиться в следующих состояниях:
- порождение - подготавливаются условия для первого исполнения на процессоре;
- активное состояние - исполнение программы на центральном процессоре;
- готовность ( Ready ) - программа не исполняется, но для исполнения предоставлены все необходимые в текущий момент ресурсы, кроме центрального процессора;
- исполнение программы на каком-либо другом устройстве компьютера, например, устройстве ввода/вывода, имеющем собственные средства управления;
- ожидание ( Wait ) - программа не исполняется по причине занятости какого-либо ресурса ;
- окончание - нормальное или аварийное завершение исполнения программы, после которого процессор и другие ресурсы ей не предоставляются.
Время между порождением и окончанием процесса называется интервалом существования процесса.
Понятие ресурса строго не определено. Будем считать, что всякий потребляемый объект (независимо от формы его существования), обладающий некоторой практической ценностью для потребителя, является ресурсом [ 12 ] .
Ресурсы различаются по запасу выделяемых единиц ресурса и бывают в этом смысле исчерпаемыми и неисчерпаемыми. К исчерпаемым ресурсам относится, например, центральный процессор. В качестве неисчерпаемого ресурса можно представить, например, память, выделяемую программе, если рассматривать ее как совокупность всех имеющихся в компьютере запоминающих устройств. В то же время, запоминающее устройство, состоящее только из оперативной памяти с единственным трактом записи/считывания, представляет собой исчерпаемый ресурс.
Исчерпаемость ресурса, как правило, приводит к конфликтам среди потребителей этого ресурса. Для регулирования конфликтов ресурсы должны распределяться между потребителями по каким-то правилам, в наибольшей степени их удовлетворяющим.
Основные черты мультипрограммного режима:
- в оперативной памяти находятся несколько пользовательских программ в состояниях активности, ожидания или готовности;
- время работы процессора разделяется между программами, находящимися в памяти в состоянии готовности;
- параллельно с работой процессора происходит подготовка и обмен с несколькими устройствами ввода-вывода.
Мультипрограммирование предназначено для повышения пропускной способности вычислительной системы путем более равномерной и полной загрузки всего ее оборудования, в первую очередь процессора. При этом скорость работы самого процессора и номинальная производительность ЭВМ не зависят от мультипрограммирования.
Мультипрограммный режим имеет в ЭВМ аппаратную и программную поддержку:
-
аппаратная:
-
программная:
- мультизадачная операционная система (ОС);
- системные программы, управляющие работой устройств ввода-вывода и специализированных средств вычислительной системы.
Управляющая программа (ОС), реализуя мультипрограммный режим, должна распределять (в том числе динамически) ресурсы системы (время процессора, оперативную и внешнюю память, устройства ввода-вывода и т.д.) между параллельно выполняемыми программами, чтобы обеспечить увеличение пропускной способности компьютера с учетом ограничений на ресурсы и требований по срочности выполнения отдельных программ.
Производительность мультипрограммной ЭВМ оценивается количеством задач, выполненных в единицу времени ( пропускная способность ) и временем выполнения каждой программы Тi.
При анализе работы ЭВМ важно определить степень использования ее ресурсов. Для этого широко применяются следующие показатели:
- kq - коэффициент загрузки q-го устройства;
- kq=Tq/T, где Tq - время занятости устройства q за общее время T работы ЭВМ;
- - средняя длина очереди запросов к устройству q, где Lqi - длина очереди к устройству q на интервале времени и
Пусть работа некоторого устройства q характеризуется диаграммой, приведенной на рис. 12.1.
Тогда рассмотренные выше показатели работы этого устройства будут следующими:
- kq=7/10
- Lq=(0*2 + 1*1 + 0*4 + 1*1 + 1*2 + 1*1)/10 = 5/10
Помимо средней длины очереди важна также и динамика изменения текущей длины очереди.
По значениям kq, Lq и динамике изменения Lq можно определить наиболее дефицитный ресурс в системе, ее "узкое место".
Устранить "узкие места" можно или увеличением производительности соответствующего ресурса, или выбором такого набора задач, который обеспечивал бы более равномерное использование всех ресурсов (например, одни задачи более активно используют процессор (счетные задачи), другие - жесткий диск (работа с базами данных), третьи - устройства ввода-вывода).