Алгоритм «Первым пришел, первым обслужен»

#process #operating-system #scheduled-tasks

#процесс #операционная система #запланированные задачи

Вопрос:

Итак, согласно Google, алгоритм «первым пришел, первым обслужен» — это алгоритм планирования без вытеснения, но в нем также упоминается, что это вытесняющий алгоритм. Означает ли это, что может быть и то, и другое?

Кроме того, если это тот случай, когда он не является упреждающим, может ли процесс блокироваться в середине выполнения для ввода-вывода?

Спасибо!

Комментарии:

1. Или, может быть, некоторые ссылки, которые вы нашли через Google, являются мусором?

2. FCFS могут быть организованы так, как вы хотите. Как вы упомянули, если вы любой ценой доводите задачу до завершения, если она блокируется при вводе-выводе, вы больше ничего не будете планировать или будете планировать что-либо только до завершения ввода-вывода. Или алгоритм может поместить заблокированный поток в конец очереди заданий. Или у вас могут быть FCFS с приоритетом; вы обслуживаете по приоритету, затем FCFS в пределах каждого диапазона приоритетов. FCFS — это просто очень общая политика, которую можно комбинировать с другими политиками или реализовывать множеством способов.

Ответ №1:

Принцип «Первым пришел-первым обслужен» (FCFS) Простейшей политикой планирования является принцип «первым пришел-первым обслужен» (FCFS), также известный как алгоритм «первым пришел-первым вышел» (FIFO) или алгоритмы планирования процессора — строгая схема очередности. Когда каждый процесс становится готовым, он присоединяется к очереди готовности. Когда текущий запущенный процесс прекращает выполнение, для запуска выбирается процесс, который находился в очереди готовности дольше всех. Подробнее см.