Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Операционные системы_лекции.doc
Скачиваний:
47
Добавлен:
28.09.2019
Размер:
1.71 Mб
Скачать

4.4. Модель пространства состояний системы

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

  • система описывается парой <σ,π>,

где σ – множество состояний системы {S1,S2, …, Sn};

π – множество процессов {Р12, …, Р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}; π = {Р12, …, Р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 и S­4, образуя замкнутый контур, и, наконец, (6) и (8) указывают на отсутствие дуг процесса Р2, выходящих из S3 и S4.

Рис. 4.17. Диаграмма переходов системы к примеру

Из рис. 4.17 следует, что для процесса Р2 существуют тупики в вершинах S3 и S4. Состояние S называется тупиковым, если существует процесс, находящийся в тупике в этой вершине. Состояние S называется опасным, если система может перейти из неё посредством конечной цепочки процессов в тупиковое состояние.