Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Конспек по ОС подготоака к экзаменам.doc
Скачиваний:
90
Добавлен:
27.10.2018
Размер:
1.27 Mб
Скачать
  1. Программные прерывания. Супервизор прерываний в ос.

Ответ:

Прерывания представляют собой механизм, позволяющий координировать параллельное функционирование отдельных устройств компьютера и реагировать на особые состояния процесса.

Прерывание – принудительная передача управления от выполняющей программы к системе, а через нее к соот. программе обработки прерывания.

Прерывания бывают: внутренние, внешние, программные

Программные прерывания – это прерывание происходит по соответствующей команде программной обработки прерывания. Этот механизм был введен для того, чтобы осуществить переключения на системные программные модули и обеспечить автоматическое переключение процессора в привилегированный режим с возможностью выполнения любых команд.

Супервизор – программа, многозадачной ОС, обеспечивающая наилучшее использование ресурсов ЭВМ, при одновременном выполнении нескольких задач.

Прерывание реализуется с помощью супервизора прерывания по следующим дисциплинам обслуживания управления:

1) Относительный приоритет;

2) Абсолютный приоритет;

3) По принципу стека.

Работа супервизора прерываний в ОС.

  • При появлении запроса на прерывание система прерываний идентифицирует сигнал и, если прерывания разрешены, управление передается па соответствующую подпрограмму обработки.

  • В подпрограмме обработки на время выполнения центральной секции прерывания разрешены. На время работы заключительной секции подпрограммы обработки система прерываний должна быть отключена и после восстановления контекста вновь включена. Поскольку эти действия необходимо выполнять практически в каждой подпрограмме обработки прерываний, во многих операционных системах первые секции подпрограмм обработки прерываний выделяются в специальный системный программный модуль, называемый супервизором прерываний.

  • Супервизор прерываний прежде всего сохраняет в дескрипторе текущей задачи рабочие регистры процесса.

  • Определяет ту подпрограмму, которая должна выполнить действия, связанные с обслуживанием текущего запроса на прерывание.

  • Перед тем как передать управление этой подпрограмме, супервизор прерываний устанавливает необходимый режим обработки прерывания.

  • После выполнения подпрограммы обработки прерывания управление вновь передается супервизору, на этот раз уже на тот модуль, который занимается диспетчеризацией задач.

  • Диспетчер задач, в свою очередь, в соответствии с принятым режимом распределения процессорного времени восстановит контекст задачи, которой будет решено выделить процессор.

  1. Функции ос по управление памятью.

Ответ:

Под памятью (memory) здесь подразумевается оперативная память компьюте­ра. В отличие от памяти жесткого диска, которую называют внешней памятью (storage), оперативной памяти для сохранения информации требуется постоян­ное электропитание.

Память является важнейшим ресурсом, требующим тщательного управления со стороны мультипрограммной операционной системы. Особая роль памяти объ­ясняется тем, что процессор может выполнять инструкции программы только в том случае, если они находятся в памяти. Память распределяется как между мо­дулями прикладных программ, так и между модулями самой операционной сис­темы.

С появлением мультипрограммирования перед ОС были поставлены новые задачи, связанные с распределением имеющейся памяти между несколькими одновременно выполняющимися программами.

Функциями ОС по управлению памятью в мультипрограммной системе явля­ются:

□ отслеживание свободной и занятой памяти;

Q выделение памяти процессам и освобождение памяти по завершении процес­сов;

  • вытеснение кодов и данных процессов из оперативной памяти на диск (пол­ное или частичное), когда размеры основной памяти не достаточны для раз­мещения в ней всех процессов, и возвращение их в оперативную память, ко­гда в ней освобождается место;

  • настройка адресов программы на конкретную область физической памяти.

  • отслеживание свободной и занятой памяти;

  • выделение памяти процессам и освобождение памяти по завершении процес­сов;

  • вытеснение кодов и данных процессов из оперативной памяти на диск (пол­ное или частичное), когда размеры основной памяти не достаточны для раз­мещения в ней всех процессов, и возвращение их в оперативную память, ко­гда в ней освобождается место;

  • настройка адресов программы на конкретную область физической памяти.

Помимо первоначального выделения памяти процессам при их создании ОС должна также заниматься динамическим распределением памяти, то есть выпол­нять запросы приложений на выделение им дополнительной памяти во время выполнения. После того как приложение перестает нуждаться в дополнительной памяти, оно может возвратить ее системе.

Во время работы операционной системы ей часто приходится создавать новые служебные информационные структуры, такие как описатели процессов и пото­ков, различные таблицы распределения ресурсов, буферы, используемые процес­сами для обмена данными, синхронизирующие объекты и т. п. Все эти систем­ные объекты требуют памяти. В некоторых ОС заранее (во время установки) резервируется некоторый фиксированный объем памяти для системных нужд. В других же ОС используется более гибкий подход, при котором память для системных целей выделяется динамически. В таком случае разные подсистемы ОС при создании своих таблиц, объектов, структур и т. п. обращаются к подсис­теме управления памятью с запросами.

Защита памяти — это еще одна важная задача операционной системы, которая состоит в том, чтобы не позволить выполняемому процессу записывать или чи­тать данные из памяти, назначенной другому процессу. Эта функция, как прави­ло, реализуется программными модулями ОС в тесном взаимодействии с аппа­ратными средствами.