Алгоритм планирования FCFS: что такое, пример программы

Содержание:

Anonim

Что такое метод «первым пришел - первым обслужен»?

First Come First Serve (FCFS) - это алгоритм планирования операционной системы, который автоматически выполняет поставленные в очередь запросы и процессы в порядке их поступления. Это самый простой и легкий алгоритм планирования работы процессора. В этом типе алгоритма процессы, которые сначала запрашивают ЦП, сначала получают выделение ЦП. Это управляется очередью FIFO. Полная форма FCFS - это обслуживание в порядке очереди.

Когда процесс входит в очередь готовности, его PCB (блок управления процессом) связывается с хвостом очереди и, когда ЦП освобождается, он должен быть назначен процессу в начале очереди.

В этом руководстве по операционной системе вы узнаете:

  • Что такое метод «первым пришел - первым обслужен»?
  • Характеристики метода FCFS
  • Пример планирования FCFS
  • Как работает FCFS? Расчет среднего времени ожидания
  • Преимущества FCFS
  • Недостатки FCFS

Характеристики метода FCFS

  • Он поддерживает алгоритм упреждающего и упреждающего планирования.
  • Задания всегда выполняются в порядке очереди.
  • Легко реализовать и использовать.
  • Этот метод имеет низкую производительность, а общее время ожидания довольно велико.

Пример планирования FCFS

Реальный пример метода FCFS - покупка билета в кино на кассе. В этом алгоритме планирования человек обслуживается в соответствии с порядком очереди. Человек, который приходит первым в очереди, сначала покупает билет, а затем следующий. Это будет продолжаться до тех пор, пока последний человек в очереди не купит билет. При использовании этого алгоритма процесс ЦП работает аналогичным образом.

Как работает FCFS? Расчет среднего времени ожидания

Вот пример пяти процессов, происходящих в разное время. У каждого процесса разное время пачки импульсов.

Процесс Время взрыва Время прибытия
P1 6 2
P2 3 5
P3 8 1
P4 3 0
P5 4 4

Используя алгоритм планирования FCFS, эти процессы обрабатываются следующим образом.

Шаг 0) Процесс начинается с P4, время прибытия которого равно 0.

Шаг 1) В момент времени = 1 приходит P3. P4 все еще выполняется. Следовательно, P3 хранится в очереди.

Процесс Время взрыва Время прибытия
P1 6 2
P2 3 5
P3 8 1
P4 3 0
P5 4 4

Шаг 2) В момент времени = 2 прибывает P1, который хранится в очереди.

Процесс Время взрыва Время прибытия
P1 6 2
P2 3 5
P3 8 1
P4 3 0
P5 4 4

Шаг 3) В момент времени = 3 процесс P4 завершает свое выполнение.

Шаг 4) В момент времени = 4 начинает выполнение P3, который находится первым в очереди.

Процесс Время взрыва Время прибытия
P1 6 2
P2 3 5
P3 8 1
P4 3 0
P5 4 4

Шаг 5) В момент времени = 5 приходит P2, который хранится в очереди.

Процесс Время взрыва Время прибытия
P1 6 2
P2 3 5
P3 8 1
P4 3 0
P5 4 4

Шаг 6) В момент времени 11 P3 завершает свое выполнение.

Шаг 7) В момент времени = 11 запускается P1. Он имеет время пачки импульсов 6. Он завершает выполнение в интервале времени 17.

Шаг 8) В момент времени = 17 запускается P5. Его время пачки равно 4. Он завершает выполнение в момент времени = 21.

Шаг 9) В момент времени = 21 P2 начинает выполнение. Он имеет время пакета 2. Он завершает выполнение в интервале времени 23.

Шаг 10) Рассчитаем среднее время ожидания для приведенного выше примера.

Waiting time = Start time - Arrival time

P4 = 0-0 = 0

P3 = 3-1 = 2

PI = 11-2 = 9

P5 = 17-4 = 13

P2 = 21-5 = 16

Среднее время ожидания

= 40/5 = 8

Преимущества FCFS

Вот плюсы / преимущества использования алгоритма планирования FCFS:

  • Простейшая форма алгоритма планирования ЦП
  • Легко программировать
  • Первым прибыл - первым обслужен Эквивалент в русском языке: поздний гость гложет и кость

Недостатки FCFS

Вот минусы / недостатки использования алгоритма планирования FCFS:

  • Это алгоритм планирования ЦП без вытеснения, поэтому после того, как процесс был выделен ЦП, он никогда не освободит ЦП, пока не закончит выполнение.
  • Среднее время ожидания высокое.
  • Короткие процессы, находящиеся в конце очереди, должны ждать завершения длинного процесса впереди.
  • Не идеальный метод для систем с разделением времени.
  • Из-за своей простоты FCFS не очень эффективен.

Резюме:

  • Определение: FCFS - это алгоритм планирования операционной системы, который автоматически выполняет запросы и процессы в очереди в порядке их поступления.
  • Он поддерживает упреждающее и упреждающее планирование.
  • алгоритм.
  • FCFS расшифровывается как First Come First Serve
  • Реальный пример метода FCFS - покупка билета в кино на кассе.
  • Это простейшая форма алгоритма планирования ЦП.
  • Это алгоритм планирования ЦП без вытеснения, поэтому после того, как процесс был выделен ЦП, он никогда не освободит ЦП, пока не закончит выполнение.