SlideShare a Scribd company logo
1 of 23
Тема 3.
“Архитектура Операционных
Систем.”
1. Классическая архитектура ОС
1.1. Ядро и вспомогательные модули ОС
1.2. Многослойная структура ОС
2. Микроядерная архитектура ОС
2.1. Основные положения микроядерной архитектуры
2.2. Преимущества и недостатки микроядерной архитектуры
Любая сложная система должна иметь понятную и
рациональную структуру, то есть разделяться на
модули, имеющие законченное функциональное
назначение с четко оговоренными правилами
взаимодействия.
Качественная проработка структуры и внутренних
межмодульных взаимодействий ОС является одной
из важнейших задач, встающих перед
разработчиками системы.
Ошибки на этом этапе могут оказать решающее
влияние на дальнейшую судьбу системы.
1.1. Ядро и вспомогательные модули ОС
Функциональная сложность ОС неизбежно
приводит к сложности ее архитектуры, под
которой понимают структурную организацию ОС
на основе различных программных модулей.
Наиболее общим подходом к структуризации ОС является
разделение всех ее модулей на две группы:
1) ядро – модули, выполняющие основные функции ОС;
2) модули ОС, выполняющие вспомогательные функции
ОС.
Вспомогательные модули ОС выполняют не столь важные, как ядро,
функции, и делятся на:
1. утилиты – программы, решающие отдельные задачи управления и
сопровождения вычислительной системы;
2. системные обрабатывающие программы – текстовые или графические
редакторы, компиляторы, компоновщики, отладчики и другие программы,
входящие в комплект поставки данной ОС;
3. программы предоставления пользователю дополнительных услуг –
нестандартный вариант пользовательского интерфейса, включающий
вспомогательные и даже игровые программы;
4. библиотеки процедур и функций различного назначения, облегчающие
разработку пользовательских приложений, например, библиотека
математических функций, функций работы с устройствами ввода-вывода и т.д.
Вспомогательные модули ОС обычно загружаются в
оперативную память вычислительной системы
только на время выполнения своих функций, то есть
являются транзитными модулями ОС.
Постоянно в оперативной памяти находятся лишь
наиболее важные программы ОС, составляющие ее
ядро. Применение подобной организации позволяет
рационально использовать такой ресурс
вычислительной системы, как оперативная память.
Обеспечение соответствующих привилегий ОС требует не
только соответствующей программной, но и аппаратной
поддержки.
Аппаратура компьютера должна иметь возможность
работать как минимум в двух режимах:
 пользовательском и
 привилегированном.
1.2. Многослойная структура ОС
Существует универсальный и эффективный подход к
построению сложной системы любого типа – многослойный подход.
В соответствии с ним система делится на иерархию слоев, каждый
из которых обслуживает вышележащий слой, выполняя для него
некоторый набор функций, образующих так называемый
межслойный интерфейс.
Межслойные интерфейсы, с помощью которых происходит
взаимодействие слоев, строго оговорены, тогда как связи между
модулями внутри одного слоя могут быть произвольными.
Если применить описанный подход к вычислительной системе,
работающей под управлением ОС, построенной по классической
архитектуре, то ее можно представить как систему, состоящую из
трех иерархически связанных слоев, каждый из которых
взаимодействует только со смежным ему слоем.
Рис. 3. Трехслойная структура вычислительной системы
Ядро ОС также является сложным многофункциональным комплексом
программ, и к нему можно применить многослойный подход.
Как правило, в ядре классической ОС выделяют следующие основные
слои:
- средства аппаратной поддержки ОС
- машинно-зависимые компоненты ОС
- базовые механизмы ядра
- менеджеры ресурсов
- интерфейс системных вызовов
Аппаратура
Ма
ш
инно-зависимые мо
дули
Средстваап
паратной под
держкиОС
Базовые механизмы ядра
Менеджеры ресурсов
Интерфейс системных вызовов
Рис. 4. Многослойная структура ядра операционной системы
2.1. Основные положения микроядерной
архитектуры
В отличие от традиционной архитектуры, микроядерная
архитектура распределяет функции ОС между микроядром и
входящими в состав ОС системными сервисами, реализованными в
виде процессов, равноправных с пользовательскими
приложениями.
Главной особенностью данного подхода является то, что в
привилегированном режиме остается работать только очень малая
часть ОС, называемая соответственно микроядром.
Не вошедшие в состав микроядра высокоуровневые функции и
модули ядра оформляются в виде обычных приложений,
работающих в пользовательском режиме.
Рис. 5. Строение операционных систем с монолитным ядром и с
микроядерной архитектурой
Пользовательскийрежим
Приложения
пользователей УтилитыОС
ЯдроОС
Привилегированныйрежим
а
Пользовательскийрежим
Приложения
пользователей
УтилитыОС
Привилегированныйрежим
б
СерверыОС
Микроядро
Рис.6. Реализация системного вызова в операционной
системе с микроядерной архитектурой
Сообщение-запрос
Пользовательскийрежим
Приложенияпользователей
Привилегированныйрежим
СерверыОС
Сообщение-ответ Микроядро
Работа микроядерной ОС соответствует известной модели клиент-
сервер, в которой роль транспортных средств выполняет микроядро.
 Стандартизованные протоколы предоставления сервиса или
