Разделы презентаций


Операционные системы

Содержание

Учебная литература по курсуОсновная:1. С.В. Назаров. Операционные среды, системы и оболочки. Основы структурной и функциональной организации. – М.: КУДИЦ-ПРЕСС, 2007. – 504 с., илл.2. С.В. Назаров. Л.П. Гудыно, А.А. Кириченко. Операционные

Слайды и текст этой презентации

Слайд 1Операционные системы
Объем в часах:
Лекций: 45 ч
Лабораторных занятий: 40 ч
Курсовая

работа: 12 ч
Самостоятельная работа: 55 ч
Форма контроля: зачет (дифференцированный)

Операционные системыОбъем в часах: Лекций: 45 чЛабораторных занятий: 40 чКурсовая работа: 12 чСамостоятельная работа: 55 чФорма контроля:

Слайд 2Учебная литература по курсу
Основная:
1. С.В. Назаров. Операционные среды, системы и

оболочки. Основы структурной и функциональной организации. – М.: КУДИЦ-ПРЕСС, 2007.

– 504 с., илл.
2. С.В. Назаров. Л.П. Гудыно, А.А. Кириченко. Операционные системы. Практикум. – М.: КУДИЦ-ПРЕСС, 2008. – 464 с., илл.
3. А.В. Гордеев. Операционные системы: Учебник для вузов. 2-е изд. – СПб.: Питер, 2007. – 416 с.: ил.


Учебная литература по курсуОсновная:1. С.В. Назаров. Операционные среды, системы и оболочки. Основы структурной и функциональной организации. –

Слайд 3Учебная литература по курсу
Основная:
4. В.Г. Олифер, Н.А. Олифер. Сетевые операционные

системы: Учебник для вузов. 2-е изд. – СПб.: Питер, 2008.

– 669 с.: ил.
Дополнительная:
5. Д.В. Иртегов. Введение в операционные системы. – 2-е изд., перераб. и доп. – СПб.: БХВ-Петербург, 2008. – 1040 с.: ил. – (Учебное пособие)


Учебная литература по курсуОсновная:4. В.Г. Олифер, Н.А. Олифер. Сетевые операционные системы: Учебник для вузов. 2-е изд. –

Слайд 4Учебная литература по курсу
Дополнительная:
6. Х.М. Дейтел, П.Дж. Дейтел, Д.Р. Чофнес.

Операционные системы. Основы и принципы: Третье издание. Пер. с англ.

– М.: ООО «Бином-Пресс», 2006 г. – 1024 с.: ил.
7. Х.М. Дейтел, П.Дж. Дейтел, Д.Р. Чофнес. Операционные системы. Распределенные системы, сети, безопасность: Третье издание. Пер. с англ. – М.: ООО «Бином-Пресс», 2006 г. – 704 с.: ил.


Учебная литература по курсуДополнительная:6. Х.М. Дейтел, П.Дж. Дейтел, Д.Р. Чофнес. Операционные системы. Основы и принципы: Третье издание.

Слайд 5Учебная литература по курсу
Дополнительная:
8. Э. Таненбаум. Современные операционные системы. 2-е

изд. – СПб.: Питер, 2006. – 1038 с.: ил.
9. Д.

Бэкон, Т. Харрис. Операционные системы. – СПб.: Питер; Киев: Издательская группа BHV, 2004. – 800 с.: ил.


Учебная литература по курсуДополнительная:8. Э. Таненбаум. Современные операционные системы. 2-е изд. – СПб.: Питер, 2006. – 1038

Слайд 6Учебная литература по курсу
Дополнительная:
10. Джеффри Рихтер. Windows для профессионалов (программирование

в Win32 API для Windows NT 3.5 и Windows 95)

/Пер. с англ. – М.: Издательский отдел «Русская редакция» ТОО «Channel Trading Ltd.», 1995. – 720 с.: ил.
11. Нортон П., Мюллер Д. Полное руководство по Microsoft Windows XP: Пер. с англ. – М.: ДМК Пресс, 2002. – 736 с.: ил.


