Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Системное ПО.docx
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
89.38 Кб
Скачать

Тема 8. Организация вычислительного процесса

8.1. Организация прерываний.

Во время работы в центральный процессор поступает большое количество различных сигналов. Сигналы, которые, выполняемые в ЦП, способны воспринять, обработать и учесть, составляют поле зрения центрально процессора. Для того чтобы работающий ЦП мог реагировать на события, происходящие вне поля зрения, тех, что он не ожидает, существует система прерываний. При отсутствии таковой системы все заслуживающие внимания события должны находиться в поле зрения процессора, что усложняет программы и требует их избыточности. Кроме того, поскольку момент наступления события заранее неизвестен, процессор в ожидании какого либо события может находиться в простое длительное время. Еще одним важным применением механизма прерываний является корректная обработка неисправностей и нештатных ситуаций. При возникновении неисправностей режим прерываний позволяет организовать работу по диагностике и автоматическому восстановлению, прерывая выполнение основной работы для сохранения полученных результатов. Без режима прерываний система могла бы обратить внимание на наличие неисправностей только после окончания выполнения работы, и получения неправильного результата. Таким образом, система прерываний позволяет ЦП выполнять основную работу, не отвлекаясь на проверку состояния сложных систем при отсутствии такой необходимости, или прервать выполняемую работу, и переключиться на анализ возникшей нештатной ситуации сразу после ее появления. Задачей аппаратных средств обработки прерывания является приостановка выполнения одной программы, и передача управления подпрограмме обработки прерывания. Действие, выполняемое при этом процессором, как правило, те же, что и при обращении к обычной подпрограмме. Однако при обработке прерывания действия инициируются командой, поступающей в виде управляющего сигнала от внешнего устройства, который вызывает запрос на прерывание или требование прерывания. Прерывания программы по требованию внешнего устройства не должно оказывать на нее никакого влияния, кроме увеличения времени ее выполнения. Информацию, содержащуюся в регистрах процессора в момент прерывания, необходимо сохранить для последующего возобновления прерванной программы. Сохранение содержимого счетчика команд и регистра состояния процесса выполняется аппаратными средствами, а сохранение других регистров – обработчиком прерываний (программой-обработчиком прерываний).

8.2. Распределение ресурсов в ОС.

Обеспечение эффективного и бесконфликтного способа распределения ресурсов системы между пользователем – одна из основных функция любой ОС. Под ресурсом понимается любой потребляемый объект вне зависимости от формы его существования, обладающий некоторой практической ценностью для потребителя. Ресурсы различаются по запасу выделяемых единиц, и бывают в этом смысл исчерпаемые и неисчерпаемые. Для решения конфликтов, связанных с исчерпаемыми ресурсами их распределение между пользователями должно проводиться по каким-либо правилам, в наибольшей степени удовлетворяющих всех. Будем считать, что потребителями вычислительной системы являются процессы, тогда ресурсом является средство вычислительной системы, которое может быть выделено процессу на определенный интервал времени.

8.2.1. Свойства и классификация ресурсов.

Одним из важнейшим понятий, связанных с ресурсом, является понятие реальности существования. С точки зрения этого понятия все ресурсы разделяют на физические и виртуальные. Под физическим понимают ресурс, который существует в реальности, и перераспределение ее между пользователями обладают всеми присущими ему физическими характеристиками. Виртуальный ресурс - некая модель физического ресурса. Виртуальный ресурс не появляется в том виде, в котором он проявляет себя пользователю. На основе физического ресурса можно построить несколько виртуальных. Это позволяет экономичнее использовать физический ресурс, а также увеличить гибкость политики распределения ресурсов, исключая в большинстве случаев конфликтной ситуации. Если физический ресурс допускает виртуализацию, то он называется эластичным, если нет - жестким. Также при распределении ресурсов необходимо учитывать их степень активности. Активный ресурс способен выполнять действия по отношению к другим ресурсам, например, ЦП. Пассивный ресурс, соответственно не способен (область памяти). Динамика ресурсов в отношении процессов позволяет выделить постоянные ресурсы, существующие до порождения процесса и существующие на всем протяжении его существования, и временные ресурсы, появляющиеся динамически в течение жизни процесса.

8.2.2. Действие над ресурсами.

При централизованном распределении ресурсов процесс-пользователь выполняет 3 действия:

1)Запрос

2)Использование

3)Освобождение

Природа ресурса, или используемые правила распределения, обуславливаются параллельной или последовательной схемой его использования. Последовательная схема предполагает, что в отношении некоторого ресурса допустимо строго последовательная во времени выполнение цепочек «запрос-исполнение-освобождение» каждым процессом-потребителем. Последовательно используемый ресурс, разделяемый некоторыми параллельными процессами, называют критическим ресурсом (пример - буферный кул). Параллельная схема предполагает одновременное использование одного ресурса. Такое использование не должно вносить никаких либо ошибок в логику каждого из процессов. Примером параллельно используемого ресурса может служить массив данных, находящийся в области оперативной памяти и допускающий только чтения.

8.3. Организация и управления памятью.

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

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

2)Выделение памяти процессом и освобождение ее;

3)Перенос процессов из RAM на диск в случае нехватки RAM

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

8.3.1. Типы адресов.