ресурсов позволяют серверу обслуживать клиента независимо от
деталей их реализации, что открывает перед разработчиками
широкие возможности для построения распределенных систем.
Применение на практике концепции микроядерной
архитектуры построения ОС
 Одной из первых представила понятие микроядра фирма Next, которая
использовала в своих компьютерах систему Mach, прошедшую большой
путь развития в университете Карнеги-Меллона при содействии
Министерства обороны США.
 Более современные архитектуры микроядра были предложены Novell,
USL, Open Software Foundation, IBM, Apple и др.
Основные концепции построения двух наиболее
популярных систем: Windows NT и UNIX-системы,
основанной на микроядре Mach.
Во многих UNIX-подобных системах в качестве основы для
построения выбрано микроядро Mach.
Ядро управляет пятью главными абстракциями:
– процессами;
– нитями;
– объектами памяти;
– портами;
– сообщениями.
Процесс в Mach – это базисная единица распределения ресурсов, он
имеет адресное пространство, содержащее текст программы и данные.
Нить в Mach является единицей выполнения.
Межпроцессное взаимодействие в Mach основано на передаче
сообщений.
Для того чтобы получить сообщение, пользовательский процесс просит
ядро создать защищенный почтовый ящик, который называется порт.
ОС Windows NT с самого начала проектировалась разработчиками
компании Microsoft с учетом всех требований, предъявляемых к
современным ОС.
Структурно Windows NT может быть представлена в виде двух
слагаемых:
часть ОС, работающая в режиме пользователя, и
часть ОС в режиме ядра.
Основным средством, скрепляющим все подсистемы Windows
NT в единое целое, является механизм вызова локальных процедур
(Local Procedure Call, LPC).
Средства LPC поддерживают несколько способов передачи данных
между клиентами и серверами:
Windows NT использует защищенные подсистемы для того,
чтобы:
– обеспечить несколько программных интерфейсов (API), по
возможности не усложняя при этом базовый программный код
(NT executive);
– изолировать базовую ОС от изменений или расширений в
поддерживаемых API;
– объединить часть глобальных данных, требующихся всем API,
и в то же время отделить данные, использующиеся каждым
отдельным API от данных других API;
– защитить окружение каждого API от приложений и окружения
других API, а также защитить базовую ОС от различных
окружений;
– позволить ОС расширяться в будущем за счет новых API.
2.2. Преимущества и недостатки микроядерной
архитектуры
ОС, основанные на концепции микроядра, во
многом удовлетворяют требованиям,
предъявляемым к современным ОС, обладая
переносимостью, расширяемостью, надежностью, и
создают хорошие предпосылки для поддержки
распределенных приложений.
Но, к сожалению, все эти достоинства ОС
приобретает в ущерб производительности.
Что является этому причиной?
Дело в том, что при классической организации
ОС выполнение системного вызова сопровождается двумя переключениями
режимов, а при микроядерной организации – четырьмя. Таким образом ОС
на основе микроядра всегда будет менее производительной, чем ОС с
классическим ядром.
Работа
приложения
Работа ядра
t
ядра
t
ядра
а)
ядра
Работа
приложения
Работа
приложения
Работа
сервера ОС
Работа
микроядра
t
ядра
t
ядра
б)
ядра
Работа
приложения
Работа
микроядра
t
ядра
t
ядра
Рис. 7. Смена режимов при выполнении системного вызова (а –классическая
организация, б – микроядерная организация)
Спасибо за внимание!

