Мультипрограммный режим работы микропроцессора.ppt
- Количество слайдов: 12
Мультипрограммный режим работы микропроцессора Цель лекции: рассмотреть принципы организации мультипрограммного режима работы и аппаратные средства МП, используемые для этих целей.
Многозадачность • Способ организации работы системы, при котором в памяти одновременно содержатся программы и данные для выполнения нескольких задач. Состояния задачи Старт Счет Ожидание Готовность Окончание Старт – подготавливаются условия для первого выполнения на процессоре. Счет – исполнение задачи в процессоре. Ожидание – задача не исполняется по причине занятости ресурса. Готовность – задача имеет все ресурсы, кроме процессора. Окончание – нормальное или аварийное завершение задачи, после которого никакие ресурсы ей не предоставляются.
Основные черты мультипрограммного режима • В оперативной памяти находятся несколько программ в разных состояниях. • Время работы процессора разделяется между программами, находящимися в состоянии готовности. • Параллельно с работой процессора программы в режиме разделения времени используют ресурсы системы.
Обеспечение мультипрограммного режима Аппаратное Программное Контроллеры внешних устройств, система прерываний, аппаратные средства защиты программ и данных. Операционная система, драйверы внешних устройств, обработка прерываний.
Оценки эффективности мультипрограммного режима Коэффициент мультипрограм мирования Коэффициент загрузки устройства Время выполнения программы Пропускная способность Длина очереди к устройству
Пример Задача CPU IN CPU OUT 1 2 1 4 2 2 1 3 3 4 3 3 1 4 2 2 4 программы, коэффициент мультипрограммирования – 2, Ресурс 3 устройства: CPU, IN, OUT. t Ready – очередь к процессору. Wait – очередь к внешним устройствам.
Характеристика МП при различных коэффициентах мультипрограммирования
Средства МП для переключения выполнения задач • Сегмент состояния задачи TSS. • Доступ к TSS разрешен исключительно процессору, ни одна программа с самым высоким уровнем привилегий обращаться к TSS не может. • Для работы с TSS служит регистр задачи TR, в который заносится селектор дескриптора TSS. • Дескрипторы сегментов состояния задач хранятся только в глобальной таблице дескрипторов GDT. • Для переключения задач используется шлюз задачи.
Сегмент состояния задачи Обязательная часть 104 байт – содержит необходимую информацию для рестарта задачи Дополнительная часть – содержит информацию для операционной системы (имя задачи, комментарий) и битовую карту вводавывода БКВВ, определяющую список устройств, к которым разрешено обращение данной задачи. Поле селектора возврата – это селектор. TSS предыдущей задачи Поля с * не меняют своего состояния, что обеспечивает защиту задач более высоким уровнем привилегий.
Дескриптор сегмента состояния задачи TSS • Имеет структуру дескриптора обычного сегмента и обладает двумя отличиями. 1. В поле предела указывается длина не менее 104 байт. В противном случае происходит прерывание. 2. Байт доступа имеет следующий вид: 7 6 P 5 DPL 4 3 0 M 2 0 1 0 B 1 B – бит занятости, устанавливается 1, если задача активирована. Установка бита производится командами JMP или CALL. DPL – не означает уровень привилегий самой задачи, а определяет какие программы могут обращаться к задаче. М – мультипрограммный режим при М=0. P – бит присутствия в ОЗУ.
Механизм прямого переключения задач Теневой регистр КОМАНДА переключения задачи JMPCALL Селектор Смещение 6 1 В CS рег. Память GDT Дескриптор TSS 3 Абаз, TSS 2 TSS вых. 2 5 TR регистр задач 4 4 Регистры МП TSS вх. Возврат из задачи по команде IRET через селектор возврата TSS
Порядок переключения 1. Если дескриптор определяется как дескриптор TSS и новая задача не занята В=0, запускается механизм переключения. 2. В теневом регистре регистра задач TR к этому моменту содержится дескриптор TSS выполняемой задачи. Его поле адреса указывает на область памяти, где должно быть сохранено состояние текущей задачи. МП записывает в этот сегмент необходимую информацию. 3. Дескриптор TSS новой задачи переписывается из таблицы GDT в теневой регистра задач TR. Этот дескриптор определяет положение в памяти сегмента состояния новой задачи. 4. Информация о новой задаче переписывается из TSS в регистры МП. 5. Если команда, вызвавшая переключение задачи, предусматривает возврат к старой, то в поле селектора возврата TSS входящей задачи записывается содержимое регистра TR снимаемой с обработки задачи. И устанавливается в регистре состояния бит NT=1(вложенная задача). 6. В регистр TR из второго поля команды заносится селектор дескриптора TSS новой задачи.
Мультипрограммный режим работы микропроцессора.ppt