Показатели производительности алгоритмов распараллеливания. Технология гиперпоточности. Многозадачные и многопоточные системы. Суперскалярные вычисления. Группа : tt-13-20p


Download 341.47 Kb.
bet5/9
Sana17.06.2023
Hajmi341.47 Kb.
#1549821
1   2   3   4   5   6   7   8   9
Bog'liq
4-Самостоятельная работа

Вытесняющая многозадачность.
Некоторый прообраз многозадачности, реализованной аппаратно, можно вывести из процессоров, имеющих систему прерываний. Обобщенно прерываниями микропроцессора называют реакцию на особые случаи, которая заключается в передаче управления от текущей программы специальной процедуре обслуживания. К таким требующим обработки случаям относится 74 появление сигналов от аппаратных компонентов (клавиатуры, динамически обновляемой памяти, видеокарты, таймера) о важных внешних событиях и сообщения внутренних блоков микропроцессора об ошибках или затруднениях в работе программы (например, деление на ноль, запрещенный доступ к памяти). Часто под прерываниями узко понимают только запросы первого типа, а запросы второго типа называют исключениями.
Схема обработки прерывания следующая:
- работа основной программы пользователя;
- возникновение прерывания;
- сохранение параметров работающей программы (регистров процессора);
- переход по адресу процедуры обработки прерывания;
- выполнение процедуры обработки прерывания;
- восстановление параметров работающей программы;
- переход по адресу следующей команды основной программы.
Прерывания с более высоким приоритетом, в свою очередь, могут прервать обработку текущего прерывания и т.д.
Прерывания использовались для написания так называемых резидентных (terminate-and-stay-resident, TSR) программ. Данные программы позволяли писать драйверы клавиатуры, спулеры печати, копировальщики экрана, которые работали в фоновом режиме. Но порядок работы процессора оставался прежним – в конкретный момент времени процессор выполнял только одну программу, и только эта программа могла вернуть управление той, которую прервала. И, если происходил сбой в работе резидентной программы или при обработке прерывания, компьютер "зависал" и не давал возможности вернутся к прерванной программе.
Другой очевидный недостаток работы по прерываниям, заключается в том, что порядок смены программных участков аналогичен использованию процедур и функций – то есть четкая схема порядка следования программных элементов – из прерывания можно было вернутся только в ту программу, во время которой произошло прерывания, и это невозможно сделать до окончания всех действий прерывания.
Другим примером вытесняющей многозадачности являются многопользовательские операционные системы, которые используют системный таймер для периодического прерывания одной задачи и запуска другой. Таким образом, новая задача как бы вытесняет выполняемую.



Download 341.47 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8   9




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling