1.19M
Категория: ИнформатикаИнформатика

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

1.

Лекция№1
по курсу “Операционные системы"
Тема 1: Архитектура ОС

2.

Литература
ОСНОВНАЯ
1.Таненбаум Э., Бос Х. Современные операционные системы. – СПб.: Питер, 2015. – 1120 с.
2.М. Руссинович, Д. Соломон. Внутреннее устройство Microsoft Windows. Ч.1/Пер. с англ. –
СПб.: Питер, 2013. – 800 с.
3.М. Руссинович, Д. Соломон. А. Ионеску. Внутреннее устройство Microsoft Windows. Ч.2.
Основные подсистемы ОС /Пер. с англ. – СПб.: Питер, 2014. – 672 с.
4.Шеховцов В.А. Операційні системи. – К.: Видавнича група BHV, 2005. – 576 c.
5.Побегайло А. П. Системное программирование в Windows. — СПб.: БХВ-Петербург, 2006. 1056 с.
6.Олифер В.Г., Олифер Н.А. Сетевые операционные системы. – СПб.: Питер, 2006. – 544 с.
ДОПОЛНИТЕЛЬНАЯ
1.Д.Карп. Хитрости Windows 7. Для профессионалов. – СПб.: Питер, 2011. – 512 с.
2.Таненбаум Э., Вудхалл А. Операционные системы. Разработка и реализация. Классика CS.
– СПб.: Питер, 2007. — 704 с.
3.Рихтер Дж., Кларк Дж. Программирование серверных приложений для Microsoft Windows. –
Мастер-класс. – СПб.: Издательско-торговый дом "Русская Редакция", 2001. – 592 с.
4.Рихтер Дж. Windows для профессионалов: создание эффективных Win32-приложений с
учетом специфики 64-разрядной версии Windows. Пер. с англ. – СПб.: Питер, 2006. – 752 c.
5.В. Столлингс. Операционные системы. – М.: Вильямс, 2004. – 848 с.
2

3.

1.
Определение операционной системы.
Место ОС в программном обеспечении
2.
Эволюция операционных систем.
3.
Типовые архитектуры операционных
систем.

4.

5.

Расположение ОС в иерархической структуре
программного и аппаратного обеспечения
компьютера
Конечный пользователь
Программист
Прикладные программы
Утилиты
Компиляторы Редакторы Интерпретаторы
команд
Разработчик
ОС
Операционная система
Машинный язык
Микроархитектура (регистры CPU, ALU)
Физические устройства (контроллеры, шины, адаптеры т. д.)
5

6.

6

7.

ФУНКЦИИ ОПЕРАЦИОННОЙ СИСТЕМЫ
ОС как виртуальная
машина
ОС как система
управления ресурсами
Функциональные компоненты ОС
7

8.

ОПЕРАЦИОННАЯ СИСТЕМА
это набор программ, контролирующих работу прикладных
программ и системных приложений, и исполняющих роль
интерфейса между пользователями, программистами,
приложениями и аппаратным обеспечением компьютера.
ОПЕРАЦИОННАЯ СРЕДА
программная среда, образуемая операционной системой,
определяющая интерфейс прикладного программирования (API) как
множество системных функций и сервисов (системных вызовов),
предоставляемых прикладным программам.
ОПЕРАЦИОННАЯ ОБОЛОЧКА
часть операционной среды, определяющая интерфейс пользователя,
его реализацию (текстовый, графический и т.п.), командные и
сервисные возможности пользователя по управлению прикладными
программами и компьютером
8

9.

10.

Развитие видов операционных систем
10
н.вр.
2005
2000
1995
1990
1985
1980
1975
1970
1965
1960
1955
1950
1946

11.

Эволюция программного обеспечения и
операционных систем
11

12.

ПЕРВОЕ ПОКОЛЕНИЕ (до 1950).
Электронные лампы и коммутационные панели
Ученные
Hardware
Говард Айкен (Howard Aiken)
1. Механические реле
Джон фон Нейман (John von Neumann)
2. Электронные лампы
Дж. Преспер Эккерт (J. Presper Eckert)
Вильям Мочли (William Mauchley)
Конрад Цузе (Konrad Zuse)
Software
1. Программирование на абсолютном машинном языке
2. Не было ни операционных систем, ни системного
программного обеспечения
12

13.

