ТОП 10:

Мультитерминальные ОС и ОС РВ.



Активный и пассивный процессы.

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

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

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

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

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

1 Состояние выполнения: все затребованные процессом ресурсы выделены. В этом состоянии может находится только один процесс.

2 готовности к выполнению: ресурсы могут быть предоставлены этому процессу, тогда он перейдет в состояние выполнения.

3 Блокированное или ожидание: затребованные ресурсы не могут быть предоставлены или не завершена операция ввода/вывода.

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

Билет 17

Архитектура ОС: монолитные системы.

Дерево процесса.

1)Монолитная архитектура операционной системы.

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

2)Дерево решений — это графическое изображение процесса принятия решений, в котором отражены альтернативные решения, альтернативные состояния среды, соответствующие вероятности и выигрыши для любых комбинаций альтернатив и состояний среды.Рисуют деревья слева направо. Места, где принимаются решения, обозначают квадратами □, места появления исходов — кругами ○,возможные решения — пунктирными линиями.

 

 

Билет 18

Архитектура ОС: многоуровневые системы.

Взаимоблокировка процессов.

1)Многоуровневая архитектура появилась как ответ на ограничения монолитной архитектуры в плане расширяемости, переносимости и совместимости. Основная идея многоуровневой архитектуры состоит в следующем:
1. Полная функциональность операционной системы разделяется на уровни, например уровень управления аппаратурой, уровень управления памятью, уровень файловой системы, уровень управления процессами и т.п.
2. Для каждого уровня определяются интерфейс взаимодействия, т.е. некоторый набор правил, согласно которым следует обращаться за услугами данного уровня.

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

4. Внутренние структуры данных каждого уровня не доступны другим уровням, а реализации процедур уровня скрыты и не зависят от реализаций процедур внутри других уровней.

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

2) Взаимоблокировка процессов может происходить, когда несколько процессов борются за один ресурс.

Ресурсы бывают выгружаемые и невыгружаемые, аппаратные и программные.

Выгружаемый ресурс - этот ресурс безболезненно можно забрать у процесса (например: память).

Невыгружаемый ресурс - этот ресурс нельзя забрать у процесса без потери данных (например: принтер).

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

Условия необходимые для взаимоблокировки:

Условие взаимного исключения - в какой-то момент времени, ресурс занят только одним процессом или свободен.

Условие удержания и ожидания - процесс, удерживающий ресурс может запрашивать новые ресурсы.

Условие отсутствия принудительной выгрузки ресурса.

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

 

Билет 19

Структура ОС: экзоядро.

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

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

Билет 20







Последнее изменение этой страницы: 2016-08-16; Нарушение авторского права страницы

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.226.243.36 (0.009 с.)