![]() КАТЕГОРИИ:
АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника
|
Мультипрограммирование в системах реального времениКритерий эффективности – способность выдерживать заранее заданные интервалы времени между запуском программы и получением результата. Время называется временим реакции системы, а соответственно свойства системы реактивностью В системах реального времени мультипрограммная смесь представляет собой фиксированный набор заранее разработанных программ, а выбор программы на выполнение осуществляется по прерываниям (исходя из текущего состояния объекта) или в соответствии с расписанием плановых работ. Способность аппаратуры компьютера и ОС к быстрому ответу зависит в основном от скорости переключения с одной задачи на другую и, в частности, от скорости обработки сигналов прерывания. Если при возникновении прерывания процессор должен опросить сотни потенциальных источников прерывания, то реакция системы будет слишком медленной. Время обработки прерывания в системах реального времени часто определяет требования к классу процессора даже при небольшой его загрузке. В системах реального времени не стремятся максимально загружать все устройства, наоборот, при проектировании программного управляющего комплекса обычно закладывается некоторый «запас» вычислительной мощности на случай пиковой нагрузки. Статистические аргументы о низкой вероятности возникновения пиковой нагрузки, основанные на том, что вероятность одновременного возникновения большого количества независимых событий очень мала, не применимы ко многим ситуациям в системах управления. 3. Мультипроцессорная обработка. Виды мультиипроцессорной обработки. Мультипроцессорная обработка — это способ организации вычислительного процесса в системах с несколькими процессорами, при котором несколько задач (процессов, потоков) могут одновременно выполняться на разных процессорах системы. Симметричная Сточки зрения архитектуры - Архитектура мультипроцессорной системы предлагает однородность всех процессоров и единообразие включения процессоров в общую схему системы. Масштабируемость по вертикале. Несимметрично (асимметричная) Сточки зрения архитектуры - Разные процессоры могут отличаться как своими характеристиками (производительностью надёжностью, системой команд и т.д. в плоть до модели процессора), так и функциональной ролью, которая получается им в системе. Масштабируемость по горизонтали Симметричная Сточки зрения вычислительного процесса - Ведущий-ведомый. Процессоры работают с общими устройствами и разделяемой основной памятью. ОС, общей для всех процессоров Асимметричная Сточки зрения вычислительного процесса - Все процессоры равноправно участвуют и управлении вычислительным процессом, и в выполнении прикладных задач. ОС работает исключительно на одном процессоре функции управления централизованы, то такая система по сложности схожа с ос однопроцессорной системы. 4. Какова роль прерываний при мультипроцессорнойобработки. Классы прерываний, функции механизма прерывания. Прерывание – принудительная передача управления от выполняемой программы к системе, происходящая при возникновении определенного события. Основная цель введения прерываний – реализация асинхронного режима функционирования и распараллеливание работы отдельных устройств вычислительного компонента. В зависимости от источника прерывания делятся на: 1) Аппаратные – события от периферийных устройств, возникающие вследствие подачи некоторой аппаратурой электрического сигнала. Внешние – прерывания, инициированные периферийными устройствами, являются асинхронными по отношению к потоку инструкций прерываемой программы. Внутренние – происходят в микропроцессе, возникают непосредственно в ходе выполнения, тактов команды. 2) программные – возникают (синхронно) при исполнении особой команды процессора, которая имитирует прерывание. Главные функции механизма прерываний: 1) распознавание или классификация прерываний. 2) передача управления соответствующему обработчику прерываний 3) корректное возвращение к прерванной программе. 5. "оброботчик прерывания":функции. Обработчик прерываний (или процедура обслуживания прерываний) — специальная процедура, вызываемая по прерыванию для выполнения его обработки. Обработчики прерываний могут выполнять множество функций, которые зависят от причины, которая вызвала прерывание. Обработчик прерываний — это низкоуровневый эквивалент обработчика событий. Эти обработчики вызываются либо по аппаратному прерыванию, либо соответствующей инструкцией в программе, и соответственно обычно предназначены для взаимодействия с устройствами или для осуществления вызова функций операционной системы. Механизм обработки прерываний независимо от архитектуры вычислительной системы: Шаг 1: Установление факты прерывания (прием сигнала запроса на прерывание) и идентификация прерывания (в ОС идентификация иногда осуществляется повторно, на шаге 4). Шаг 2: Запоминание состояния прерванного процесса вычислений. Состояние процесса выполнения программы определяется, прежде всего, значением счетчика команд (адресом следующей команды), содержимым регистром процессов, и может включать также спецификацию режима и другую информацию. Шаг 3: Управление аппаратного передается на подпрограмму обработки прерывания. В простейшем случае в счетчик команд заносится начальный адрес подпрограммы обработки прерываний, а в соответствующие регистры – информация из слова состояния. Шаг 4: Сохранение информации о прерванной программе, которую не удалось спасти на шаге 2 с помощью аппаратуры. В некоторых процессах предусматривается запоминание довольно большого объема информации о состоянии прерванных вычислений. Шаг 5: Собственно, выполнение программы, связанной с обработкой прерывания. Эта работа может быть выполнена той же подпрограммой, на которую было передано управление на шаге 3, но в ОС достаточно часто она реализуется путем последующего вызова соответствующей подпрограммы. Шаг 6: Восстановление информации, относящейся к прерванному процессу (этап обратный шагу 4). Шаг 7: Возврат на прерванную программу. 6. суперизор прерываний: место в общей схеме оброботки прерываний."Приоретет прерывания" Поскольку при каждой обработки прерывания необходимо выполнять действия, связанные с сохранением контекста задачи, сменой режимов работы прерываний (маскированием), определением адреса подпрограммы, на которую следует передать управление, в ОС эти действия реализованы в специальном системном модуле – супервизоре прерываний.
|