ВТОРОЕ ПОКОЛЕНИЕ (1950-60).
Транзисторы и системы пакетной обработки
Hardware
Типичные ОС
1. Транзисторы
FMS (Fortran Monitor System)
2. Mainframe
(мэйнфреймы)
IBSYS (для компьютера IBM 7094)
1952 г. – Первая ОС создана исследовательской лабораторией
фирмы General Motors для IBM-701.
Software
1. Первые алгоритмические языки и трансляторы
2. Система пакетной обработки
3. Формализованный язык управления заданиями
4. Специальная программа – монитор
13

14.

ТРЕТЬЕ ПОКОЛЕНИЕ (1960-1980).
Интегральные схемы и многозадачность
Hardware
1. Интегральные микросхемы
2. Серия машин IBM/360
(советский аналог – серия ЕС)
3. Мини-компьютеры (серия
PDP)
1974 г. – (UNICS) UNIX
(Uniplexed Information and
Computing Service)
Ученные
Кен Томпсон (Ken Thompson)
Типичные ОС
CTSS (Compatible Time Sharing System
совместимая система разделения
времени -1963)
MULTICS (MULTiplexed Information and
Computing Service – 1963)
Software
1. Мультипрограммные системы пакетной обработки
2. Системы разделения времени
3. Стандарт POSIX
14

15.

