
- •Основные понятия и концепции ос
- •Классификация ос
- •Управление процессами
- •Операции над процессом
- •13092012 Лекция 2
- •Алгоритмы планирования
- •Средства взаимодействия и синхронизации процессов
- •Синхронизация процессов
- •20092012 Лекция 3 Взаимоблокировки
- •Ликвидация взаимоблокировок
- •Неделимые транзакции
- •04102012 Лекция 4 Архитектура и управление процессами в ос семейства Windows
- •11102012 Лекция 5 Синхронизация потоков
- •Архитектура и процессы unix
- •Управление процессами
- •Создание новых процессов
- •18102012 Лекция 6 Межпроцессное взаимодействие
- •Файловая система
- •Структуризация файлов
- •25102012 Лекция 7 Адресация доступа к файлам
- •Операции над файлами
- •Обобщенная модель файловой системы
- •Отображаемые в память файлы
- •Современная архитектура файловых систем
- •Файловые системы Windows
- •01112012 Лекция 8 Файловая система fat
- •Файловая система ntfs
- •081112 Лекция 9
- •Файловые системы unix Традиционная фс s5
- •Виртуальная фс vfs (Virtual File System)
- •Монтирование файловых систем vfs
- •15112012 Лекция 10 Управление вводом/выводом
- •Драйверы устройств
- •Система ввода/вывода unix
- •29112012 Лекция 11 Подсистема ввода/вывода Windows
- •06122012 Лекция 12 Основные процедуры драйверов устройств
- •Процедуры обслуживания прерывания isr (interrupt Service Routine)
- •Дерево устройств
- •Диспетчер электропитания
- •13122012 Лекция 13 Основные требования ос
- •Множественные прикладные среды
- •Способы построения множественных прикладных сред
- •Реализация множества прикладных средств в Windows системах
Операционные системы
Преподаватель: Полтавцева Мария Анатольевна
7 семестр – экзамен
Литература:
Таненбаум. Современные ОС
Олифер. ОС
Дейтел. ОС
(практика) Назаров. ОС (учебник и практика)
06092012 Лекция 1
Понятие классификации ОС
ОС – это слой специального ПО, выполняющий задачи менеджера и виртуализации ресурсов.
Любая задача управления ресурсом включает его планирование и отслеживание состояния.
Есть дополнительные свойства: защитник программ, постоянно функционирующее ядро и так далее.
Эволюция ОС
Первый период: 1945-1955.
Оборудование на лампах и реле. Системные средства состояли из библиотек математических и служебных программ.
Второй период: 1955-начало 60-х.
Аппаратная платформа на основе транзисторов. ОС пакетной обработки, предназначенная для выполнения вычислительных задач и автоматизирующая запуск программ пакетов. Формальный язык запросов и программирования.
Третий период: нач. 60-х – 1980.
Аппарат: интегральные схемы. Появляется мультипрограммирование и мультипрограммные ОС разделения времени. Появляются системы реального времени (ОС, которая работает в производственных вещах, сетевом оборудовании; предназначены, чтобы на входной сигнал за определенное время подать выходной сигнал).
При организации мультипрограммирования ОС выполняется операции:
--Организация интерфейса между программой и ОС при помощи системных вызовов.
--Планирование использования процессора.
--Сохранение содержимого регистров и структур при переключении выполняющихся задач.
--Реализация стратегий управления памятью.
--Организация хранения данных на внешних носителях.
--Поддержка средств коммуникации между программами.
--Средства синхронизации процессов при одновременном доступе к ресурсам.
Четвертый период: 1980 – наст.время.
Оборудование: БИС, универсальная архитектура, сети.
Появление распределенных системы (в мультипроцессорных средах, для облачных вычислений) и сетевых систем.
Основные понятия и концепции ос
Системные вызовы – это механизм, позволяющий пользовательским программам обращаться к услугам ядра ОС (механизм интерфейса между программой и ОС). При СВ задача переходят в привилегированный режим или режим ядра (вызывается функции ядра). Называют программными прерывания в учебной литературе. Реализуются с помощью библиотек. СВ исполняется в адресном пространстве и в контексте вызвавшей его задачи.
Прерывания – это событие, генерируемое внешним по отношению к процессору устройством. Аппаратное прерывание. Пример – окончание такта. АП – событие асинхронное. Обработка первоочередное.
Исключительные ситуации – это события, возникающие в результате попытки выполнения программы команды, которая не может быть выполнена до конца (попытка доступа к ресурсу без прав, открытие не существующей виртуальной страницы). Асинхронное событие в контексте данной задачи. Могут быть исправимые (нет данных в ОП, могут быть подгружены) и неисправимые (деление на нуль как ошибка программа).
Файлы – это не интерпретированная область данных. Для работы есть файловая система в ОС и системные вызовы.
Процессы и потоки
Классификация ос
По особенностям алгоритмов управления ресурсом:
Многозадачная и однозадачная. Многозадачные ОС могут быть вытесняющие и невытесняющие (разница: в невытесняющей – пока не закончиться выполнение задачи, она не уйдет; вытесняющая – прерыванием снимает задачу).
Многопользовательские и однопользовательские.
Системы с поддержкой поток и без них.
Многопроцесорная и однопроцессорная. Многопроцессорные ОС могут быть симметричные и асимметричные.
По особенностям аппаратных платформ:
ОС персональных компьютеров
ОС миникомпьютеров (для нетбуков и планшетов)
ОС мобильных устройств
ОС майнфреймов
ОС кластеров
ОС сетей ЭВМ (или сетевые: клиент-серверные системы, системы маршрутизаторов и так далее)
По особенностям областей использования:
Системы пакетной обработки (главный критерий эффективности – максимальная пропуская способность, то есть количество решенных задач за единицу времени)
Система разделения времени (критерий эффективности – удобство работы пользователя)
Системы реального времени (критерий эффективности – способность выдерживать заранее заданные интервалы времени между запуском программы и получением результатов (реактивность), время – время реакции)
По особенностям методов построения:
Монолитные системы (или монолитные ядра). Монолитное ядро – это набор процедур, каждая из которых может вызывать каждую. Пример: ОС семейства Unix в начале.
Многоуровневые системы – вся вычислительная система разбивается на ряд уровней с определенными интерфейсами между ними. Например:
5 Интерфейс пользователя
4 Управления ввода/вывода
3 Диспетчер устройств связи и консоли
2 управления памятью
1 планирования процессов
0 уровень оборудования
Один слой только к соседям может обращаться, внутри слои – монолитны. Сложно продумать их архитектуру, но удобно компилировать
Виртуальные машины. Например:
-
Пользовательская программа
Пользовательская программа
Пользовательская программа
Linux
Windows
…
Виртуальная машина
Виртуальная машина
Виртуальная машина
ОС (виртуальная машина)
Реальное hardware
Используется часто в серверных системах.
Микроядерные ОС. В ОС выделяется исполнительное ядро (микроядро), работающее в привилегированном режиме, а остальные функции работают по клиент-серверному принципу.
Менеджер памяти, менеджер файловой системы, приложения
Микроядро
Взаимодействует через микроядро. Чем меньше функций в микроядре, тем лучше.
Минус систем: все вызовы и переключения требуют дополнительные накладные расходы, медленней работают.
На каком языке написаны: ООП, структурно-ориентированный и так далее.