More Related Content

What's hot

ОС в реальном времени
ОС в реальном времениОС в реальном времени
ОС в реальном времениNick535
 
040
040040
040JIuc
 
Структура операционных систем
Структура операционных системСтруктура операционных систем
Структура операционных системNick535
 
Введение в Операционную Систему Windows XP
Введение в Операционную Систему Windows XPВведение в Операционную Систему Windows XP
Введение в Операционную Систему Windows XPkurbanovafaina
 
Cистемное программное обеспечение
Cистемное программное обеспечениеCистемное программное обеспечение
Cистемное программное обеспечениеNick535
 
6 операционная система
6 операционная система6 операционная система
6 операционная системаzarechneva
 
Занятие № 5. Общие сведения MS-DOS . Основные модули ОС. Основные команды MS-DOS
Занятие № 5. Общие сведения MS-DOS . Основные модули ОС. Основные команды MS-DOSЗанятие № 5. Общие сведения MS-DOS . Основные модули ОС. Основные команды MS-DOS
Занятие № 5. Общие сведения MS-DOS . Основные модули ОС. Основные команды MS-DOSAibek9
 
Программа подготовки презентаций Microsoft PowerPoint 2013
Программа  подготовки презентаций Microsoft PowerPoint 2013 Программа  подготовки презентаций Microsoft PowerPoint 2013
Программа подготовки презентаций Microsoft PowerPoint 2013 DianaLirika
 
операционная система
операционная системаоперационная система
операционная системаzodiakasp
 

What's hot (20)

ОС в реальном времени
ОС в реальном времениОС в реальном времени
ОС в реальном времени
 
040
040040
040
 
11 операционная система
11 операционная система11 операционная система
11 операционная система
 
лекция 1
лекция 1лекция 1
лекция 1
 
операционная система
операционная системаоперационная система
операционная система
 
Структура операционных систем
Структура операционных системСтруктура операционных систем
Структура операционных систем
 
Введение в Операционную Систему Windows XP
Введение в Операционную Систему Windows XPВведение в Операционную Систему Windows XP
Введение в Операционную Систему Windows XP
 
Cистемное программное обеспечение
Cистемное программное обеспечениеCистемное программное обеспечение
Cистемное программное обеспечение
 
2
22
2
 
36 m9o
36 m9o36 m9o
36 m9o
 
6 операционная система
6 операционная система6 операционная система
6 операционная система
 
ос
осос
ос
 
9
99
9
 
Prezentatsia Elina
Prezentatsia ElinaPrezentatsia Elina
Prezentatsia Elina
 
Занятие № 5. Общие сведения MS-DOS . Основные модули ОС. Основные команды MS-DOS
Занятие № 5. Общие сведения MS-DOS . Основные модули ОС. Основные команды MS-DOSЗанятие № 5. Общие сведения MS-DOS . Основные модули ОС. Основные команды MS-DOS
Занятие № 5. Общие сведения MS-DOS . Основные модули ОС. Основные команды MS-DOS
 
Программа подготовки презентаций Microsoft PowerPoint 2013
Программа  подготовки презентаций Microsoft PowerPoint 2013 Программа  подготовки презентаций Microsoft PowerPoint 2013
Программа подготовки презентаций Microsoft PowerPoint 2013
 
операционная система
операционная системаоперационная система
операционная система
 
88
8888
88
 
106
106106
106
 
лекция 5 (2часа)
лекция 5 (2часа)лекция 5 (2часа)
лекция 5 (2часа)
 

Similar to Архитектура Операционных Систем

