ів, зокрема, від заявленого процесом часу, необхідного для його виконання. При розгляді цієї та інших стратегій будемо використовувати
діаграми Ганта (Gantt charts) зображують імена процесів і тимчасові діапазони їх виконання, виражені в деяких одиницях часу.
Розглянемо наступний приклад. Нехай процеси P 1 , P 2 і P 3 введені в систему в зазначеному порядку з такими періодами активності:
ПроцессиПеріод актівностіP 1 24P 2 < span align = "justify"> 3P 3 3
Тоді при використанні стратегії FCFS для їх диспетчеризації першим отримає процесор перший процес, незважаючи на те, що він - найбільш довгий. Розподіл процесора між процесами в даному випадку зображено на малюнок 3. p align="justify"> Схема диспетчеризації по стратегії FCFS (приклад 1)
В
Малюнок 3
Таким чином, час очікування для P 1 = 0; P 2 = 24; P 3 = 27.
Середній час очікування: (0 + 24 + 27)/3 = 17.
Якщо порядок процесів іншою: P 2 , P 3 , P 1 (останній введений в систему процес - найдовший), то результат їх диспетчеризації буде зовсім іншим (малюнок 4)
Схема диспетчеризації по стратегії FCFS (приклад 2).
В
Малюнок 4
Час очікування процесів в даному випадку: P 1 = 6; P 2 = 0; P 3 = 3. span>
Середній час очікування: (6 + 0 + 3)/3 = 3
Даний результат багато краще, ніж у попередньому випадку.
Ефект, продемонстрований першим прикладом, носить назву ефекту супроводу (convoy effect) - збільшення середнього часу очікування процесів у випадках , якщо короткий процес обслуговується після довгого процесу.
2. Стратегія Shortest Job First (SJF)
Стратегія Shortest ...