
- •1.Лекция 1.Операционная система. Введение
- •1.1.Структура вычислительной системы
- •1.2.Что такое операционная система
- •1.2.1. Операционная система как виртуальная машина.
- •1.2.2.Операционная система как менеджер ресурсов
- •1.2.3.Операционная система как защитник пользователей и программ
- •1.2.4.Операционная система как постоянно функционирующее ядро
- •1.3.История эволюции вычислительных систем
- •1.3.1.Первый период (1945–1955 гг.). Ламповые машины. Операционных систем нет
- •1.3.2.Второй период (1955 г.–начало 60-х). Компьютеры на основе транзисторов. Пакетные операционные системы
- •1.3.3.Третий период (начало 60-х – 1980 г.). Компьютеры на основе интегральных микросхем. Первые многозадачные ос
- •1.3.4.Четвертый период (с 1980 г. По настоящее время). Персональные компьютеры. Классические, сетевые и распределенные системы
- •1.4. Функции операционной системы.
- •1.5.Основные понятия, концепции ос
- •1.5.1.Системные вызовы
- •1.5.2.Прерывания
- •1.5.3.Исключительные ситуации
- •1.5.4.Файлы
- •1.6.Архитектурные особенности ос
- •1.6.1.Монолитное ядро
- •1.6.2.Многоуровневые или слоеные системы (Layered systems)
- •1.6.3.Виртуальные машины
- •1.6.4.Микроядерная архитектура
- •1.6.5.Смешанные системы
- •1.7.Классификация операционных систем
- •1.7.1.Реализация многозадачности
- •1.7.2.Поддержка многопользовательского режима
- •1.7.3.Многопроцессорная обработка
- •1.7.4.Системы реального времени
- •2 Процессы
- •2.1.Понятие процесса
- •2.2.Состояния процесса
- •2.3.Операции над процессами и связанные с ними понятия
- •2.3.1.Набор операций
- •2.3.2.Блок управления процессом (рсв Process Control Block) и контекст процесса
- •2.3.3.Одноразовые операции
- •2.3.4.Многоразовые операции
- •2.3.5.Переключение контекста
- •2.3.7.Нити исполнения
- •2.4.Заключение
- •3. Планирование процессов
- •3.1.Уровни планирования
- •3.2.Цели планирования
- •3.4. Критерии планирования
- •3.5.Вытесняющее и не вытесняющее планирование
- •3.5.Алгоритмы планирования
- •3.5.1.Планирование по принципу fifo
- •3.5.2.Циклическое планирование)
- •3.5.3. Планирование по принципу кратчайшее задание - первым
- •3.5.4.Гарантированное планирование
- •3.5.5.Приоритетное планирование
- •3.5.6.Многоуровневые очереди (Multilevel Queue)
- •3.5.7.Многоуровневые очереди с обратной связью (Multilevel Feedback Queue)
- •3.6.Заключение
- •4. Лекция: Кооперация процессов и основные аспекты ее логической организации
- •4.1.Взаимодействующие процессы
- •4.2.Средства обмена информацией
- •4.3.Логическая организация механизма передачи информации
- •4.4.Информационная валентность процессов и средств связи
- •4.5.Особенности передачи информации с помощью линий связи
- •4.5.1.Буферизация
- •4.5.2.Поток ввода/вывода и сообщения
- •4.5.3.Надежность средств связи
- •4.5.4.Завершение связи
- •4.6.Нити исполнения
- •4.7.Заключение
2.2.Состояния процесса
Работа вычислительных представляет собой набор процессов. На однопроцессорной компьютерной системе в каждый момент времени исполняется один процесс, в многопроцессорных системах несколько процессов. Переключение процесса с одного процесса на другой позволяет вести псевдопараллельную обработку нескольких процессов в мультипрограммных вычислительных системах. Пока один процесс выполняется, остальные ждут своей очереди. У процесса имеется два состояния: «процесс исполняется» и «процесс не исполняется». На рисунке 2.1 дана простейшая диаграмма состояний процесса.
Рис. 2.1. Простейшая диаграмма состояний процесса
Процесс, находящийся в состоянии «процесс исполняется», может быть либо завершен операционной системой, либо приостановлен и переведен в состояние «процесс не исполняется». Приостановка процесса происходит по двум причинам:
1 - для его дальнейшей работы требуется какое-либо событие (например, завершение операции ввода-вывода);
2 - истек временной интервал, отведенный операционной системой для работы данного процесса.
После приостановки процесса операционная система выбирает следующий процесс для исполнения, который находится в состоянии «процесс не исполняется» и переводит его в состояние «процесс исполняется» Новый процесс, появляющийся в системе, первоначально помещается в состояние «процесс не исполняется». Данная модель не отражает ситуацию ожидания выбранным процессом некоторого события. В процессе ожидания процесс к исполнению не готов. На рисунке 2.2 изображена более подробная диаграмма состояний процесса.
Рис. 2.2. Диаграмма состояний процесса с учетом состояний «ожидание» и «готовность».
В данной модели состояние «процесс не исполняется» разбивается на два состояния «готовность» и «ожидание». При появлении новый процесс попадает в состояние «готовность» и становится в очередь процессов, находящихся в состоянии «готовность». Операционная система в соответствии с результатами планирования выбирает один из них и переводит в состояние «исполнение». В состояние «исполнение» выполняется программный код процесса. Выйти из этого состояния процесс может по трем причинам:
прекращение деятельности процесса;
продолжение работы процесса зависит от наступления некоторого события, до наступления которого процесс переводится в состояние «ожидание», а при совершении события из состояния «ожидание» в состояние «готовность»;
в результате прерывания операционная система возвращает процесс в состояние «готовность» (например, прерывания от таймера).
Данная модель описывает поведение процессов во время их существования, но не рассматривает случаи появления и исчезновения процесса в системе. На рисунке 2.3 представлена диаграмма состояний с учетом состояний «ожидания», «готовности», «рождения», «исполнения» и «закончил исполнение».
Рис. 2.3. Диаграмма состояний процесса с учетом состояний ожидания, готовности, рождения, исполнение и закончил исполнение.
Появление процесса в вычислительной системе соответствует состоянию «рождение». В состоянии «рождение» процесс получает в свое распоряжение адресное пространство для загрузки программного кода процесса, стек, системные ресурсы; ему устанавливается начальное значение программного счетчика процесса и т. д. По окончании «рождения» процесс переводится в состояние «готовность». При завершении деятельности процесс из состояния «исполнение» переходит в состояние «закончил исполнение».
Изложенная модель является наиболее общей и является основой всех операционных систем.