ЧЕТВЕРТОЕ ПОКОЛЕНИЕ (с 1980 года)
Персональные компьютеры
Hardware
1. Большие и
сверхбольшие
интегральные микросхемы
2. Процессор Intel 8080
3. Микрокомпьютеры
4. IBM PC (Personal
Computer)
5. Персональный
компьютер Apple
Ученные
Гэри Килдэлл (Gary Kildall)
Билл Гейтс (Bill Gates)
Тим Патерсон (Tim Paterson)
Даг Энгельбарт (Doug Engelbart)
Стив Джобc (Steve Jobs)
Типичные ОС
CР/М (Control Program for Microcomputers)
DOS (Disk Operating System
MS-DOS (MicroSoft Disk Operating
System)
Software
1. Интерпретатор языка Бейсик
2. Графический интерфейс пользователя (GUI, Graphical
15
User Interface)

16.

17.

18.

3.1. КЛАССИЧЕСКАЯ АРХИТЕКТУРА ОС
Архитетура ОС – структурная организация ОС на основе различных
программных модулей
Модель ОС — это каркас, который связывает в единое целое все
средства и сервисы, обеспечиваемые системой, с одной стороны,
и выполняемые ею задачи, с другой.
Ядро
ОС
- вспомогательные модули
Все модули ядра или большая их
часть постоянно находятся в
оперативной памяти, то есть
являются резидентными.
Модули ОС, оформленные в виде
утилит, системных
обрабатывающих программ и
библиотек, обычно загружаются в
оперативную память только на
время выполнения своих функций,
то есть являются транзитными.
- пользовательские
приложения
Нечеткость границы между ОС и приложениями
18

19.

3.1. КЛАССИЧЕСКАЯ АРХИТЕКТУРА ОС
Системные
обрабатывающие
программы
Утилиты
Ядро ОС
Приложения
пользователей
Библиотеки
процедур
Взаимодействие между ядром и вспомогательными модулями ОС
19

20.

3.1. КЛАССИЧЕСКАЯ АРХИТЕКТУРА ОС
Утилиты
Системные
обрабатывающие
программы
Приложения
пользователей
Пользовательский режим
Привилегированный режим
Приложения ставятся в подчиненное
положение за счет запрета выполнения
в пользовательском режиме некоторых
критичных
команд,
связанных
с
переключением процессора с задачи на
задачу,
управлением
устройствами
ввода-вывода, доступом к механизмам
распределения и защиты памяти.
Ядро ОС
Архитектура операционной системы с ядром в
привилегированном режиме – КЛАССИЧЕСКАЯ АРХИТЕКТУРА
20

21.

3.1. КЛАССИЧЕСКАЯ АРХИТЕКТУРА ОС
Защищенный режим процессора.
Является основным и наиболее естественным режимом работы
современных процессоров.
Механизмы
1. Организация памяти, при 2. Четырехуровневая 3. Переключение
которой используются два
система защиты
задач
механизма преобразования пространства памяти
памяти: сегментация и
и ввода/вывода
разбиение на страницы.
Сегмент - это блок
пространства памяти
определенного назначения,
внутри которого применяется
линейная адресация.
Максимальное число таких
сегментов равно 213.
При этом базовым объектом
памяти служит блок
фиксированного размера –
страница – 4 Кб.
Систему защиты обычно изображают в
виде колец, соответствующих уровням
привилегий, а сами уровни привилегий
иногда называют кольцами защиты.
3
- Пользовательские
программы
2
- Библиотеки
совместного доступа
1
- Системные узлы
0
- Ядро ОС
21

22.

3.1. КЛАССИЧЕСКАЯ АРХИТЕКТУРА ОС
Системный
вызов
Пользовательский
режим
Работа
приложения
Привилегированный
режим
Работа ядра
Время переключения режимов
Недостатки классической архитектуры ОС:
1. Значительные изменения одного из уровней могут иметь трудно предвидимое
влияние на смежные уровни.
2. Многочисленные взаимодействия между соседними уровнями усложняют
обеспечение безопасности.
Смена режима при выполнении системного вызова к
привилегированному ядру
22

23.

24.

3.2. МНОГОСЛОЙНАЯ АРХИТЕКТУРА ОС
Утилиты, библиотеки, системные обрабатывающие программы
Ядро ОС
Аппаратура
Межслойный
интерфейс
Трехслойная схема вычислительной системы
24

25.

3.2. МНОГОСЛОЙНАЯ АРХИТЕКТУРА ОС
Аппаратура
Ядро ОС
5
- Интерфейс системных вызовов
4
- Менеджеры ресурсов системных вызовов
3
- Базовые механизмы ядра
2
- Машинно-зависимые модули
1
- Средства аппаратной поддержки ОС
Многослойная структура ядра ОС
25

26.

3.2. МНОГОСЛОЙНАЯ АРХИТЕКТУРА ОС
5
- Интерфейс системных вызовов
Этот слой непосредственно взаимодействует с приложениями и системными
утилитами, образуя прикладной программный интерфейс операционной
системы
4
- Менеджеры ресурсов системных вызовов
Этот слой состоит из мощных функциональных модулей, реализующих
стратегические задачи по управлению основными ресурсами вычислительной
системы
3
- Базовые механизмы ядра
Модули слоя не принимают решений о распределении ресурсов — они
только отрабатывают принятые "наверху" решения. Поэтому их
называют исполнительными механизмами для модулей верхних слоев
2
- Машинно-зависимые модули
Модули, в которых отражается специфика аппаратной платформы
компьютера. Этот слой полностью экранирует вышележащие слои ядра от
особенностей аппаратуры
1
- Средства аппаратной поддержки ОС
Средства, которые прямо участвуют в организации
процессов:
средства поддержки привилегированного режима,
система прерываний,
средства переключения контекстов процессов,
средства защиты областей памяти и т.п.
вычислительных
26

27.

28.

3.3. МИКРОЯДЕРНАЯ АРХИТЕКТУРА ОС.
Для реализации микроядерной архитектуры необходимым условием
является наличие в операционной системе удобного и эффективного
способа вызова процедур одного процесса из другого
Приложения
пользователей
Утилиты ОС
Приложения
пользователей
Утилиты ОС
Серверы ОС
Пользовательский режим
Привилегированный режим
Микроядро
Ядро ОС
Перенос основного объема функций ядра в
пользовательское пространство
28

29.

Менеджер процессов
Драйвер устройств
Сервер безопасности
API
Файловая система
Менеджер виртуальной
памяти
Приложения пользователей
РЕЖИМ ЯДРА
Интерфейс системы вводавывода
Утилиты. Системные программы
Утилиты ОС, приложения
Пользовательский
режим
Микроядерная архитектура ОС
Базовые механизмы ядра
Машинно-зависимые
модули
Средства аппаратной
поддержки ОС
Аппаратура
МИКРОЯДРО
(режим ядра)
Средства аппаратной поддержки
ОС
Аппаратура
Микроядерная архитектура ОС
29

30.

3.3. МИКРОЯДЕРНАЯ АРХИТЕКТУРА ОС.
Сетевой
сервер
Приложения
пользователей
Файловый
Сообщение - сервер
запрос
Сервер
процессов
Сообщение ответ
Пользовательский режим
Сервер
безопасности
Привилегированный режим
Микроядро
Реализация системного вызова в микроядерной
архитектуре
30
English     Русский Правила