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

1.4 Процессы и потоки. Архитектурные особенности ос.

1.4.1 Монолитное ядро.

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

1.4.2 Слоеные системы (Layered Systems)

Всю ОС можно разбить на части.

5

Интерфейс с пользователем

4

Управление вводом/выводом

3

Драйверы

2

Управление памятью

1

Планирование задач и процессов

0

Hardware

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

1.4.3 Виртуальные машины.

Взгляд на ОС как на ВМ позволяет работать с командами высокого уровня. Программным путем возможно представить себе, что программным путем реализуется «железо». На это «железо» можно поставить какую-нибудь ОС и не обязательно ту, которая изначально была на ВС, при этом на каждой ВМ может стоять своя ОС.

Программа юзера

Программа юзера

Программа юзера

CPM

Linux

Windows

Виртуальный hardware

Виртуальный hardware

Виртуальный hardware

Реальная ОС

Реальный hardwear

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

1.4.4 Микроядерная архитектура.

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

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

Привилегированный

режим

Микроядро

Менеджер файловых систем

Прога А

Непривел. режим

Прога В

Сетевой менеджер

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