022
022022
022JIuc
 
036
036036
036JIuc
 
Trpo 6 архит_проектирование
Trpo 6 архит_проектированиеTrpo 6 архит_проектирование
Trpo 6 архит_проектированиеpogromskaya
 
Konspekt
KonspektKonspekt
KonspektArtem
 
раздел 1 введение в базы данных
раздел 1  введение в базы данныхраздел 1  введение в базы данных
раздел 1 введение в базы данныхtatianabtt
 
037
037037
037JIuc
 
SQL Server Security Best Practices - Евгений Недашковский
SQL Server Security Best Practices - Евгений НедашковскийSQL Server Security Best Practices - Евгений Недашковский
SQL Server Security Best Practices - Евгений НедашковскийHackIT Ukraine
 
Операционные системы 2015, лекция № 3
Операционные системы 2015, лекция № 3Операционные системы 2015, лекция № 3
Операционные системы 2015, лекция № 3Aleksey Bragin
 
042
042042
042JIuc
 
Сетевые Операционные Системы. Структура сетевой ОС. Дистрибутивы Linux
Сетевые Операционные Системы. Структура сетевой ОС. Дистрибутивы LinuxСетевые Операционные Системы. Структура сетевой ОС. Дистрибутивы Linux
Сетевые Операционные Системы. Структура сетевой ОС. Дистрибутивы Linuxkurbanovafaina
 
40
4040
40JIuc
 
Лекция 1. Архитектура информационных систем
Лекция 1. Архитектура информационных системЛекция 1. Архитектура информационных систем
Лекция 1. Архитектура информационных системВиталий Емельянов
 
041
041041
041JIuc
 
история развития бд1
история развития бд1история развития бд1
история развития бд1Sai_17
 
01. Вводная
01. Вводная01. Вводная
01. ВводнаяKamlachPV
 

Similar to Архитектура Операционных Систем (20)

022
022022
022
 
036
036036
036
 
Trpo 6 архит_проектирование
Trpo 6 архит_проектированиеTrpo 6 архит_проектирование
Trpo 6 архит_проектирование
 
Konspekt
KonspektKonspekt
Konspekt
 
раздел 1 введение в базы данных
раздел 1  введение в базы данныхраздел 1  введение в базы данных
раздел 1 введение в базы данных
 
037
037037
037
 
SQL Server Security Best Practices - Евгений Недашковский
SQL Server Security Best Practices - Евгений НедашковскийSQL Server Security Best Practices - Евгений Недашковский
SQL Server Security Best Practices - Евгений Недашковский
 
Операционные системы 2015, лекция № 3
Операционные системы 2015, лекция № 3Операционные системы 2015, лекция № 3
Операционные системы 2015, лекция № 3
 
042
042042
042
 
Сетевые Операционные Системы. Структура сетевой ОС. Дистрибутивы Linux
Сетевые Операционные Системы. Структура сетевой ОС. Дистрибутивы LinuxСетевые Операционные Системы. Структура сетевой ОС. Дистрибутивы Linux
Сетевые Операционные Системы. Структура сетевой ОС. Дистрибутивы Linux
 
MW
MWMW
MW
 
Lekcia2
Lekcia2Lekcia2
Lekcia2
 
40
4040
40
 
Лекция 1. Архитектура информационных систем
Лекция 1. Архитектура информационных системЛекция 1. Архитектура информационных систем
Лекция 1. Архитектура информационных систем
 
45695
4569545695
45695
 
041
041041
041
 
история развития бд1
история развития бд1история развития бд1
история развития бд1
 
Ais Lecture 4
Ais Lecture 4Ais Lecture 4
Ais Lecture 4
 
тема 5
тема 5тема 5
тема 5
 
01. Вводная
01. Вводная01. Вводная
01. Вводная
 