Учебная литература по курсуДополнительная:10. Джеффри Рихтер. Windows для профессионалов (программирование в Win32 API для Windows NT 3.5

Слайд 7Учебная литература по курсу
Дополнительная:
12. Стахнов А.А. Linux. – 2-е изд.,

перераб. и доп. – СПб.: БХВ-Петербург, 2007. – 944 с.:

ил.
13. Негус Кристофер. Linux. Библия пользователя, 5-е издание.: Пер. с англ. – М.: ООО «И.Д. Вильямс», 2007. – 704 с.: ил. – Парал.тит.англ.


Учебная литература по курсуДополнительная:12. Стахнов А.А. Linux. – 2-е изд., перераб. и доп. – СПб.: БХВ-Петербург, 2007.

Слайд 8Учебная литература по курсу
Дополнительная:
14. Джеффри Р. Шапиро, Джим Бойс,

Марсин Полихт, Брайан Паттерсон, Скотт Лезерс. Windows Server 2003, Библия

пользователя.: Пер. с англ. – М.: Издательский дом «Вильямс», 2006. – 1216 с.: ил. – Парал. тит. англ.
15. Рассел Ч., Кроуфорд Ш, Джеренд Дж. Microsoft Server 2003. Справочник администратора. Пер. с англ. – М.: Издательство «Эком», 2006. – 1424 с.: ил.


Учебная литература по курсуДополнительная: 14. Джеффри Р. Шапиро, Джим Бойс, Марсин Полихт, Брайан Паттерсон, Скотт Лезерс. Windows

Слайд 9Учебные темы курса

Тема 1. Определение, назначение и структурно-функциональная организация

операционных систем
Тема 2. Организация вычислительного процесса
Тема 3. Управление памятью в

операционных системах
Тема 4. Подсистемы ввода/вывода и файловые системы
Тема 5. Интерфейсы операционных систем
Тема 6. Распределенная обработка в сетевых операционных системах
Тема 7. Администрирование и обеспечение безопасности в операционных системах
Тема 8. Современные операционные системы
Учебные темы курса Тема 1. Определение, назначение и структурно-функциональная организация операционных системТема 2. Организация вычислительного процессаТема 3.

Слайд 10Тема 1. Определение, назначение и структурно-функциональная организация операционных систем
1.1. Определение

операционной системы (ОС). Место ОС в программном обеспечении вычислительных систем
1.2.

Эволюция операционных систем
1.3. Назначение, состав и функции ОС
1.4. Архитектуры операционных систем
1.5. Классификация операционных систем
1.6. Эффективность и требования, предъявляемые к ОС
1.7. Множественные прикладные среды. Совместимость
1.8. Виртуальные машины и среды
Тема 1. Определение, назначение и структурно-функциональная организация операционных систем1.1. Определение операционной системы (ОС). Место ОС в программном

Слайд 111.1. Определение операционной системы (ОС). Место ОС в программном обеспечении

вычислительных систем
1946 г. – ENIAC (Electronic Numerical Integrator and Computer)

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



1.1. Определение операционной системы (ОС). Место ОС в программном обеспечении вычислительных систем1946 г. – ENIAC (Electronic Numerical

Слайд 121.1. Определение операционной системы (ОС). Место ОС в программном обеспечении

вычислительных систем
Начало 50-х г. – появление алгоритмических языков и системного

ПО.
Усложнение процесса выполнения программ:
1. Загрузка нужного транслятора.
2. Запуск транслятора и получение программы в машинных кодах.
3. Связывание программы с библиотечными подпрограммами.
4. Запуск программы на выполнение.
5. Вывод результатов работы на печатающее или другое устройство.
Для повышения эффективности использования ЭВМ вводятся операторы, управляющие организацией вычислительного процесса;
затем разрабатываются управляющие программы – мониторы - прообразы операционных систем – автоматизировали переход от задания к заданию.
1952 г. – Первая ОС создана исследовательской лабораторией фирмы General Motors для IBM-701.
1955 г. – ОС для IBM-704.



1.1. Определение операционной системы (ОС). Место ОС в программном обеспечении вычислительных системНачало 50-х г. – появление алгоритмических

Слайд 131.1. Определение операционной системы (ОС). Место ОС в программном обеспечении

вычислительных систем
Конец 50-х годов:
пакетная обработка одного потока задач;
наличие стандартных программ

ввода-вывода;
возможности автоматического перехода от программы к программе;
средства восстановления после ошибок – автоматическая «очистка» компьютера в случае аварийного завершения очередной задачи;
язык управления заданиями, предоставляющие возможность пользователям возможность описать свои задания и ресурсы, требуемые ими для исполнения.
Пакет представляет собой набор (колоду) перфокарт, организованную специальным образом (задание, программы, данные). Для ускорения работы он мог переноситься на магнитную ленту или диск.



1.1. Определение операционной системы (ОС). Место ОС в программном обеспечении вычислительных системКонец 50-х годов:пакетная обработка одного потока

Слайд 14
1963 г. – ОС MCP (Главная управляющая программа) для компьютеров

B5000 фирмы Burroughs: мультипрограммирование, мультипроцессорная обработка, виртуальная память, возможность отладки

программ на языке исходного уровня, сама ОС написана на языке высокого уровня.
1963 г. – ОС CTSS (Compatible Time Sharing System – совместимая система разделения времени для компьютера IBM 7094 – Массачусетский технологический институт.
1963 г. – ОС MULTICS (Multiplexed Information and Computing Service) – Массачусетский технологический институт.
1974 г. – (UNICS) UNIX (Uniplexed Information and Computing Service) для компьютера PDP-7, публикация статьи Ритчи (С) и Томпсона.
1981 г. – PC (IBM), DOS (Seattle Computer Products) – MS DOS (Б. Гейтс).
1983г. – Apple, Lisa с Apple, Lisa с GUI (Даг Энгельбарт – Стэнфорд).
1985 г. – Windows, X Windows и Motif (для UNIX).
1987 г. – MINIX (Э. Таненбаум) – 11800 стр. С и 800 ассемблер (микроядро – 1600 С и 800 ассемблер)
1991 г. – Linux (Линус Торвальдс).
1963 г. – ОС MCP (Главная управляющая программа) для компьютеров B5000 фирмы Burroughs: мультипрограммирование, мультипроцессорная обработка, виртуальная

Слайд 15
Физические устройства (контроллеры, шины, монитор и т. д.)

Микроархитектура (регистры ЦП,

АЛУ)


Утилиты

Компиляторы
Редакторы
Интерпретаторы команд

Прикладные программы

Конечный пользователь

Программист


Машинный язык (ISA – архитектура системы команд)

Операционная

система

Разработчик ОС

Расположение ОС в иерархической структуре программного и аппаратного обеспечения компьютера


Физические устройства (контроллеры, шины, монитор и т. д.)Микроархитектура (регистры ЦП, АЛУ)УтилитыКомпиляторыРедакторыИнтерпретаторы командПрикладные программыКонечный пользовательПрограммистМашинный язык (ISA –

Слайд 16Уровень - физические устройства
Самый нижний уровень содержит различные

устройства компьютера, состоящие из микросхем, проводников, источников питания, электронно-лучевых трубок

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



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

Слайд 172-й снизу уровень - микроархитектура
На микроархитектурном уровне

находятся внутренние регистры центрального процессора (их может быть несколько) и

арифметико-логические устройства со средствами управления ими. На этом уровне реализуется выполнение машинных команд. В процессе выполнения команд используются регистры процессора и устройств, а также другие возможности аппаратуры. Команды, видимые для работающего на ассемблере программиста, формируют уровень ISA (Instruction Set Architecture - архитектура системы команд), часто называемый машинном языком.



2-й снизу уровень - микроархитектура   На микроархитектурном уровне находятся внутренние регистры центрального процессора (их может

Слайд 183-й снизу уровень – операционная система – и выше

Операционная система:
скрывает от конечного пользователя устройство аппаратного обеспечения компьютера;
представляет

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



3-й снизу уровень – операционная система – и выше   Операционная система:скрывает от конечного пользователя устройство

Слайд 19
ОПЕРАЦИОННАЯ СИСТЕМА
- это комплекс программ, контролирующих работу прикладных программ

и системных приложений и исполняющих роль интерфейса между пользователями, программистами,

приложениями и аппаратным обеспечением компьютера.


ОПЕРАЦИОННАЯ СРЕДА


- программная среда, образуемая операционной системой, определяющая интерфейс прикладного программирования (API) как множество системных функций и сервисов (системных вызовов), предоставляемых прикладным программам.

ОПЕРАЦИОННАЯ ОБОЛОЧКА



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

ОПЕРАЦИОННАЯ СИСТЕМА - это комплекс программ, контролирующих работу прикладных программ и системных приложений и исполняющих роль интерфейса

Слайд 20ОПЕРАЦИОННАЯ СИСТЕМА


В соответствии с определением ОС выполняет две группы функций:
Предоставление

пользователю и программисту вместо реальной аппаратуры компьютера расширенной виртуальной машины,

с которой удобней работать и которую легче программировать;
Управление ресурсами компьютера с целью повышения эффективности его использования.
ОПЕРАЦИОННАЯ СИСТЕМАВ соответствии с определением ОС выполняет две группы функций:Предоставление пользователю и программисту вместо реальной аппаратуры компьютера

Слайд 21Операционная среда
Операционная среда может включать несколько интерфейсов прикладного

программирования.

Кроме основной операционной среды, называемой естественной

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



Операционная среда  Операционная среда может включать несколько интерфейсов прикладного программирования.    Кроме основной операционной

Слайд 221.2. Эволюция операционных систем

Многопрог-

1970 Динамическое распределение основной памяти
второе раммные Разделение времени, многотерминальные системы
UNIX (PDP-7), Ken Thompson
поколение ОС 1965 Управляемое мультипрограммирование
Классическое мультипрограммирование, OS/360
Однопрог- ОС CTSS (1963), MULTICS (начало работ)
раммные Оверлейные структуры
ОС Логическая система управления вводом-выводом
(первое 1960 Системы прерываний, контрольные точки
поколение) Управление файлами, таймеры
Спулинг (SPOOL)
Мониторы
1955 Методы доступа, полибуферизация
Загрузчики, редакторы связей
Отсутствие ОС 1950 Диагностические программы
(нулевое Ассемблеры, макрокоманды
поколение) Библиотеки подпрограмм
1946 Первый компьютер




1.2. Эволюция операционных систем

Слайд 231.2. Эволюция операционных систем
Базовое системное программное обеспечение:
библиотеки подпрограмм;
загрузчики и

редакторы связей;
диагностические программы (обеспечение работоспособности и облегчение процессов эксплуатации ЭВМ),
программы

методов доступа, затем принцип полибуферизации.



1.2. Эволюция операционных систем Базовое системное программное обеспечение:библиотеки подпрограмм;загрузчики и редакторы связей;диагностические программы (обеспечение работоспособности и облегчение

Слайд 241.2. Эволюция операционных систем
Мониторы:
ОС ранней пакетной обработки – вся

ОЗУ предоставлялась текущей задаче,
ОС с разделением ОЗУ на три

области: фиксированная область монитора, область пользователя и область общей памяти.

Спуллинг – реализация ввода вывода без участия центрального процессора.



1.2. Эволюция операционных системМониторы: ОС ранней пакетной обработки – вся ОЗУ предоставлялась текущей задаче, ОС с разделением

Слайд 251.2. Эволюция операционных систем
Аппаратные разработки - система прерываний,

таймеры, каналы. Исполнительные системы, реализующие однопрограммную пакетную обработку.

Эти исполнительные системы представляли собой набор программ для распределения ресурсов ЭВМ, связей с оператором, управления вычислительным процессом и управления вводом-выводом.



1.2. Эволюция операционных систем  Аппаратные разработки - система прерываний, таймеры, каналы. Исполнительные системы, реализующие однопрограммную пакетную

Слайд 261.2. Эволюция операционных систем
Эти системы предоставляли пользователю контрольные

точки, логические таймеры, возможность построения программ оверлейной структуры, обнаружение нарушений

программами ограничений, принятых в системе, управление файлами, сбор учетной информации и др.



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

Слайд 271.2. Эволюция операционных систем
Дальнейшее развитие - мультипрограммирование -

способ организации вычислительного процесса, при котором в памяти компьютера находится

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



1.2. Эволюция операционных систем  Дальнейшее развитие - мультипрограммирование - способ организации вычислительного процесса, при котором в

Слайд 281.2. Эволюция операционных систем
Появление различных форм мультипрограммных режимов

работы, в том числе разделение времени - режим, обеспечивающий работу

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



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

Слайд 291.2. Эволюция операционных систем
Операционная система становится «неотъемлемой частью

ЭВМ», как бы продолжением аппаратуры.

В процессорах появились привилегированный

(Супервизор в OS/360) и пользовательский (Задача в OS/360) режимы работы, мощная система прерываний, защита памяти, специальные регистры для быстрого переключения программ, средства поддержки виртуальной памяти и др.



1.2. Эволюция операционных систем  Операционная система становится «неотъемлемой частью ЭВМ», как бы продолжением аппаратуры.  В

Слайд 30
распре-

2003 Windows 2003
делен- .NET Framework, MAC OS X
ные 2000 Windows 2000
ОС Windows 4.0 – 1996
1995 Windows 95
много- четвертое Корпоративные информационные системы
процес- поколение NetWare 4.0 – 93, Windows NT 3.1 – 93
сорные ОС Linux 0.01 - 1993
ОС 1990 MINIX – 87 (11800 стр. С + 800 стр. Asm.)
сетевые много- OS/2 - 87
ОС машинные 1985 OS-Net (Novell) - 83, MS-Net - 84, Windows 1.0 – 85
ОС Интернет (1983), Персональные компьютеры (1981)
MS DOS 1.0 – (1981)
1980 Сети ЭВМ, UNIX, TCP/IP
третье Локальные сети
поколение 1975 SNA (System Network Architecture), MULTICS
ОС Протокол X.25, телеобработка, базы данных
1965 Виртуальная ЭВМ, Виртуальная память






2005 Windows 2003, 64-разрядная

2007 Windows Vista, Windows 7

распре-

Слайд 311.2. Эволюция операционных систем
В начале 70-х годов появились

первые сетевые ОС, которые позволили не только рассредоточить пользователей, как

в системах телеобработки данных, но и организовать распределенное хранение и обработку данных между компьютерами, соединенными электрическими связями.
Доступность мини-компьютеров послужила стимулом для создания локальных сетей. В простейших ЛВС компьютеры соединялись через последовательные порты.



1.2. Эволюция операционных систем  В начале 70-х годов появились первые сетевые ОС, которые позволили не только

Слайд 321.2. Эволюция операционных систем
Дальнейшее развитие сетевых систем связано

со стеком протоколов TCP/IP.
В 1983 году он был

принят МО США в качестве стандарта и использован в сети ARPANET.
В этом же году ARPANET разделилась на MILNET (для военного ведомства США) и новую ARPANET, которую стали называть Internet.



1.2. Эволюция операционных систем  Дальнейшее развитие сетевых систем связано со стеком протоколов TCP/IP.  В 1983

Слайд 331.2. Эволюция операционных систем
Появление в начале 80-х годов

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

в результате поддержка сетевых функций стала для ОС ПК необходимым условием.
Наиболее популярной версией ОС раннего этапа развития персональных компьютеров была MS DOS компании Microsoft - однопрограммная, однопользовательская ОС с интерфейсом командной строки.



1.2. Эволюция операционных систем  Появление в начале 80-х годов персональных компьютеров. Они послужили мощным толчком для

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

пользователю, в этой ОС предоставлялись дополнительными программами - оболочкой Norton

Commander, PC Tools и др.
Сетевые функции также реализовались с помощью сетевых оболочек.



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

Слайд 351.2. Эволюция операционных систем
Дальнейшее развитие приводит к созданию

ОС со встроенными в ядро сетевыми функциями. ОС становятся многозадачными,

многопользовательскими, с развитым графическим интерфейсом и поддержкой сетей.
Формируются стандарты на коммуникационные технологии для ЛВС.



1.2. Эволюция операционных систем  Дальнейшее развитие приводит к созданию ОС со встроенными в ядро сетевыми функциями.

Слайд 361.2. Эволюция операционных систем
Появление и развитие корпоративных сетевых

операционных систем.
Корпоративные ОС должны хорошо и устойчиво работать

в крупных сетях, которые характерны для масштабных организаций (предприятий, банков и т. п.), имеющих отделения во многих городах и, возможно, в разных странах.



1.2. Эволюция операционных систем  Появление и развитие корпоративных сетевых операционных систем.  Корпоративные ОС должны хорошо

Слайд 371.2. Эволюция операционных систем
Корпоративная ОС должна беспроблемно

взаимодействовать с ОС разного типа и работать на различных аппаратных

платформах.
Сейчас определилась тройка лидеров в классе корпоративных ОС - это Novell NetWare 6.0, MS Windows NT 4.0 и Windows 2000/2003, a также UNIX-системы.



1.2. Эволюция операционных систем   Корпоративная ОС должна беспроблемно взаимодействовать с ОС разного типа и работать

Слайд 38Операционные системы IBM
1. BPS/360 (Базовая программная поддержка)
2. BOS/360 (Базовая операционная

система)
3. TOS/360 (Ленточная операционная система)
4. DOS/360 (Дисковая операционная система)
5. OS/360

– PCP (Первичная управляющая программа)
6. OS/360 – MFT (Мультипрограммирование с фиксированным числом задач)
7. OS/360 – MVT (Мультипрограммирование с переменным числом задач)
8. OS/360 – VMS (Система с переменной памятью)
9. CP-67/CMS (Управляющая программа 67/ диалоговая мониторная система)
10. DOS/VS (Дисковая виртуальная система)
11. OS/VS1 (Виртуальная система 1)
12. OS/VS2 (Виртуальная система 2)
13. VM/370 (Виртуальная машина)





Операционные системы IBM1. BPS/360 (Базовая программная поддержка)2. BOS/360 (Базовая операционная система)3. TOS/360 (Ленточная операционная система)4. DOS/360 (Дисковая

Слайд 391.3. Назначение, состав и функции ОС
Назначение
1. Обеспечение удобного интерфейса [приложения,

пользователь] компьютера за счет предоставляемых сервисов:
1.1. Инструменты для разработки

программ: редакторы, трансляторы, отладчики и т.д.
1.2. Автоматизация исполнения программ
1.3. Единообразный интерфейс доступа к устройствам ввода-вывода
1.4. Контролируемый доступ к файлам
1.5. Управление доступом к совместно используемой ЭВМ и ее ресурсам
1.6. Обнаружение ошибок и их обработка
1.7. Учет использования ресурсов
1.3. Назначение, состав и функции ОС Назначение1. Обеспечение удобного интерфейса [приложения, пользователь] компьютера за счет предоставляемых сервисов:

Слайд 401.3. Назначение, состав и функции ОС
Назначение

Реальная машина, способная выполнить только небольшой набор элементарных действий (машинных

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

Слайд 411.3. Назначение, состав и функции ОС
Назначение


Таким образом, назначение ОС состоит в

предоставлении пользователю (программисту) некоторой расширенной виртуальной машины, которую легче программировать и с которой легче работать, чем непосредственно с аппаратурой, составляющей реальный компьютер, систему или сеть.
1.3. Назначение, состав и функции ОС    Назначение      Таким образом,

Слайд 421.3. Назначение, состав и функции ОС
Назначение
2. Организация эффективного использования ресурсов

ЭВМ
2.1. Планирование использования ресурса
2.2. Удовлетворение запросов на ресурсы

2.3. Отслеживание состояния и учет использования ресурса
2.4. Разрешение конфликтов между процессами, претендующими на одни и те же ресурсы
1.3. Назначение, состав и функции ОС Назначение2. Организация эффективного использования ресурсов ЭВМ 2.1. Планирование использования ресурса 2.2.

Слайд 431.3. Назначение, состав и функции ОС
Назначение
ОС является

своеобразным диспетчером ресурсов компьютера.
К числу основных ресурсов

современных вычислительных систем относятся процессоры, основная память, таймеры, наборы данных, диски, накопители на МЛ, принтеры, сетевые устройства и др.
Ресурсы распределяются операционной системой между выполняемыми программами.
1.3. Назначение, состав и функции ОС Назначение   ОС является своеобразным диспетчером ресурсов компьютера.

Слайд 441.3. Назначение, состав и функции ОС
Назначение
В отличие от

программы, которая является статическим объектом, выполняемая программа - это динамический

объект, такой объект называется процессом и является базовым понятием современных ОС.
Управление ресурсами вычислительной системы с целью наиболее эффективного их использования является вторым назначением операционной системы.
Критерий эффективности, в соответствии с которым ОС организует управление ресурсами компьютера, может быть различным.
1.3. Назначение, состав и функции ОС Назначение  В отличие от программы, которая является статическим объектом, выполняемая

Слайд 45Назначение
3. Облегчение процессов эксплуатации аппаратных и программных средств вычислительной системы
3.1.

Широкий набор служебных программ (утилит), обеспечивающих резервное копирование, архивацию данных,

проверку, очистку, дефрагментацию дисковых устройств и др.
3.2. Средства диагностики и восстановления работоспособности вычислительной системы и операционной системы:
- диагностические программы для выявления ошибок в конфигурации ОС;
- средства восстановления последней работоспособной конфигурации;
- средства восстановления поврежденных и пропавших системных файлов и др.
Назначение3. Облегчение процессов эксплуатации аппаратных и программных средств вычислительной системы3.1. Широкий набор служебных программ (утилит), обеспечивающих резервное

Слайд 46Назначение
4. Возможность развития
4.1. Обновление и возникновение новых видов аппаратного обеспечения
4.2.

Новые сервисы (включение дополнительных функций)
4.3. Исправления (обнаружение программных ошибок)
4.4. Новые

версии и редакции ОС
Назначение4. Возможность развития4.1. Обновление и возникновение новых видов аппаратного обеспечения4.2. Новые сервисы (включение дополнительных функций)4.3. Исправления (обнаружение

Слайд 47
Состав компонентов и функции операционной системы:
1. Управление процессами
2. Управление памятью
3.

Управление файлами
4. Управление внешними устройствами
5. Защита данных
6. Администрирование
7. Интерфейс прикладного

программирования
8. Пользовательский интерфейс

Состав компонентов и функции операционной системы:1. Управление процессами2. Управление памятью3. Управление файлами4. Управление внешними устройствами5. Защита данных6.

Слайд 48 Для каждой выполняемой программы ОС организует один или

более процессов. Каждый такой процесс представляется в ОС информационной структурой

(таблицей, дескриптором, контекстом процессора), содержащей данные о потребностях процесса в ресурсах, а также о фактически выделенных ему ресурсах (области оперативной памяти, количестве процессорного времени, файлах, устройствах ввода-вывода и др.).

Управление процессами

Для каждой выполняемой программы ОС организует один или более процессов. Каждый такой процесс представляется в

Слайд 49 Кроме того, в этой информационной структуре хранятся данные,

характеризующие историю пребывания процесса в системе: текущее состояние (активное или

заблокированное), приоритет, состояние регистров, программного счетчика и др.

Управление процессами

Кроме того, в этой информационной структуре хранятся данные, характеризующие историю пребывания процесса в системе: текущее

Слайд 50 В современных мультипрограммных ОС может существовать одновременно несколько

процессов, порожденных по инициативе пользователей и их приложений, а также

инициированных ОС для выполнения своих функций (системные процессы).

Управление процессами

В современных мультипрограммных ОС может существовать одновременно несколько процессов, порожденных по инициативе пользователей и их

Слайд 51 Поскольку процессы могут одновременно претендовать на одни и

те же ресурсы, подсистема управления процессами планирует очередность выполнения процессов,

обеспечивает их необходимыми ресурсами, осуществляет взаимодействие и синхронизацию процессов.

Управление процессами

Поскольку процессы могут одновременно претендовать на одни и те же ресурсы, подсистема управления процессами планирует

Слайд 52 Подсистема управления памятью производит распределение физической памяти между всеми

существующими в системе процессами, загрузку и удаление программных кодов и

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

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

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

Слайд 53 Стратегия управления памятью складывается из стратегий выборки, размещения и

замещения блока программы или данных в основной памяти.
Управление памятью

Стратегия управления памятью складывается из стратегий выборки, размещения и замещения блока программы или данных в основной

Слайд 54 Одним из наиболее популярных способов управления памятью в

современных ОС является виртуальная память.
Реализация механизма виртуальной памяти

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

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

Одним из наиболее популярных способов управления памятью в современных ОС является виртуальная память.  Реализация

Слайд 55 Важная функция управления памятью - защита памяти.

Нарушение в защите памяти связано с обращениями процессов к участкам

памяти, выделенной другими процессами прикладных программ или программ самой ОС.
Средства защиты памяти должны пресекать такие попытки доступа путем аварийного завершения программы нарушителя.

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

Важная функция управления памятью - защита памяти.  Нарушение в защите памяти связано с обращениями

Слайд 56 Функции управления файлами сосредоточены в файловой системе ОС.

Операционная система виртуализирует отдельный набор данных, хранящихся на внешнем

накопителе, в виде файла - простой неструктурированной последовательности байтов, имеющих символьное имя.
Для удобства работы с данными файлы группируются в каталоги, которые, в свою очередь, образуют группы - каталоги более высокого уровня.

Управление файлами

Функции управления файлами сосредоточены в файловой системе ОС.  Операционная система виртуализирует отдельный набор данных,

Слайд 57 Файловая система преобразует символьные имена файлов, с которыми

работает пользователь или программист, в физические адреса данных на дисках,

организует совместный доступ к файлам, защищает их от несанкционированного доступа.

Управление файлами

Файловая система преобразует символьные имена файлов, с которыми работает пользователь или программист, в физические адреса

Слайд 58 Функции управления внешними устройствами возлагаются на подсистему управления

внешними устройствами, называемую также подсистемой ввода-вывода.
Она является интерфейсом

между ядром компьютера и всеми подключенными к нему устройствами.
Спектр этих устройств очень обширен: принтеры, сканеры, мониторы, модемы, манипуляторы, сетевые адаптеры, АЦП разного рода и др.

Управление внешними устройствами

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

Слайд 59 Программа, управляющая конкретной моделью внешнего устройства и учитывающая

все его особенности, называется драйвером.
ОС должна поддерживать четко

определенный интерфейс между драйверами и остальными частями ОС.
Тогда разработчики компаний - производителей устройств ввода-вывода могут поставлять вместе со своими устройствами драйверы для конкретной операционной системы.

Управление внешними устройствами

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

Слайд 60 Поддержание высокоуровневого унифицированного интерфейса прикладного программирования к разнообразным

устройствам ввода-вывода является одной из наиболее важных задач ОС.

Как правило, такой интерфейс строится на основе концепции файлового доступа.
Ее суть заключается в том, что обмен с любыми внешними устройствами выглядит как обмен с файлами, имеющими имя и представляющими собой неструктурированную последовательность байтов.

Управление внешними устройствами

Поддержание высокоуровневого унифицированного интерфейса прикладного программирования к разнообразным устройствам ввода-вывода является одной из наиболее важных

Слайд 61 Безопасность данных вычислительной системы обеспечивается средствами отказоустойчивости ОС,

направленными на защиту от сбоев и отказов аппаратуры и ошибок

программного обеспечения, а также средствами защиты от несанкционированного доступа.

Защита данных и администрирование

Безопасность данных вычислительной системы обеспечивается средствами отказоустойчивости ОС, направленными на защиту от сбоев и отказов

Слайд 62 Для каждого пользователя системы обязательна процедура логического входа,

в процессе которой ОС убеждается, что в систему входит пользователь,

разрешенный административной службой.
Администратор вычислительной системы определяет и ограничивает возможности пользователей в выполнении тех или иных действий, т. е. определяет их права по обращению и использованию ресурсов системы.

Защита данных и администрирование

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

Слайд 63 Важным средством защиты являются функции аудита ОС, заключающегося

в фиксации всех событий, от которых зависит безопасность системы.
Защита данных

и администрирование
Важным средством защиты являются функции аудита ОС, заключающегося в фиксации всех событий, от которых зависит

Слайд 64 Поддержка отказоустойчивости вычислительной системы реализуется на основе резервирования

(дисковые RAID-массивы, резервные принтеры и другие устройства, иногда резервирование центральных

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

Защита данных и администрирование

Поддержка отказоустойчивости вычислительной системы реализуется на основе резервирования (дисковые RAID-массивы, резервные принтеры и другие устройства,

Слайд 65 Прикладные программисты используют в своих приложениях обращения к

операционной системе, когда для выполнения тех или иных действий им

требуется особый статус, которым обладает только ОС.

Интерфейс прикладного программирования

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

Слайд 66 Возможности операционной системы доступны программисту в виде набора

функций, который называется интерфейсом прикладного программирования (Application Programming Interface, API).

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

Интерфейс прикладного программирования

Возможности операционной системы доступны программисту в виде набора функций, который называется интерфейсом прикладного программирования (Application

Слайд 67 Способ реализации системных вызовов зависит от структурной организации

ОС, особенностей аппаратной платформы и языка программирования.
В ОС UNIX

системные вызовы почти идентичны библиотечным процедурам. Ситуация в Windows иная.

Интерфейс прикладного программирования

Способ реализации системных вызовов зависит от структурной организации ОС, особенностей аппаратной платформы и языка программирования.

Слайд 68 В ранних ОС пользовательский интерфейс сводился к языку

управления заданиями и не требовал терминала.
Команды языка управления

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

Пользовательский интерфейс

В ранних ОС пользовательский интерфейс сводился к языку управления заданиями и не требовал терминала.

Слайд 69 Современные ОС поддерживают развитые функции пользовательского интерфейса для

интерактивной работы за терминалами двух типов: алфавитно-цифровыми и графическими.

При работе за алфавитно-цифровым терминалом пользователь имеет в своем распоряжении систему команд, развитость которой отражает функциональные возможности данной ОС.

Пользовательский интерфейс

Современные ОС поддерживают развитые функции пользовательского интерфейса для интерактивной работы за терминалами двух типов: алфавитно-цифровыми

Слайд 70 Обычно командный язык ОС позволяет запускать и останавливать

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

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

Пользовательский интерфейс

Обычно командный язык ОС позволяет запускать и останавливать приложения, выполнять различные операции с каталогами и

Слайд 71 Программный модуль ОС, ответственный за чтение отдельных команд

или же последовательности команд из командного файла, иногда называют командным

интерпретатором (в MS DOS - командным процессором).
Вычислительные системы, управляемые из командной строки, например, UNIX-системы имеют командный интерпретатор, называемый оболочкой (Shell).

Пользовательский интерфейс

Программный модуль ОС, ответственный за чтение отдельных команд или же последовательности команд из командного файла,

Слайд 72 Она собственно не входит в состав ОС, но

пользуется многими функциями операционной системы.
Когда какой-либо пользователь входит

в систему, запускается оболочка.
Стандартным терминалом для нее является монитор с клавиатурой.
Оболочка начинает работу с печати приглашения (prompt) - знака доллара (или иного знака), говорящего пользователю, что оболочка ожидает ввода команды (аналогично управляется MS DOS).

Пользовательский интерфейс

Она собственно не входит в состав ОС, но пользуется многими функциями операционной системы.  Когда

Слайд 73 Если теперь пользователь напечатает какую-либо команду, оболочка создает

системный вызов и ОС выполнит эту команду.
После завершения

оболочка опять печатает приглашение и пытается прочесть следующую входную строку.

Пользовательский интерфейс

Если теперь пользователь напечатает какую-либо команду, оболочка создает системный вызов и ОС выполнит эту команду.

Слайд 74 Ввод команд может быть упрощен, если операционная система

поддерживает графический пользовательский интерфейс.
В этом случае пользователь выбирает

на экране нужный пункт меню или графический символ (так это происходит, например, в ОС Windows).

Пользовательский интерфейс

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

Слайд 751.4. Архитектуры операционных систем
Под архитектурной операционной системы понимают

структурную и функциональную организацию ОС на основе некоторой совокупности программных

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

Слайд 761.4. Архитектуры операционных систем
На архитектуру ранних операционных систем

обращалось мало внимания: во-первых, ни у кого не было опыта

в разработке больших программных систем, а во-вторых, проблема взаимозависимости и взаимодействия модулей недооценивалась. В подобных монолитных ОС почти все процедуры могли вызывать одна другую. Такое отсутствие структуры было несовместимо с расширением операционных систем. Первая версия ОС OS/360 была создана коллективом из 5000 человек за 5 лет и содержала более 1 млн. строк кода. Разработанная несколько позже операционная система Multics содержала к 1975 году уже 20 млн. строк. Стало ясно, что разработка таких систем должна вестись на основе модульного программирования.
1.4. Архитектуры операционных систем  На архитектуру ранних операционных систем обращалось мало внимания: во-первых, ни у кого

Слайд 771.4. Архитектуры операционных систем
ОСНОВНЫЕ ПРИНЦИПЫ РАЗРАБОТКИ АРХИТЕКТУРЫ ОПЕРАЦИОННЫХ СИСТЕМ:
1. Концепция

многоуровневой иерархической вычислительной системы (виртуальной машины) с ОС многослойной структуры.
2.

Разделение модулей ОС по функциям на две группы: ядро – модули, выполняющие основные функции ОС, и модули, выполняющие остальные (вспомогательные) функции.
3. Разделение модулей ОС по размещению в памяти вычислительной системы: резидентные, постоянно находящиеся в оперативной памяти, и транзитные, загружаемые в оперативную память только на время выполнения своих функций.
1.4. Архитектуры операционных системОСНОВНЫЕ ПРИНЦИПЫ РАЗРАБОТКИ АРХИТЕКТУРЫ ОПЕРАЦИОННЫХ СИСТЕМ:1. Концепция многоуровневой иерархической вычислительной системы (виртуальной машины) с

Слайд 781.4. Архитектуры операционных систем
4. Реализация двух режимов работы вычислительной системы:

привилегированного режима (режима ядра – kernel mode) или режима супервизора

(supervisor) и пользовательского режима (user mode) или режима задача (task mode).
5. Ограничение функций ядра (а, следовательно и числа его модулей) до минимально необходимых функций.
1.4. Архитектуры операционных систем4. Реализация двух режимов работы вычислительной системы: привилегированного режима (режима ядра – kernel mode)

Слайд 796. Модульное строение (однократно используемые – при загрузке ОС и

повторно используемые) (привилегированные – не допускают прерываний, реентерабельные – допускают

прерывания и повторный запуск, повторновходимые – допускают прерывания после завершения секций).
7. Параметрическая универсальность. Возможность генерации ОС и создания нескольких рабочих конфигураций.
8. Функциональная избыточность.
9. Функциональная избирательность.
10. Открытость, модифицируемость, расширяемость (возможность получения текстов исходных модулей).
6. Модульное строение (однократно используемые – при загрузке ОС и повторно используемые) (привилегированные – не допускают прерываний,

Слайд 8011. Мобильность – возможность переноса на различные аппаратные платформы.
12. Совместимость

– возможность выполнения приложений, рассчитанных на другие ОС.
13. Безопасность –

защита от несанкционированного доступа, защита легальных пользователей друг от друга, аудит, возможность восстановления ОС после сбоев и отказов.
11. Мобильность – возможность переноса на различные аппаратные платформы.12. Совместимость – возможность выполнения приложений, рассчитанных на другие

Слайд 81



Модульно – интерфейсный подход (структурный подход)
1. Декомпозиция системы на модули

по структурному или функциональному признаку.
2. Модули и их взаимные связи

образуют абстракцию системы высокого уровня.
3. Описывается каждый модуль и определяется его интерфейс.
4. Проводится декомпозиция каждого модуля и т. д.

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

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

Модульно – интерфейсный подход (структурный подход)1. Декомпозиция системы на модули по структурному или функциональному признаку.2. Модули и

Слайд 82
Монолитная архитектура операционной системы
От приложений
системный интерфейс










А п п а

р а т у р а

Модули
ОС
Пример: ранние версии ядра

UNIX, Novell NetWare. Каждая процедура имеет хорошо определенный интерфейс в терминах параметров и результатов и может вызвать любую другую для выполнения нужной работы.
Монолитная архитектура операционной системыОт приложенийсистемный  интерфейсА п п а р а т у р а МодулиОСПример:

Слайд 83Монолитная архитектура операционной системы
Для построения монолитной системы необходимо

скомпилировать все отдельные процедуры, а затем связать их вместе в

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

Слайд 84Монолитная архитектура операционной системы
При обращении к системным вызовам,

поддерживаемым ОС, параметры помещаются в строго определенные места, такие как

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

Слайд 85Монолитная архитектура операционной системы
Такая организация ОС предполагает следующую

структуру:
главная программа, которая вызывает требуемые сервисные процедуры;
набор сервисных

процедур, реализующих системные вызовы;
набор утилит, обслуживающих сервисные процедуры.
Монолитная архитектура операционной системы  Такая организация ОС предполагает следующую структуру: главная программа, которая вызывает требуемые сервисные

Слайд 87Классическая архитектура ОС
Классической считается архитектура ОС, основанная на

концепции иерархической многоуровневой машины, привилегированном ядре и пользовательском режиме работы

транзитных модулей.
Модули ядра выполняют базовые функции ОС: управление процессами, памятью, устройствами ввода-вывода и т. п.
Ядро составляет сердцевину ОС, в ядре решаются внутрисистемные задачи организации вычислительного процесса, недоступные для приложения.
Классическая архитектура ОС  Классической считается архитектура ОС, основанная на концепции иерархической многоуровневой машины, привилегированном ядре и

Слайд 88Классическая архитектура ОС
Особый класс функций ядра служит для

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

Приложения могут обращаться к ядру с запросами - системными вызовами - для выполнения тех или иных действий, например открытия и чтения файла, получения системного времени, вывода информации на дисплей и т. д.
Функции ядра, которые могут вызываться приложениями, образуют интерфейс прикладного программирования - API (Application Programming Interface).
Классическая архитектура ОС  Особый класс функций ядра служит для поддержки приложений, создавая для них так называемою

Слайд 89Классическая архитектура ОС
Для обеспечения высокой скорости работы ОС

модули ядра (по крайней мере большая их часть) являются резидентными

и работают в привилегированном режиме (Kernel mode).
Этот режим обеспечивает:
безопасность работы самой ОС от вмешательства приложений;
возможность работы модулей ядра с полным набором машинных инструкций, позволяющих собственно ядру выполнять управление ресурсами компьютера, в частности переключение процессора с задачи на задачу, управление устройствами ввода-вывода, распределение и защиту памяти и др.
Классическая архитектура ОС  Для обеспечения высокой скорости работы ОС модули ядра (по крайней мере большая их

Слайд 90Классическая архитектура ОС
Остальные модули ОС выполняют не столь

важные, как ядро, функции и являются транзитными. Например, это могут

быть программы архивирования данных, дефраг-ментации диска, сжатия дисков, очистки дисков и т. п,
Вспомогательные модули обычно подразделяются на группы:
утилиты - программы, выполняющие отдельные задачи управления и сопровождения вычислительной системы (служебные программы и установка оборудования, специальные возможности и др. в Windows 2000);
Классическая архитектура ОС  Остальные модули ОС выполняют не столь важные, как ядро, функции и являются транзитными.

Слайд 91Классическая архитектура ОС
системные обрабатывающие программы - текстовые и графические

редакторы (Paint, Imaging в Windows 2000), компиляторы и др.;
программы

предоставления пользователю дополнительных услуг (специальный вариант пользовательского интерфейса, калькулятор, игры, средства мультимедиа Windows 2000);
библиотеки процедур различного назначения, упрощения разработки приложений, например библиотека функций ввода-вывода, библиотека математических функций и т. п.
Классическая архитектура ОС системные обрабатывающие программы - текстовые и графические редакторы (Paint, Imaging в Windows 2000), компиляторы

Слайд 92Классическая архитектура ОС
Эти модули ОС оформляются как обычные

приложения, обращаются к функциям ядра посредством системных вызовов и выполняются

в пользовательском режиме (user mode).
В этом режиме запрещается выполнение некоторых команд, которые связаны с функциями ядра ОС (управление ресурсами, распределение и защита памяти и т. п.).
Классическая архитектура ОС  Эти модули ОС оформляются как обычные приложения, обращаются к функциям ядра посредством системных

Слайд 93Классическая архитектура ОС

Классическая архитектура ОС

Слайд 94
Многослойная (иерархическая) структура операционной системы и метод проектирования «сверху вниз»

и «снизу вверх»
Операционная система представляется в виде иерархии слоев.
Верхний слой

определяет виртуальную машину с желаемыми свойствами.
Каждый следующий слой детализирует вышележащий, выполняя для него некоторый набор функций.
Межслойные интерфейсы подчиняются строгим правилам. Связи внутри слоя могут быть произвольными.
Отдельный модуль слоя L(i) может выполнить работу самостоятельно или последующим вариантам: обратиться только к слою L(i –1); обратиться к некоторой команде определенного слоя L(q), который выполняет требуемую функцию; обратиться к любому последующему слою L(s).

1. Между уровнями можно организовать четкий интерфейс. 2. Систему можно спроектировать методом «сверху вниз», а реализовать методом «снизу вверх». 3. Уровни реализуются в соответствии с их порядком, начиная с аппаратуры и далее вверх. 4. Каждую новую виртуальную машину можно детально проверить, после чего продолжать дальнейшую работу. 5. Любой слой достаточно просто модифицировать, не затрагивая другие слои и не меняя межслойные интерфейсы.

Достоинства:

Многослойная (иерархическая) структура операционной системы и метод проектирования «сверху вниз» и «снизу вверх»Операционная система представляется в виде

Слайд 95АРХИТЕКТУРА МНОГОУРОВНЕВОЙ ОПЕРАЦИОННОЙ СИСТЕМЫ
При такой организации каждый слой

обслуживает вышележащий слой, выполняя для него некоторый набор функций, которые

образуют межслойный интерфейс.
На основе этих функций следующий верхний по иерархии слой строит свои функции - более сложные и более мощные и т. д.
АРХИТЕКТУРА МНОГОУРОВНЕВОЙ ОПЕРАЦИОННОЙ СИСТЕМЫ   При такой организации каждый слой обслуживает вышележащий слой, выполняя для него

Слайд 96










Аппаратура
Средства апп.
поддержки ОС
Машинно-зависимые
модули ядра ОС
Базовые механизмы
ядра

Менеджеры ресурсов
Файловая

сис., вирт. память и др.
Интерфейс системных
вызовов API
Утилиты, системные программы
Приложения пользователей
АРХИТЕКТУРА

МНОГОУРОВНЕВОЙ ОПЕРАЦИОННОЙ СИСТЕМЫ
АппаратураСредства апп.   поддержки ОСМашинно-зависимыемодули ядра ОСБазовые механизмыядраМенеджеры ресурсовФайловая сис., вирт. память и др.Интерфейс системныхвызовов APIУтилиты,

Слайд 97Средства аппаратной поддержки ОС
Значительная часть функций ОС может

выполняться аппаратными средствами.
Чисто программные ОС сейчас не существуют.

Как правило, в современных системах всегда есть средство аппаратной поддержки ОС, которые прямо участвуют в организации вычислительных процессов.
К ним относятся: система прерываний, средства поддержки привилегированного режима, средства поддержки виртуальной памяти, системный таймер, средство переключения контекстов процессов (информация о состоянии процесса в момент его приостановки), средство защиты памяти и др.
Средства аппаратной поддержки ОС  Значительная часть функций ОС может выполняться аппаратными средствами.  Чисто программные ОС

Слайд 98Машинно-зависимые модули ОС
Этот слой образует модули, в которых

отражается специфика аппаратной платформы компьютера.
Назначение этого слоя -

«экранирование» вышележащих слоев ОС от особенностей аппаратуры (например, в Windows 2000 это слой HAL - Hardware Abstraction Layer - уровень аппаратных абстракций) и др.
Машинно-зависимые модули ОС  Этот слой образует модули, в которых отражается специфика аппаратной платформы компьютера.  Назначение

Слайд 99Базовые механизмы ядра
Этот слой модулей выполняет наиболее примитивные

операции ядра: программное переключение контекстов процессов, диспетчерскую прерываний, перемещение страниц

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

Слайд 100Менеджеры ресурсов
Модули этого слоя выполняют стратегические задачи по

управлению ресурсами вычислительной системы.
Это менеджеры (диспетчеры) процессов, ввода-вывода,

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

Слайд 101Интерфейс системных вызовов
Это верхний слой ядра ОС, взаимодействующий

с приложениями и системными утилитами, он образует прикладной программный интерфейс

ОС.
Функции API, обслуживающие системные вызовы, предоставляют доступ к ресурсам системы в удобной компактной форме, без указания деталей их физического расположения.
Интерфейс системных вызовов  Это верхний слой ядра ОС, взаимодействующий с приложениями и системными утилитами, он образует

Слайд 102
Смена режимов при выполнении вызова функции ядра
Работа приложения
Системный вызов
Пользовательский режим
Привилегированный

режим
Работаядра
Время переключения режимов

t
t

Недостатки иерархической организации ОС: 1. Значительные изменения одного из уровней могут иметь трудно предвидимое влияние на смежные уровни. 2. Многочисленные взаимодействия между соседними уровнями усложняют обеспечение безопасности.

Смена режимов при выполнении вызова функции ядраРабота приложенияСистемный вызовПользовательский режимПривилегированный режим РаботаядраВремя переключения режимов tt

Слайд 103Микроядерная архитектура ОС
Аппаратура
Средства аппаратной поддержки ОС
Средства аппаратной поддержки ОС
Аппаратура




МИКРОЯДРО

(режим ядра)
Машинно-зависимые модули
Базовые механизмы ядра








Утилиты. Системные программы
Приложения пользователей
Средства

аппаратной поддержки ОС

Аппаратура

API







Сервер безопасности



ыыы



Файловая система

Драйвер устройств

Менеджер процессов


Менеджер виртуальной памяти

Интерфейс системы ввода-вывода

Утилиты ОС, приложения

РЕЖИМ ЯДРА

Пользовательский режим


Микроядерная архитектура ОСАппаратураСредства аппаратной поддержки ОССредства аппаратной поддержки ОСАппаратураМИКРОЯДРО  (режим ядра) Машинно-зависимые модулиБазовые механизмы ядраУтилиты.

Слайд 104Микроядерная архитектура ОС
В привилегированном режиме остается работать только

очень небольшая часть ОС, называемая микроядром.
Микроядро защищено от

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

Слайд 105Микроядерная архитектура ОС
Так менеджеры ресурсов, являющиеся неотъемлемой частью

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

Таким образом, в архитектуре с микроядром традиционное расположение уровней по вертикали заменяется горизонтальным.
Внешние по отношению к микроядру компоненты ОС реализуются как обслуживающие процессы.
Они взаимодействуют как равноправные партнеры с помощью обмена сообщениями, которые передаются через микроядро.
Микроядерная архитектура ОС  Так менеджеры ресурсов, являющиеся неотъемлемой частью обычного ядра, становятся «периферийными» модулями, работающими в

Слайд 106Микроядерная архитектура ОС
Поскольку назначением этих компонентов ОС является

обслуживание запросов приложений пользователей, утилит и системных обрабатывающих программ, менеджеры

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

Слайд 107Структура ОС клиент-сервер


Приложение







А П П А Р А Т У

Р А
МИКРОЯДРО
Сервер
памяти
Файл-
сервер
Принт-
сервер
РЕЖИМ ПОЛЬЗОВАТЕЛЯ
РЕЖИМ ЯДРА
Запрос
Ответ
Запрос
Ответ
Сервер
процессов

Структура ОС клиент-серверПриложениеА П П А Р А Т У Р АМИКРОЯДРОСерверпамятиФайл-серверПринт-серверРЕЖИМ  ПОЛЬЗОВАТЕЛЯРЕЖИМ  ЯДРАЗапросОтветЗапросОтветСерверпроцессов

Слайд 108
Смена режимов при выполнении вызова функции микроядра
Приложение
Системный
вызов
МИКРОЯДРО
МИКРОЯДРО
СЕРВЕР

ОС
Приложение
t
t
t
t
Р Е Ж И М

Я Д Р А

Р Е Ж И М ПОЛЬЗОВАТЕЛЯ

Достоинства: единообразные интерфейсы, расширяемость, гибкость, переносимость, надежность, поддержка распределенных систем, поддержка объектно-ориентированных ОС.

Смена режимов при выполнении вызова функции микроядраПриложение  СистемныйвызовМИКРОЯДРОМИКРОЯДРОСЕРВЕР  ОСПриложениеttttР  Е  Ж  И

Слайд 109Классификация ядер операционных систем
1. Наноядро

(НЯ) – крайне упрощённое и минимальное ядро, выполняет лишь одну

задачу – обработку аппаратных прерываний, генерируемых устройствами компьютера. После обработки посылает информацию о результатах обработки вышележащему программному обеспечению. Концепция наноядра близка к кон-цепции HAL. НЯ используются для виртуализации аппаратного обеспечения реа-льных компьютеров или для реализации механизма гипервизора.

2. Микроядро (МЯ) предоставляет только элементарные функции управле-ния процессами и минимальный набор абстракций для работы с оборудованием. Бо́льшая часть работы осуществляется с помощью специальных пользователь-ских процессов, называемых сервисами. В микроядерной операционной системе можно, не прерывая ее работы, загружать и выгружать новые драйверы, файло-вые системы и т. д. Микроядерными являются ядра ОС Minix и GNU Hurd и ядро систем семейства BSD.

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

Классификация ядер операционных систем     1. Наноядро (НЯ) – крайне упрощённое и минимальное ядро,

Слайд 110 4. Монолитное ядро (МЯ)

предоставляет широкий набор абстракций оборудования. Все части ядра работают в

одном адресном пространстве. МЯ требуют перекомпиляции при изменении состава оборудования. Компоненты операционной системы являются не самостоятельными модулями, а составны-ми частями одной программы. МЯ более производительно, чем микроядро, поскольку работает как один большой процесс. МЯ является большинство Unix-систем и Linux. Монолитность ядер усложняет отладку, понимание кода ядра, до-бавление новых функций и возможностей, удаление ненужного, унаследованно-го от предыдущих версий, кода. «Разбухание» кода монолитных ядер также по-вышает требования к объёму оперативной памяти.

5. Модульное ядро (Мод. Я) – современная, усовершенствованная модификация архитектуры МЯ. В отличие от «классических» МЯ, модульные ядра не требуют полной перекомпиляции ядра при изменении состава аппарат-ного обеспечения компьютера. Вместо этого они предоставляют тот или иной механизм подгрузки модулей, поддерживающих то или иное аппаратное обеспе-чение (например, драйверов). Подгрузка модулей может быть как динамической, так и статической (при перезагрузке ОС после переконфигурирования системы). Мод. Я удобнее для разработки, чем традиционные монолитные ядра. Они пре-доставляют программный интерфейс (API) для связывания модулей с ядром, для обеспечения динамической подгрузки и выгрузки модулей. Не все части ядра могут быть сделаны модулями. Некоторые части ядра всегда обязаны присут-ствовать в оперативной памяти и должны быть жёстко «вшиты» в ядро.

4. Монолитное ядро (МЯ) предоставляет широкий набор абстракций оборудования. Все части

Слайд 111 6. Гибридное ядро (ГЯ) –

модифицированные микроядра, позволяющие для ускорения работы запускать «несущественные» части в

пространстве яд-ра. Имеют «гибридные» достоинства и недостатки. Примером смешанного под-хода может служить возможность запуска операционной системы с монолит-ным ядром под управлением микроядра. Так устроены 4.4BSD и MkLinux, осно-ванные на микроядре Mach. Микроядро обеспечивает управление виртуальной памятью и работу низкоуровневых драйверов. Все остальные функции, в том числе взаимодействие с прикладными программами, осуществляется моно-литным ядром. Данный подход сформировался в результате попыток исполь-зовать преимущества микроядерной архитектуры, сохраняя по возможности хорошо отлаженный код монолитного ядра.
Наиболее тесно элементы микроядерной архитектуры и элементы монолитного ядра переплетены в ядре Windows NT. Хотя Windows NT часто называют микроядерной операционной системой, это не совсем так. Микроядро NT слишком велико (более 1 Мбайт), чтобы носить приставку «микро». Компоненты ядра Windows NT располагаются в вытесняемой памяти и взаимодействуют друг с другом путем переда-чи сообщений, как и положено в микроядерных операционных систе-мах. В то же время все компоненты ядра работают в одном адресном пространстве и активно используют общие структуры данных, что свойственно операционным системам с монолитным ядром
6. Гибридное ядро (ГЯ) – модифицированные микроядра, позволяющие для ускорения работы запускать

Слайд 112Средства аппаратной поддержки ОС

1. Средства поддержки привилегированного режима: системные

регистры процессора, слово состояния процессора, привилегированные команды, привилегированные режимы.

2. Средства трансляции адресов: буферы быстрой трансляции виртуальных адресов, регистры процессора, средства поддержки сегментно-страничных таблиц.
3. Средства переключения процессов: регистры общего назначения, системные регистры и указатели, флаги операций.
4. Система прерываний: регистры и флаги прерываний, регистры масок, контроллеры прерываний.
5. Системный таймер и системные часы.
6. Средства защиты памяти: граничные регистры, ключи.


Средства аппаратной поддержки ОС 1. Средства поддержки привилегированного режима: системные регистры процессора, слово состояния процессора, привилегированные команды,

Слайд 1131.5. Классификация операционных систем
1. Назначение (универсальные, специализированные – управление производством,

обучение)
2. Способ загрузки (загружаемые, постоянно находящиеся в памяти – используются

для управления работой специализированных устройств)
3. Особенности алгоритмов управления ресурсами
3.1. Многозадачность: однозадачные (MS DOS), невытесняющая многозадачность (Windows 3.x, NewWare) – активный процесс выполняется до тех пор, пока он сам не решит отдать управление ОС, вытесняющая многозадачность (Windows NT, OS/2, Unix) – решение о переключении процессов принимает сама ОС.

1.5. Классификация операционных систем1. Назначение (универсальные, специализированные – управление производством, обучение)2. Способ загрузки (загружаемые, постоянно находящиеся в

Слайд 1141.5. Классификация операционных систем
3.2. Многопользовательский режим: отсутствие (MS DOS,

Windows 3.x),

имеется (Windows NT, OS/2, Unix) – обеспечена защита информации каждого пользователя от несанкционированного доступа других пользователей.
3.3. Многопроцессорная обработка: отсутствие,
асимметричные ОС – ОС выполняется на одном процессоре, распределяя прикладные задачи по остальным процессорам,
симметричные ОС – децентрализованная система процессоров – задаче выделяется свободный процессор.
1.5. Классификация операционных систем 3.2. Многопользовательский режим: отсутствие (MS DOS, Windows 3.x),

Слайд 1151.5. Классификация операционных систем
4. По базовой технологии (Юникс-подобные или подобные

Windows)
5. По типу лицензии (проприетарная или открытая)
6. По состоянию развития

(устаревшая DOS, NextStep или современные GNU/Linux и Windows)
7. Область использования и форма эксплуатации
пакетная обработка (OS/360)
разделение времени
реальное время (VxWorks, QNX) – предназначены для управленя техническими объектами.
1.5. Классификация операционных систем4. По базовой технологии (Юникс-подобные или подобные Windows)5. По типу лицензии (проприетарная или открытая)6.

Слайд 116
8. Аппаратная платформа
8.1. ОС для смарт-карт (с интерпретатором

виртуальной Java-машины)
8.2. Встроенные ОС (Palm OS, Windows CE

–Consumer Electronics) – управляют карманными компьютерами
8.3. ОС для ПК (Windows 9.x, Windows 2000, Linux, Mac OS X)
8.4. ОС мини-ЭВМ (RT-11 и RSX-11M для PDP-11, UNIX для PDP-7)
8.5. ОС мэйнфреймов (OS/390 – пакетная обработка, разделение времени, обработка транзакций)
8.6. Серверные операционные системы для ЛВС, Интранет и Интернет (UNIX, AIX, Windows 2000/2002, Linux)
8.7. Кластерные операционные системы (Windows 2000 Cluster Server, Sun Cluster (Solaris)). Кластер - слабо связанная совокупность нескольких вычислительных систем, работающих совместно для выполнения общих приложений и представляющихся пользователю единой системой.

8. Аппаратная платформа  8.1. ОС для смарт-карт (с интерпретатором виртуальной Java-машины)  8.2. Встроенные ОС (Palm

Слайд 117
1.6. Эффективность и требования, предъявляемые к операционным системам

1. Эффективность – степень соответствия своему назначению, техническое совершенство и

экономическая целесообразность
2. Надежность и отказоустойчивость – защищенность от внутренних и внешних сбоев, способность обнаруживать ошибку и попытаться исправить положение
3. Безопасность (защищенность) - защита пользователя от чужих ошибок и несанкционированного доступа, аудит
4. Предсказуемость - возможность предвидеть результаты работы программ (время выполнения), основываясь на опыте работы с ними
5. Расширяемость – способность вносить дополнения и изменения в ОС без нарушения ее целостности
1.6. Эффективность и требования, предъявляемые к операционным системам    1. Эффективность – степень соответствия своему

Слайд 118
1.6. Эффективность и требования, предъявляемые к операционным системам

6. Переносимость – способность переноса кода ОС с одной

аппаратной платформы на другую – требуется написание основной части кода ОС на ЯВУ
7. Совместимость – наличие средств выполнения прикладных программ, написанных для других ОС
8. Удобство – простота и гибкость, удобство работы
9. Масштабируемость – линейное возрастание производительности при увеличении числа процессоров
1.6. Эффективность и требования, предъявляемые к операционным системам     6. Переносимость – способность переноса

Слайд 119


1.7. Множественные прикладные среды. Совместимость
Совместимость – возможность

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

совместимости:
1. На двоичном уровне (уровень исполняемой программы).
2. На уровне исходных текстов (уровень исходного модуля).

Вид совместимости определяется:

1. Архитектурой центрального процессора.
2. Интерфейсом прикладного программирования (API).
3. Внутренней структурой исполняемого файла.
4. Наличием соответствующих компиляторов и библиотек.

Способы достижения совместимости:

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

1.7. Множественные прикладные среды. Совместимость   Совместимость – возможность операционной системы выполнять приложения , разработанные для

Слайд 120



Обычное приложение OS1
Приложение
OS2
API OS2
Транслятор системных вызовов
Приложение
OS3
API OS3
Транслятор

системных вызовов



Пользовательский режим
Привилегированный режим
Прикладная среда OS2
Прикладная среда OS3

Обычное приложение    OS1ПриложениеOS2API OS2Транслятор системных вызововПриложениеOS3API OS3Транслятор системных вызововПользовательский режимПривилегированный режимПрикладная среда OS2Прикладная среда

Слайд 121


API OS1
API OS3
Приложение OS1
Приложение OS2
Приложение OS3
Пользовательский режим
Привилегированный

режим

API OS1API OS3Приложение  OS1Приложение  OS2Приложение  OS3Пользовательский режимПривилегированный режим

Слайд 122











МИКРОЯДРО
Приложения
Серверы ОС
Приложение OS1
Приложение OS2
Приложение OS3

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

Прикладная программная среда OS3
Прикладная

программная среда OS2

Прикладная программная среда OS1

Сетевой сервер

Сервер безопасности

Пользовательский режим

МИКРОЯДРОПриложенияСерверы ОСПриложение   OS1Приложение  OS2Приложение  OS3Привилегированный режим Прикладная    программная среда OS3

Слайд 123







Подсистемы среды Windows 2000
Приложения Win32
Приложения

POSIX
Приложения OS/2
Подсистема Win32

Подсистема POSIX

Подсистема OS2

Интегральные подсистемы (службы сервера, рабочей станции и подсистема обеспечения безопасности)

СИСТЕМНЫЙ ИНТЕРФЕЙС (NT DLL.DLL)

Режим пользователя

Режим ядра

Подсистемы среды Windows 2000Приложения   Win32   Приложения   POSIX Приложения   OS/2

Слайд 124
Монитор виртуальных машин» (МВМ) - программный уровень абстракции,

разделявший аппаратную платформу на несколько виртуальных машин.

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

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

Монитор виртуальных машин» (МВМ) - программный уровень абстракции, разделявший аппаратную платформу на несколько виртуальных машин.

Слайд 125
Монитор виртуальных машин отделяет программное обеспечение от

оборудования и формирует промежуточный уровень между ПО, выполняемым виртуальными машинами,

и аппаратными средствами.
Этот уровень позволяет МВМ полностью контролировать использование аппаратных ресурсов гостевыми операционными системами (GuestOS), которые выполняются на ВМ.

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

Монитор виртуальных машин отделяет программное обеспечение от оборудования и формирует промежуточный уровень между ПО,

Слайд 126
МВМ создает унифицированное представление базовых аппаратных средств,

благодаря чему физические машины различных поставщиков с разными подсистемами ввода-вывода

выглядят одинаково и ВМ выполняются на любом доступном оборудовании.
Благодаря полной инкапсуляции состояния ПО на ВМ монитор МВМ может отобразить эту ВМ на любые доступные аппаратные ресурсы и даже перенести с одной физической машины на другую.

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

МВМ создает унифицированное представление базовых аппаратных средств, благодаря чему физические машины различных поставщиков с

Слайд 127
МВМ играет роль посредника во всех взаимодействиях

между ВМ и базовым оборудованием, поддерживая выполнение множества виртуальных машин

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

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

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

Слайд 128
Виртуализация приложений
1.8 Виртуальные машины

Виртуализация приложений1.8 Виртуальные машины

Слайд 129
Виртуализация

Виртуализация

Слайд 131Виртуализация от Microsoft

Виртуализация от Microsoft

Слайд 132Архитектура. Virtual Machine Monitor (VMM)
ЦП вынужден переключаться между процессами базовой

ОС и гостевой ОС
VMM переключает контекст между этими процессами
Компьютер работает

в контексте хоста либо VMM
На одном ЦП может работать только одна ОС
Сжатие кода нулевого кольца (ring 0) гостевой ОС

Архитектура. Virtual Machine Monitor (VMM)ЦП вынужден переключаться между процессами базовой ОС и гостевой ОСVMM переключает контекст между

Слайд 133Виртуализация ЦП. Проблемы
При прямом доступе гостевая ОС будет работать

быстро! (99%)
Когда требуется выполнить привилегированную операцию, срабатывает

ловушка, и VMM обрабатывает эту операцию в режиме ядра.
Проблема: полная виртуализация платформы x86 таким способом невозможна, так как некоторые инструкции ЦП для режима ядра, выполняющие чтение, разрешены не только в нулевом кольце
Возможные решения:
a) Перекомпилировать ОС и приложения, избегая этих 20 инструкций, т.е. исключить 20 «проблемных» инструкций.
b) Воспользоваться исполнением с трансляцией двоичного кода ( модификация кода «на лету» во время выполнения на хосте).
c) Установить в гостевой системе VM Additions, что позволит модифицировать код в памяти VM.
d) Использовать аппаратную поддержку виртуализации (перехват инструкций в особом “кольце -1”).

Виртуализация ЦП. Проблемы При прямом доступе гостевая ОС будет работать быстро! (99%)   Когда требуется выполнить

Слайд 134Решения
1. Преобразование двоичного кода
Трансляция инструкций гостевой

операционной системы в инструкции базовой ОС. Всегда возможна, но работает

очень медленно.
2. VM Additions
Модифицирует dll-код в памяти VM (невозможно в 64-разрядных версиях Vista и Longhorn).
VM Additions поддерживают синхронизацию времени, «пульс», завершение работы, оптимизированный SCSI-диск, лучшие драйверы мыши и видео.
3. Аппаратная виртуализация
ЦП с поддержкой технологий Intel VT или AMD Virtualization. ЦП решает проблемы, отслеживая параметры каждой VM (фактически, это «кольцо 1).

Решения1. Преобразование двоичного кода    Трансляция инструкций гостевой операционной системы в инструкции базовой ОС. Всегда

Слайд 136Версии VM Additions

Версии VM Additions

Слайд 137Linux VM Additions
Добавляется поддержка:
Синхронизации времени
«Пульса»
Завершения работы
SCSI-дисков
Драйвер мыши и видео
Поддержки прямого

исполнения кода нет!
Дистрибутивы (9x):
Red Hat 7.3/9.0, Enterprise 2.1/3/4
SuSE Linux 9.2/9.3/10.0,

Enterprise Server 9

В выпуске VS 2005 R2 SP1 поддерживаются гостевые ОС : Red Hat Enterprise Linux 2.1 (update 7), Red Hat Enterprise Linux 3.0 (update 8), Red Hat Enterprise Linux 4.0 (update 4), Red Hat Enterprise Linux 5.0, SuSE Linux Enterprise Server 9.0, SuSE Linux Enterprise Server 10.0, Red Hat Linux 9.0, SuSE Linux 9.3, SuSE Linux 10.0, SuSE Linux 10.1, SuSE Linux 10.2.

Linux VM AdditionsДобавляется поддержка:Синхронизации времени«Пульса»Завершения работыSCSI-дисковДрайвер мыши и видеоПоддержки прямого исполнения кода нет!Дистрибутивы (9x):Red Hat 7.3/9.0, Enterprise

Слайд 138Win2003 или WinXP
Ядро
VMM.sys
Кольцо 0
Оборудование
Базовая ОС
Гостевая система (VM)
Кольцо 1
Кольцо 3
Windows в

VM
VM Additions
Гостевые приложения
Кольцо 3
Служба Virtual Server
IIS
Веб-сайт
Виртуальное оборудование
ЦП
Кольцо "-1"
Архитектура виртуализации с

аппаратной поддержкой
Win2003 или WinXPЯдроVMM.sysКольцо 0ОборудованиеБазовая ОСГостевая система (VM)Кольцо 1Кольцо 3Windows в VMVM AdditionsГостевые приложенияКольцо 3Служба Virtual ServerIISВеб-сайтВиртуальное оборудованиеЦПКольцо

Слайд 139Виртуализация с аппаратной поддержкой

(Intel VT или AMD Virtualization)

Поддерживается в:
Virtual PC 2007
Virtual Server 2005 R2 SP1
Windows Virtualization (обязательно)
Необходимо включить в BIOS и в параметрах Virtual PC 2007




Скорость работы гостевых ОС Windows не повышается
Последние версии VM Additions уже поддерживают прямой доступ к ЦП
Установка Windows выполняется в 2-3 раза быстрее
Гостевые ОС типа Linux и Netware работают быстрее

Виртуализация с аппаратной поддержкой

Слайд 140Спецификации Virtual Server 2005 R2
Базовая система:
VS2005

Standard Edition: до 4 ЦП (1- или 2-ядерные),

VS2005 Enterprise Edition: до 32 ЦП (1- или 2-ядерные),
ОЗУ: до 64 Гб
Гостевая система:
ЦП: до 1, ОЗУ: до 3,6 Гб, Сетевые адаптеры: до 4, (неограниченная пропускная способность). USB: нет, поддерживаются USB-клавиатура и USB-мышь, можно также подключить USB-устройство для чтения смарт-карт.

Дополнительные возможности Server 2005 R2 SP1: Поддержка Intel VT и AMD Virtualization, Поддержка 64-х разрядных базовых систем: Win2003 и WinXP. Поддержка теневого копирования томов (Volume Shadow Copy, VSS), Интеграция с Active Directory средствами Service Connection Points, Поддержка Vista как гостевой ОС, Утилита для монтирования VHD, Емкость по умолчанию VHD - 127 Гб (ранее – 16 Гб), Исправление Virtual SCSI для гостевых ОС Linux 2.6.x, Кластеризация VM, Передача VM при ее сбое в пределах того же хоста, Общий SCSI- (iSCSI-) диск для гостевых систем.

Спецификации Virtual Server 2005 R2 Базовая система:    VS2005 Standard Edition: до 4 ЦП (1-

Слайд 141Virtual PC / Virtual Server 2005 R2
Win2003 или WinXP
Ядро
VMM.sys
Кольцо 0
Оборудование
Базовая

система
Гостевая система (VM)
Кольцо 1
Кольцо 3
Windows в VM
VM Additions
Гостевые приложения
Кольцо 3
Служба

Virtual Server

IIS

Веб-сайт

Виртуальное оборудование

Virtual PC / Virtual Server 2005 R2Win2003 или WinXPЯдроVMM.sysКольцо 0ОборудованиеБазовая системаГостевая система (VM)Кольцо 1Кольцо 3Windows в VMVM

Слайд 142Windows Virtualization
Поддержка виртуализации для Windows Server

Windows Hypervisor (Гипервизор), кодовое имя - "Viridian“: «Тонкий» (~160 Кб) программный уровень, «внутренняя базовая ОС», Родительский раздел – управляет дочерними разделами, Дочерний раздел включает любое число ОС, управляемых родительским разделом.
Стек виртуализации: Работает в корневом (= родительском) разделе, Обеспечивает виртуализацию устройств, WMI-интерфейс для управления
Провайдеры служб виртуализации (Virtualization Service Providers, VSPs) Архитектура совместного использования оборудования, В гостевой ОС устанавливаются драйверы "viridian«.

Windows Virtualization Server требует x64-совместимого оборудования, ЦП с поддержкой Intel VT или AMD-V
Поддерживает: 32- и 64-разрядные гостевые ОС; до 8 ЦП на VM; горячее добавление» ЦП, ОЗУ, сетевых адаптеров, дисков; > 32 Гб ОЗУ на VM; возможность переноса VM без отключения; традиционную модель драйверов; использование существующих драйверов Windows; прежний же набор эмулируемого оборудования; Server Core в качестве родительской ОС


Слайд 143Windows Virtualization
Windows (Core)
Ядро
Windows Hypervisor
Кольцо 0
Оборудование
Родительский раздел
Дочерний раздел
Кольцо 3
Гостевые

приложения
Кольцо "-1"
Windows
VMBus
Enlightment
Ядро
VSP
VSC
Стек виртуализации
Служба VM
WMI


Рабочий процесс VM
Драйверы

Windows Virtualization  Windows (Core)ЯдроWindows HypervisorКольцо 0ОборудованиеРодительский разделДочерний разделКольцо 3Гостевые приложенияКольцо

Слайд 144Версии продуктов
* Жизненный цикл этих продуктов близок к завершению
** На http://vpc.visualwin.com

находится список из > 1200 (!) ОС, совместимых с Virtual

PC и Virtual Server
В статье KB 867572 см. список ОС, поддерживаемых Virtual Server 2005 R2
Версии продуктов *	Жизненный цикл этих продуктов близок к завершению**	На http://vpc.visualwin.com находится список из > 1200 (!) ОС,

Слайд 145Основные области применения:
Тестирование программного обеспечения и средств разработки ( тестирование

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

также действий администраторов серверов и сети с целью проверки работоспособности той или иной конфигурации серверного ПО перед началом ввода его в реальную эксплуатацию.
Хостинг унаследованных приложений. Зачастую наиболее удачные бизнес-приложения эксплуатируются десятилетиями, поэтому вполне может случиться так, что платформа, для которой они написаны, в компании уже практически не применяется из-за отсутствия нормальной технической поддержки со стороны производителей оборудования.
Консолидация загрузки серверов. Идея консолидации загрузки серверов заключается в создании виртуальных машин с разными операционными системами и программным обеспечением, реализующими выполнение указанных задач, и в размещении одного и того же набора этих виртуальных машин на нескольких физических серверах. Благодаря этому число самих серверов можно уменьшить, да и выход из строя одного из серверов не будет столь критичен для компании, поскольку его нагрузку может взять на себя виртуальная машина на каком-либо другом сервере.
Моделирование распределенных серверных приложений на одном физическом сервере. Данный способ применения серверных виртуальных машин предназначен для разработчиков, специалистов по тестированию и специалистов по внедрению приложений масштаба предприятия. С его помощью можно создавать распределенные приложения, тестировать их, а также моделировать реальные условия внедрения, используя для этой цели один-единственный компьютер, что позволяет сократить расходы на приобретение аппаратного обеспечения для разработки приложений.
Основные области применения:Тестирование программного обеспечения и средств разработки ( тестирование создаваемых приложений, тестирование конфигураций и настроек готового

Слайд 146
Запуск VMM





Подготовка гостевой ОС к запуску
VMPTRLD VMLAUNCH
Работа гостевой ОС
VMON
Обработка возникшего

в гостевой ОС или во внешнем мире события
Сохранение текущего состояния

виртуальной машины или ее уничтожение

VMREAD VMWRITE

Настройка свойств виртуальной машины

Событие, требующее обработки, либо вызов

VMMCALL

VMRESUME

VMPTRST VMCLEAR

Остановка VMM

VMOFF

Схема работы Intel Virtualization Technology

Запуск VMMПодготовка гостевой ОС к запускуVMPTRLD VMLAUNCHРабота гостевой ОСVMONОбработка возникшего в гостевой ОС или во внешнем мире

Слайд 147







Проверка и запуск

безопасного загрузчика

SKINIT

Загрузчик

Обычная загрузка ОС

Запуск VVM

Загрузка виртуального компьютера и системная подготовка

VMLOAD VMRUN

Работа гостевой ОС

VMMCALL

Событие

VMRUN

Обработка события в гостевой ОС или во внешнем мире

STGI, CLGI, INVLPGA

Сохранение текущего состояния виртуальной машины или ее уничтожение

Проверка и запуск

Обратная связь

Если не удалось найти и скачать доклад-презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое TheSlide.ru?

Это сайт презентации, докладов, проектов в PowerPoint. Здесь удобно  хранить и делиться своими презентациями с другими пользователями.


Для правообладателей

Яндекс.Метрика