Короткі теоретичні відомості

Модуль 3 Планування та диспетчеризація процесів КЗП.21.03

Лабораторна робота № 10

Тема: Диспетчеризація процесів.

Мета роботи (дидактична): ознайомиться з поняттям планування та диспетчеризації процесів і потоків.

Завдання:

1. Планування та диспетчеризація процесів.

2. Алгоритми планування.

Методичне забезпечення:інструкції до лабораторної роботи.

Обладнання: комп’ютери.

Техніка безпеки

Під час роботи на ПК суворо забороняється:

1. Торкатися до екрана і тильного боку дисплея, дротів живлення і пристроїв заземлення;

2. Порушувати порядок вмикання та вимикання блоків, намагатися самостійно усунути виявлену несправність в роботі апаратури;

3. Класти на апаратуру сторонні предмети;

4. Працювати на ПК у вологій одежі або з вологими руками.

Хід роботи

1 Вхідний контроль.

1.1 Процеси та потоки.

Короткі теоретичні відомості

Планування процесів (завдань) - це визначення черговості отримання ресурсів обчислювальної системи для процесів при їх активізації. Планування процесу пов'язано з його перекладом зі стану бездіяльності в стан готовності. Такий переклад здійснюється одноразово на інтервалі існування процесу.

Диспетчеризація процесів (завдань) - це визначення черговості отримання процесора для процесів (завдань), що знаходяться в стані готовності, з метою їх виконання. Диспетчеризація процесу пов'язана з його перекладом зі стану готовності в стан виконання (рахунка). Диспетчеризація, для конкретного процесу, може виконуватися багаторазово, тобто процес може кілька разів переходити зі стану готовності в стан виконання та назад на інтервалі свого існування. Так як в кожен такт процесорного часу можуть виконуватися команди тільки одного завдання, диспетчеризація передбачає створення і модифікацію черги готових до виконання завдань (процесів). Елементами такої черги (як і інших черг в обчислювальній системі) на "фізичному рівні" є дескриптори завдань.

Дескриптор завдання - це спеціальна інформаційна структура, в якій зберігаються характеристики завдання необхідні для цілей управління з боку ОС. Спочатку, дескриптор завдання формується на етапі її трансляції. Перед виконанням завдання, такий дескриптор завантажується в оперативну пам'ять спільно з е ¨ кодом і даними. Інформація про задачу, яка зберігається в дескрипторі, поділяється на кілька груп, і частин її динамічно змінюється на інтервалі існування завдання. Розглянемо ці групи:інформація щодо ідентифікації завдання (ім'я завдання, тип задачі);інформація про ресурси, які необхідні задачі для її виконання і про ресурси, які використовуються в даний час (ідентифікатори необхідних зовнішніх пристроїв);інформація про поточний стан задачі (вміст деяких регістрів процесора);інформація про родинні зв'язки завдання (імена батьківського процесу і процесів-предків);інформація, необхідна для цілей планування і диспетчеризації (адресні посилання на сусідні дескриптори, що знаходяться в тій же черзі, пріоритет завдання, посилання на об'єкти синхронізації). Зазвичай, дескриптор задачі має розмір близько декількох десятків машинних слів. Є два основних способи розміщення дескрипторів в оперативній пам'яті. Перший, більш ранній, полягає в тому, що ОС виділяє в системній області пам'яті спеціальний розділ під таблицю дескрипторів. Така таблиця має фіксований розмір і фіксований початковий адресу. Такий спосіб простий з точки зору управління і складності реалізації, але має істотний недолік - обмеження паралелізму в обчислювальній системі. Причиною цього недоліку є обмежений розмір таблиці дескрипторів. Другий спосіб, більш сучасний, полягає в тому, що ОС виділяє відповідну вільну область оперативної пам'яті під черговий завантажуваний дескриптор задачі. Методологічно, такий спосіб не обмежує паралелізм функціонування обчислювальної системи.