Відмінності між версіями «Процеси та їх стани»

Матеріал з Вікі ЦДУ
Перейти до: навігація, пошук
(Створена сторінка: Єдиного визначення процесу не існує. Можна навести декілька визначень, і вони всі будут...)
 
Рядок 22: Рядок 22:
 
* можливий тільки на системах з витісняючою багатозадачністю, коли в списку готових до виконання процесів з'являється процес з вищим пріоритетом.
 
* можливий тільки на системах з витісняючою багатозадачністю, коли в списку готових до виконання процесів з'являється процес з вищим пріоритетом.
 
Перейшовши в стан чекання процес чекає настання необхідної події. Як тільки процес дочекався, він переводиться в стан готовність.
 
Перейшовши в стан чекання процес чекає настання необхідної події. Як тільки процес дочекався, він переводиться в стан готовність.
 +
 +
== Операції над процесами==
 +
 +
* Допуск до планування (створення процесу)
 +
* Відправлення на виконання
 +
* Переривання процесу
 +
* Завершення процесу
 +
* Переведення в стан чекання
 +
* Переведення до стану готовність (відновлення процесу)
 +
 +
== Процеси в Linux ==
 +
 +
[[Файл:Модель станів Linux.png|рамка|200x300px]]
 +
 +
'''''Чекання, що переривається'' (S)''' - це стан блокування, при якому процес чекає події(вводу, виводу, гигналу від іншого процесу)<br \>
 +
'''''Чекання, що непериривається'' (D)''' - процес беспосередньо чекає виконання якоїсь апаратної умови і тому не сприймає ніякі інші сигнали.<br \>
 +
'''''Призупинення'' (T)''' - процес був зупинений і може бути продовжений тільки при дії іншого процесу.<br \>
 +
'''''Зомбі'' (Z)''' - процес було припинено, але за деяких обставин його структура залишилася в таблиці процесів.<br \>
 +
'''Визначення станів ''Готовність'' та ''Виконання (R)'' такі ж, як і в попередній моделі!

Версія за 20:41, 1 листопада 2015

Єдиного визначення процесу не існує. Можна навести декілька визначень, і вони всі будуть вірними.

Процес

  • це програма в стадії виконання;
  • це жива душа процедури;
  • це об'єкт, якому виділені процесори;
  • це модуль, який диспетчеризується.

Модель трьох (п'яти) станів процесів

Модель 3-5 станів.png

Народження - це стан (напівстан), процес проходить через даний стан, але знаходитися в ньому не може.
Готовність - це пасивний стан, процес знаходиться в списку готових до виконання процесів, фізично він знаходиться в оперативній пам'яті.
Виконання - це єдиний активний стан, саме в цьому стані процес займає або використовує процесор, знаходиться в RAW, але прийнято казати, що в цьому стані процес знаходиться в процесорі.
Чекання - це пасивний стан, процес чекає настання якоїсь події, даних, звільнення ресурсу.
Завершення - стан (напівстан) подібний до народження, процес проходить через цей стан, коли закінчується, але знаходитися в цьому стані довго не може.

Робота даної діаграми

Народжується процес. Потрапляє в стан готовність і в стані готовності знаходиться в черзі готових до виконання процесів доки не дійде до нього черга (як в столовкі в черзі). Потрапляє процес в стан виконання. Тут 3 варіанти:

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

Перейшовши в стан чекання процес чекає настання необхідної події. Як тільки процес дочекався, він переводиться в стан готовність.

Операції над процесами

  • Допуск до планування (створення процесу)
  • Відправлення на виконання
  • Переривання процесу
  • Завершення процесу
  • Переведення в стан чекання
  • Переведення до стану готовність (відновлення процесу)

Процеси в Linux

Модель станів Linux.png

Чекання, що переривається (S) - це стан блокування, при якому процес чекає події(вводу, виводу, гигналу від іншого процесу)
Чекання, що непериривається (D) - процес беспосередньо чекає виконання якоїсь апаратної умови і тому не сприймає ніякі інші сигнали.
Призупинення (T) - процес був зупинений і може бути продовжений тільки при дії іншого процесу.
Зомбі (Z) - процес було припинено, але за деяких обставин його структура залишилася в таблиці процесів.
Визначення станів Готовність та Виконання (R) такі ж, як і в попередній моделі!