Архитектура Операционных Систем

  • 1. Тема 3. “Архитектура Операционных Систем.” 1. Классическая архитектура ОС 1.1. Ядро и вспомогательные модули ОС 1.2. Многослойная структура ОС 2. Микроядерная архитектура ОС 2.1. Основные положения микроядерной архитектуры 2.2. Преимущества и недостатки микроядерной архитектуры
  • 2. Любая сложная система должна иметь понятную и рациональную структуру, то есть разделяться на модули, имеющие законченное функциональное назначение с четко оговоренными правилами взаимодействия. Качественная проработка структуры и внутренних межмодульных взаимодействий ОС является одной из важнейших задач, встающих перед разработчиками системы. Ошибки на этом этапе могут оказать решающее влияние на дальнейшую судьбу системы. 1.1. Ядро и вспомогательные модули ОС
  • 3. Функциональная сложность ОС неизбежно приводит к сложности ее архитектуры, под которой понимают структурную организацию ОС на основе различных программных модулей.
  • 4. Наиболее общим подходом к структуризации ОС является разделение всех ее модулей на две группы: 1) ядро – модули, выполняющие основные функции ОС; 2) модули ОС, выполняющие вспомогательные функции ОС.
  • 5. Вспомогательные модули ОС выполняют не столь важные, как ядро, функции, и делятся на: 1. утилиты – программы, решающие отдельные задачи управления и сопровождения вычислительной системы; 2. системные обрабатывающие программы – текстовые или графические редакторы, компиляторы, компоновщики, отладчики и другие программы, входящие в комплект поставки данной ОС; 3. программы предоставления пользователю дополнительных услуг – нестандартный вариант пользовательского интерфейса, включающий вспомогательные и даже игровые программы; 4. библиотеки процедур и функций различного назначения, облегчающие разработку пользовательских приложений, например, библиотека математических функций, функций работы с устройствами ввода-вывода и т.д.
  • 6. Вспомогательные модули ОС обычно загружаются в оперативную память вычислительной системы только на время выполнения своих функций, то есть являются транзитными модулями ОС. Постоянно в оперативной памяти находятся лишь наиболее важные программы ОС, составляющие ее ядро. Применение подобной организации позволяет рационально использовать такой ресурс вычислительной системы, как оперативная память.
  • 7. Обеспечение соответствующих привилегий ОС требует не только соответствующей программной, но и аппаратной поддержки. Аппаратура компьютера должна иметь возможность работать как минимум в двух режимах:  пользовательском и  привилегированном.
  • 8. 1.2. Многослойная структура ОС Существует универсальный и эффективный подход к построению сложной системы любого типа – многослойный подход. В соответствии с ним система делится на иерархию слоев, каждый из которых обслуживает вышележащий слой, выполняя для него некоторый набор функций, образующих так называемый межслойный интерфейс. Межслойные интерфейсы, с помощью которых происходит взаимодействие слоев, строго оговорены, тогда как связи между модулями внутри одного слоя могут быть произвольными.
  • 9. Если применить описанный подход к вычислительной системе, работающей под управлением ОС, построенной по классической архитектуре, то ее можно представить как систему, состоящую из трех иерархически связанных слоев, каждый из которых взаимодействует только со смежным ему слоем. Рис. 3. Трехслойная структура вычислительной системы
  • 10. Ядро ОС также является сложным многофункциональным комплексом программ, и к нему можно применить многослойный подход. Как правило, в ядре классической ОС выделяют следующие основные слои: - средства аппаратной поддержки ОС - машинно-зависимые компоненты ОС - базовые механизмы ядра - менеджеры ресурсов - интерфейс системных вызовов Аппаратура Ма ш инно-зависимые мо дули Средстваап паратной под держкиОС Базовые механизмы ядра Менеджеры ресурсов Интерфейс системных вызовов Рис. 4. Многослойная структура ядра операционной системы
  • 11. 2.1. Основные положения микроядерной архитектуры В отличие от традиционной архитектуры, микроядерная архитектура распределяет функции ОС между микроядром и входящими в состав ОС системными сервисами, реализованными в виде процессов, равноправных с пользовательскими приложениями. Главной особенностью данного подхода является то, что в привилегированном режиме остается работать только очень малая часть ОС, называемая соответственно микроядром. Не вошедшие в состав микроядра высокоуровневые функции и модули ядра оформляются в виде обычных приложений, работающих в пользовательском режиме.
  • 12. Рис. 5. Строение операционных систем с монолитным ядром и с микроядерной архитектурой Пользовательскийрежим Приложения пользователей УтилитыОС ЯдроОС Привилегированныйрежим а Пользовательскийрежим Приложения пользователей УтилитыОС Привилегированныйрежим б СерверыОС Микроядро
  • 13. Рис.6. Реализация системного вызова в операционной системе с микроядерной архитектурой Сообщение-запрос Пользовательскийрежим Приложенияпользователей Привилегированныйрежим СерверыОС Сообщение-ответ Микроядро
  • 14. Работа микроядерной ОС соответствует известной модели клиент- сервер, в которой роль транспортных средств выполняет микроядро.  Стандартизованные протоколы предоставления сервиса или ресурсов позволяют серверу обслуживать клиента независимо от деталей их реализации, что открывает перед разработчиками широкие возможности для построения распределенных систем.
  • 15. Применение на практике концепции микроядерной архитектуры построения ОС  Одной из первых представила понятие микроядра фирма Next, которая использовала в своих компьютерах систему Mach, прошедшую большой путь развития в университете Карнеги-Меллона при содействии Министерства обороны США.  Более современные архитектуры микроядра были предложены Novell, USL, Open Software Foundation, IBM, Apple и др.
  • 16. Основные концепции построения двух наиболее популярных систем: Windows NT и UNIX-системы, основанной на микроядре Mach. Во многих UNIX-подобных системах в качестве основы для построения выбрано микроядро Mach. Ядро управляет пятью главными абстракциями: – процессами; – нитями; – объектами памяти; – портами; – сообщениями.
  • 17. Процесс в Mach – это базисная единица распределения ресурсов, он имеет адресное пространство, содержащее текст программы и данные. Нить в Mach является единицей выполнения. Межпроцессное взаимодействие в Mach основано на передаче сообщений. Для того чтобы получить сообщение, пользовательский процесс просит ядро создать защищенный почтовый ящик, который называется порт.
  • 18. ОС Windows NT с самого начала проектировалась разработчиками компании Microsoft с учетом всех требований, предъявляемых к современным ОС. Структурно Windows NT может быть представлена в виде двух слагаемых: часть ОС, работающая в режиме пользователя, и часть ОС в режиме ядра.
  • 19. Основным средством, скрепляющим все подсистемы Windows NT в единое целое, является механизм вызова локальных процедур (Local Procedure Call, LPC). Средства LPC поддерживают несколько способов передачи данных между клиентами и серверами:
  • 20. Windows NT использует защищенные подсистемы для того, чтобы: – обеспечить несколько программных интерфейсов (API), по возможности не усложняя при этом базовый программный код (NT executive); – изолировать базовую ОС от изменений или расширений в поддерживаемых API; – объединить часть глобальных данных, требующихся всем API, и в то же время отделить данные, использующиеся каждым отдельным API от данных других API; – защитить окружение каждого API от приложений и окружения других API, а также защитить базовую ОС от различных окружений; – позволить ОС расширяться в будущем за счет новых API.
  • 21. 2.2. Преимущества и недостатки микроядерной архитектуры ОС, основанные на концепции микроядра, во многом удовлетворяют требованиям, предъявляемым к современным ОС, обладая переносимостью, расширяемостью, надежностью, и создают хорошие предпосылки для поддержки распределенных приложений. Но, к сожалению, все эти достоинства ОС приобретает в ущерб производительности.
  • 22. Что является этому причиной? Дело в том, что при классической организации ОС выполнение системного вызова сопровождается двумя переключениями режимов, а при микроядерной организации – четырьмя. Таким образом ОС на основе микроядра всегда будет менее производительной, чем ОС с классическим ядром. Работа приложения Работа ядра t ядра t ядра а) ядра Работа приложения Работа приложения Работа сервера ОС Работа микроядра t ядра t ядра б) ядра Работа приложения Работа микроядра t ядра t ядра Рис. 7. Смена режимов при выполнении системного вызова (а –классическая организация, б – микроядерная организация)