Автор работы: Пользователь скрыл имя, 28 Января 2013 в 21:29, контрольная работа
1вопрос Основные функции ОС
2вопрос Классификация ОС
3вопрос Управление процессами
4вопрос Макроядерные ОС
5вопрос Микроядерные ОС
В информационные структуры процесса часто включаются вспомогательные данные, характеризующие историю пребывания процесса в системе (например, какую долю времени процесс потратил на операции ввода-вывода, а какую на вычисления), его текущее состояние (активное или заблокированное), степень привилегированности процесса (значение приоритета). Данные такого рода могут учитываться операционной системой при принятии решения о предоставлении ресурсов для выполнения процесса.
В мультипрограммной операционной системе одновременно может существовать несколько процессов. Часть процессов порождается по инициативе пользователей и их приложений, такие процессы обычно называют пользовательскими.
Поскольку процессы часто одновременно претендуют на одни и те же ресурсы, то в обязанности ОС входит поддержание очередей заявок процессов на ресурсы, например, очереди к процессору, к принтеру, к последовательному порту.
Важной задачей операционной системы является защита ресурсов, выделенных данному процессу, от остальных процессов. Одним из наиболее тщательно защищаемых ресурсов процесса являются области оперативной памяти, в которой хранятся текст программ и данные. Совокупность всех областей оперативной памяти, выделенных операционной системой процессу, называется его адресным пространством. Говорят, что каждый процесс работает в своем адресном пространстве, имея в виду защиту адресных пространств, осуществляемую ОС. Защищаются и другие типы ресурсов, такие как файлы, внешние устройства и т. д. Операционная система может не только защищать ресурсы, выделенные одному процессу, но и организовывать их совместное использование, например, разрешать доступ к некоторой области памяти нескольким процессам.
На протяжении времени
существования процесса его выполнение
может быть многократно прервано
и продолжено. Для того чтобы возобновить
выполнение процесса, необходимо восстановить
состояние его операционной среды.
Состояние операционной среды идентифицируется
состоянием регистров и программного
счетчика, режимом работы процессора,
указателями на открытые файлы, информацией
о незавершенных операциях
Операционная система берет на себя также функции синхронизации процессов, позволяющие процессу приостанавливать свое выполнение до наступления какого-либо события в системе, например завершения операции ввода-вывода, осуществляемой по его запросу операционной системой.
В операционной системе нет
однозначного соответствия между понятиями
процесс и программа. Одна и та
же программа может породить несколько
параллельно выполняемых
Для описания работы компьютера полезно представить его работу в виде нескольких параллельных функционирующих процессов, которые периодически взаимодействуют друг с другом и обмениваются некоторыми данными. Так как операционная система защищает ресурсы процессов и не позволяет одному процессу читать или записывать данные из памяти другого процесса, то для оперативного взаимодействия процессов ОС должна предоставлять особые средства, которые называют средствами межпроцессного взаимодействия.
Таким образом, подсистема управления процессами планирует выполнение процессов, то есть распределяет процессорное время между несколькими одновременно существующими процессами, занимается созданием и уничтожением процессов, обеспечивает процессы необходимыми ресурсами, поддерживает синхронизацию процессов, а также обеспечивает взаимодействие процессов между собой.
Прерывание - это принудительная передача управления от выполняемой программы к системе, происходящая при возникновении определенного события.
В ОС существуют специальная подсистема (модуль) обработки прерываний, которая координирует параллельную работу устройств вычислительной системы и реагирует на особые состояния, возникающие при работе процессора. Основная цель введения прерываний – организация независимой и параллельной работы устройств ПК.
Механизм прерываний реализуется аппаратно-программными средствами. Структуры систем прерывания (в зависимости от аппаратной архитектуры) могут быть самыми разными, но все они имеют одну общую особенность - прерывание обязательно влечет за собой изменение порядка выполнения команд процессором.
Упрощенно механизм обработки прерываний независимо от архитектуры вычислительной системы можно представить в виде следующей схемы (рисунок 17).
После обработки прерывания, необходимо продолжить выполнение ранее прерванной программы. Такой возврат возможен благодаря тому, что в специальной таблице (стеке) предварительно сохраняется адрес команды, которую нужно было бы выполнить при отсутствии прерывания.
Главные функции механизма прерываний это:
Прерывание
Отключение прерываний, сохранение контекста прерванной программы, установка режима работы системы прерываний
Собственно тело
программы обработки прерывания
Восстановление контекста
Рисунок 17. Обработка прерывания
Прерывания, возникающие при работе вычислительной системы, можно разделить на два основных класса: внешние (асинхронные, т.к. они не связаны напрямую с работой процессора. Их можно считать аппаратными) и внутренниe (синхронные).
К внешним прерываниям можно отнести, например:
Внутренние прерывания вызываются событиями, которые связаны с работой процессора и являются синхронными с его операциями. Примерами таких прерываний являются прерывания, предусмотренные работой программ, а также возникающие при нештатных ситуациях:
В одних ОС очередность обработки прерываний основана на принципе стека, т.е. «последним пришел – первым обслужился» (LCFS), а в других - в соответствии с установленным приоритетом. Логично предположить, что прерывания от схем контроля процессора должны обладать наивысшим приоритетом (действительно, если аппаратура работает неправильно, то не имеет смысла продолжать обработку информации), а прерывания от пользовательских приложений – низшим. Схематично распределение приоритетов показано на следующем рисунке 18.
Системный таймер
Магнитные диски
Сетевое оборудование
Терминалы
Внешние устройства
Высокий приоритет
Низкий приоритет
Механизм прерывания позволяет
координировать параллельное функционирование
отдельных устройств
4вопрос
Макроядерные ОС
Компоненты операционной системы являются не самостоятельными модулями, а составными частями одной большой программы. Такая структура ОС называется монолитным ядром. Монолитное ядро представляет собой набор процедур, каждая из которых может вызвать другую процедуру. Все процедуры работают в привилегированном режиме. Так как ядро является единой программой, то единственным способом добавить в него новые процедуры или исключить не используемые является инсталляция ОС заново.
Монолитное ядро – старейший способ организации операционных систем. Примером является большинство Unix-систем.
Стандартное решение для большинства ОС: ядро работает в привилегированном режиме, а приложение – в пользовательском режиме. Например, UNIX, OS/390, OS/2, Windows NT.
Несмотря на то, что для переключения из привилегированного режима в пользовательский и обратно, требуется определенное время, то этот недостаток компенсируется обеспечением высокой надежностью работы ОС (рисунок 12).
Привилегированный режим
Пользовательский режим
переключение
переключение
Рисунок 12. Схема переключения режимов
Однако есть и исключения: например, ОС Net Ware, в ней и для ядра и для системных приложений используется привилегированный режим. Надежность системы несколько ниже, но скорость работы выше. Если рассматривать систему: «Аппаратура – ядро ОС – системные утилиты (и библиотеки процедур)», то схематично это можно представить в виде концентрических окружностей, (или в виде слоев) в центре которых располагается аппаратура, затем ядро ОС и на периферии – системные утилиты. Любой модуль может выполнить свою работу самостоятельно внутри своего слоя, либо обратиться к модулю соседнего слоя.
Аппар.
САП
МЗК
БФЯ
МР
ИСВ
Рисунок 13. Многослойная структура ядра ОС
На рисунке 13 изображены следующие элементы:
Приведенная выше разбивка слоев достаточно условная, в разных ОС количество слоев может быть разным. Следует отметить, что чем больше слоев в ядре ОС, тем она медленнее работает, но легче расширяется новыми модулями, и наоборот.
5вопрос
Микроядерные ОС
Микроядерная архитектура
является альтернативой классическому
способу построения операционной системы.
Под классической архитектурой в
данном случае понимается рассмотренная
выше структурная организация ОС,
в соответствии с которой все
основные функции операционной системы,
составляющие многослойное ядро, выполняются
в привилегированном режиме. При
этом некоторые вспомогательные
функции ОС оформляются в виде
приложений и выполняются в