Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Концепцiя процесу
Одне з найпростiших визначень: процес – це програма, викликана на виконання; або це дiяльнiсть, здiйснювана процесором при виконаннi програми. За визначенням ГОСТ 19781-83 процес – це система дiй, що реалiзує певну функцiю в обчислювальнiй системi i оформлена так, що керуюча програма обчислювальної системи може перерозподiляти ресурси цiєї системи в цiлях забезпечення мультипрограмування.
Сергiй Стасюк Системне програмне забезпечення Взаємовиключення
Концепцiя процесу
Поняття процес абстрактне i розглядається по-рiзному рiзними категорiями осiб (користувачi, прикладнi i системнi програмiсти). Будь-якому процесу властивi два реальнi атрибути: Програма, по якiй процес розвивається в активному станi; Дескриптор процесу (блок керування процесом, PCB) – iнформацiйна структура, необхiдна для керування процесом. Динамiка змiни станiв процесу i його звернень до ресурсiв визначає динамiчний характер iнформацiї, зосередженої в дескрипторi процесу (ДП).
Сергiй Стасюк Системне програмне забезпечення
Стани процесу Взаємовиключення Для початку розглянемо п’ять станiв процесу: 1 Породження – помiщаються в пам’ять усi або деякi сторiнки програми, формується дескриптор процесу, модифiкуються iншi системнi ресурси; 2 Готовнiсть – програмi наданi усi необхiднi у даний момент ресурси, окрiм процесора; 3 Виконання – програма виконується на процесорi; 4 Очiкування – програма не виконується внаслiдок зайнятостi якого-небудь ресурсу, крiм того процес може чекати якої-небудь подiї (завершення переривання по вводу/виводу i тому подiбне); 5 Завершення – нормальне або аварiйне закiнчення виконання програми.
Сергiй Стасюк Системне програмне забезпечення
Стани процесу Взаємовиключення
Для початку розглянемо п’ять станiв процесу:
Породження Готовність примусово Виконання
Очікування
примусово (завершення)
Figure: Дiаграма станiв процесу
Сергiй Стасюк Системне програмне забезпечення
Стани процесу Взаємовиключення
Готовi до виконання процеси утворюють список, в якому вони впорядкованi по прiоритету, так що наступним процесом, який одержить квант часу ЦП буде перший процес цього списку. Список заблокованих (очiкуючих чого-небудь) процесiв не впорядковується, оскiльки розблокування вiдбувається в тому порядку, в якому звiльняються ресурси або закiнчується ввiд/вивiд. Процес може призупинити або блокувати сам себе (викликавши переривання або запитавши недоступний в даний момент ресурс), перехiд в усi iншi стани (окрiм хiба що нормального завершення) iнiцiюється зовнiшнiми по вiдношенню до процесу об’єктами.
Сергiй Стасюк Системне програмне забезпечення Взаємовиключення
Керування процесами
Дескриптор процесу зазвичай мiстить наступну iнформацiю: Унiкальный iдентифiкатор процесу; Поточний стан процесу; Рiвень привiлеїв; Вказiвники видiлених про процесу ресурсiв (в тому числi i вказiвники на областi пам’ятi, що видiлена процесу); Область зберiгання регiстрiв на випадок переходу в неактивний стан. Для прискорення процедур керування процесами в багатьох ЦП передбачається апаратний регiстр, який вказує на дескриптор поточного процесу (наприклад, TR в 80286).
Сергiй Стасюк Системне програмне забезпечення Взаємовиключення
Операцiї над процесами
Створення; Запуск; Знищення; Блокування; Вiдновлення (розблокування); Змiна прiоритету.
Сергiй Стасюк Системне програмне забезпечення Взаємовиключення
Операцiї над процесами
Готовий
(настання очікуваної події)
Запуск
Закінчення кванту часу
Переривання, запит ресурсу
(очікує) Заблокований
|