- •Операционные системы (учебное пособие)
- •Введение
- •1. Операционная система: основные понятия
- •1.1. Понятие операционной системы, её роль и функции
- •1.2. Операционная и программная среды
- •1.3. Очередь и стек
- •1.4. Машинная команда, способы адресации, привилегированные команды
- •1.5.Система прерываний
- •1.6. Задачи, вычислительные процессы и ресурсы
- •Ресурс – это абстрактная структура, имеющая множество атрибутов, характеризующих способы доступа к ресурсу и его физическое представление в системе
- •1.7. Мультипрограммный, мультизадачный и многопользовательский режимы работы операционной системы. Режим разделения времени
- •2. Управление памятью в операционных системах
- •2.1. Память и отображения, виртуальное адресное пространство
- •2.2. Простое непрерывное распределение и распределение с перекрытием
- •2.3. Распределение памяти статическими разделами
- •2.4. Распределение памяти с динамическими разделами
- •2.5. Распределение памяти с фрагментацией задач
- •3. Управление процессами
- •3.1. Реализация последовательного процесса в операционной системе
- •3.2. Планирование и диспетчеризация процессов и задач
- •3.3. Управление параллельными процессами
- •3.3.1. Понятие параллельных процессов
- •3.3.2. Методы реализации взаимных исключений
- •3.3.3. Блокировка памяти
- •3.3.4. Применение специальных операций типа "проверка–установка"
- •3.3.5.Семафоры и их применение
- •3.3.6. Мониторы
- •3.3.7. Почтовые ящики, конвейеры и очереди сообщений
- •4. Проблема тупиков и её решение
- •4.1. Проблема тупиков, разделяемые ресурсы и модели параллельных процессов
- •4.2. Модель повторно используемых ресурсов Холта1
- •4.3. Сети Петри
- •4.4. Модель пространства состояний системы
- •4.5. Борьба с тупиками
- •4.5.1. Предотвращение тупиков
- •4.5.2. Обход тупиков
- •4.5.3. Обнаружение тупика
- •5. Жёсткий диск
- •5.1. Устройство накопителя жесткого диска (hdd) и адресация элементов дискового пространства
- •5.2. Логическая структура диска
- •5.3. Создание загрузочных дисков
- •6. Файловые системы
- •6.1. Файлы и каталоги
- •6.2. Понятие и функции файловой системы и системы управления файлами.
- •6.3. Обзор файловых систем
- •6.3.1. Файловая система fat16, fat32 и vfat
- •6.3.2. Файловая система ntfs
- •6.3.3. Файловые системы компакт-дисков
- •7. Средства защиты и восстановления операционных систем
- •7.1. Цифровая подпись драйверов и её верификация
- •7.2. Защита и проверка системных файлов
- •7.3. Откат драйверов
- •7.6. Безопасный режим загрузки
- •7.7. Мастер и точки восстановления системы
- •7.8. Резервное копирование и восстановление
- •7.9. Аварийное восстановление системы. Консоль восстановления.
- •8. Загрузчики операционных систем
- •8.1. Понятие загрузчика и виды его реализации
- •8.2. Решение проблемы четырех разделов в mbr
- •8.3. Установка загрузчиков ос
- •8.4. Настройка загрузчиков ос
- •8.5. Удаление загрузчиков ос
- •9. Системный реестр и системные службы
- •9.1. Назначение и структура реестра
- •9.2. Работа с реестром
- •9.3. Системные службы
- •10. Безопасность операционных систем
- •10.1. Угрозы, уязвимости, атаки
- •10.2. Политика безопасности
- •10.3. Защита от вторжений
- •10.4. Межсетевые экраны
- •10.5. Отключение ненужных служб
- •10.6. Защита от спама
- •10.7. Защита от вредоносных программ и вирусов средствами операционных систем
- •10.8. Защита конфиденциальной информации.
- •Список литературных источников
4.4. Модель пространства состояний системы
В этой модели состояние операционной системы характеризуется состоянием её различных ресурсов (свободны или выделены конкретным процессам). Процессы изменяют состояние системы посредством запросов ресурсов, их захвата и освобождения. Это приводит к двум формальным определениям:
система описывается парой <σ,π>,
где σ – множество состояний системы {S1,S2, …, Sn};
π – множество процессов {Р1,Р2, …, Рk};
при выполнении процесса Рi система переходит в непустое подмножество своих состояний, что обозначается следующим образом: Рi: σ→{σ}.
Если процесс Pi определён на состоянии Sj, т.е. может вывести систему из этого состояния каким-либо способом, то область его значений обозначается как Рi(Sj) и равна {Sm,Sn, …, Sq}, т.е. подмножеству состояний системы. Если процесс Рi никак не может вывести систему из состояния Sj, то Рi(Sj)=0.
При описании переходов системы из одного состояния в другое применяются обозначения, приведенные в табл. 4.2.
Таблица 4.2. Условные обозначения в модели пространства состояний системы
Обозначение |
Смысловое содержание |
|
Процесс Pi может перевести систему из состояния Se в состояние Sk |
|
Переход системы из состояния Se в состояние Sk конечным множеством последовательно выполняющихся процессов. |
Справедливы следующие суждения:
система может быть переведена из состояния Se в состояние Sw посредством n ≥ 0 операций m ≥ 0 процессами;
если процесс заблокирован в состоянии Se, т.е. не может ни требовать, ни получать, ни освобождать ресурсы, то не существует ни одного состояния Sk, в которое система может быть переведена процессом Pi, и Pi(Se) = 0;
процесс находится в тупике в состоянии Se, если для всех состояний Sk, в которые возможен переход конечным множеством процессов, процесс Pi блокирован в состоянии Sk.
В [1] рассмотрен следующий пример. Система <σ,π> определена следующим образом:
σ = {S1,S2, S3, S4}; π = {Р1,Р2, …, Рk};
Р1(S1)={S2,S3}; (1) Р2(S1)={S3}; (2)
Р1(S2)=0; (3) Р2(S2)={S1,S4}; (4)
Р1(S3)={S4}; (5) Р2(S3)=0; (6)
Р1(S4)={S3}; (7) Р2(S4)=0. (8)
Диаграмма переходов такой системы показана на рис. 4.17. В соответствии с (1) из состояния S1 выходят две дуги процесса Р1 в состояния S2 и S3. Выражение (2) изображается дугой P2, выходящей из S1 и входящей в S2, выражению (3) соответствует отсутствие дуг процесса Р1, входящих из S2. Согласно (4) дуги процесса Р2 соединяют вершину S2 с S1 и S4. В соответствии с (5) и (7) две дуги процесса Р1 соединяют S3 и S4, образуя замкнутый контур, и, наконец, (6) и (8) указывают на отсутствие дуг процесса Р2, выходящих из S3 и S4.
Рис. 4.17. Диаграмма переходов системы к примеру
Из рис. 4.17 следует, что для процесса Р2 существуют тупики в вершинах S3 и S4. Состояние S называется тупиковым, если существует процесс, находящийся в тупике в этой вершине. Состояние S называется опасным, если система может перейти из неё посредством конечной цепочки процессов в тупиковое состояние.