Процесс - это исполняемая программа. Компьютер должен выполнять много задач одновременно. Следовательно, процессор должен получать процессы и выполнять их. Иногда необходимо выполнить некоторые процессы, чем другие процессы. В этот момент рабочий процесс прерывается, и ЦП выделяется для нового процесса. После того, как задача завершена, ЦП выделяется для предыдущего процесса. Планирование в соответствии с этим механизмом известно как упреждающее планирование. Если запущенный процесс не может быть прерван, и он является обязательным для выполнения запущенного процесса, он называется неперегрузочным планированием. В этой статье обсуждается различие между упреждающим и не вытесняющим планированием в операционной системе.. Упреждающее планирование - это механизм планирования процесса, посредством которого процесс может быть прерван другим процессом в середине его выполнения. Неприоритетное планирование - это механизм планирования процесса, посредством которого один процесс начинает выполнение только после завершения предыдущего процесса.. Это ключевое отличие между Упреждающее и не вытесняющее планирование в ОС.
1. Обзор и основные отличия
2. Что такое упреждающее планирование в ОС
3. Что такое Неприоритетное Планирование в ОС
4. Сходства между упреждающим и не вытесняющим планированием в ОС
5. Сравнение бок о бок - упреждающее и неперегрузочное планирование в ОС в табличной форме
6. Резюме
Round Robin Scheduling является примером упреждающего планирования. Каждый процесс получает небольшое количество процессорного времени. Обычно это от 10 до 100 миллисекунд. Эта небольшая единица данных также известна как квант времени. По истечении этого времени процесс прерывается и добавляется в конец очереди готовности. Предположим, что есть 4 процесса как P1, P2, P3 и P4. Время загрузки процессора в миллисекундах выглядит следующим образом. Квант времени равен 20.
Рисунок 01: Пример круглого планирования Робина
Процесс P1 выполняется до 20. Осталось еще 33 мс. Затем выполняется P2. Поскольку квант времени равен 20, а требуемое время P2 равно 17 мс, P2 будет выполняться в течение 17 мс. Итак, процесс P2 завершен. Тогда шанс предоставляется P3. Это будет выполняться в течение 20 мс. Остальные 48мс. Затем P4 будет выполняться в течение 20 мс. У него есть 4 мсек, чтобы завершить весь процесс. Опять же, P1 будет работать в течение 20 мс. У него есть еще 13 мс до завершения процесса. Изменение дается на P3. Он будет выполняться в течение 20 мс, и у него есть еще 28 мс, чтобы закончить полностью. P4 выполняется. Это только 4 мс. Таким образом, P4 завершает выполнение. P2 и P4 уже закончили. Остальные процессы - это P1 и P3. Шанс предоставляется P3. У него было 13 мс для завершения, поэтому оно завершается. Теперь единственный оставшийся процесс - P3. У этого есть 28 мс, чтобы закончить. Таким образом, P3 будет работать в течение 20 мс. Остальные 8мс. Все остальные процессы уже завершены. Следовательно, снова выполнятся оставшиеся 8 мс P3. Кроме того, каждый процесс получает возможность выполнить.
Планирование «первым пришел - первым обслужен» (FCFS) может быть взято в качестве примера неперегрузочного планирования. Процесс, который запрашивает первым, сначала выделяется ЦПУ. Это планирование легко управляется очередью «первым пришел - первым обслужен» (FIFO). Если есть процессы, приведенные в порядок как P1, P2 и P3, то шанс сначала дается P1. После того, как это закончено, P2 выполнится. Когда P2 завершится, P3 выполнится. Предположим, что есть 3 процесса, такие как P1, P2 и P3 со временем загрузки ЦП в миллисекундах следующим образом.
Рисунок 02: Пример планирования FCFS
В соответствии с вышеизложенным, P1 будет выполняться. Как только он завершен, процесс P2 выполняется в течение 3 мс. Теперь оставшийся процесс - P3. Тогда это выполнится. Время ожидания для P1 равно нулю. Процесс P2 должен был ждать 24 мс, а процесс P3 должен был ждать 27 мс. Если процессы поступили в порядке P2, P3 и P1, тогда P2 завершится первым. Следующая P3 будет завершена, и, наконец, P1 будет завершена.
Упреждающее или неприоритетное планирование в ОС | |
Упреждающее планирование - это механизм планирования процесса, посредством которого процесс может быть прерван другим процессом в середине его выполнения.. | Неприоритетное планирование - это механизм планирования процесса, посредством которого один процесс начинает выполнение только после завершения предыдущего процесса.. |
Прерывание процесса | |
В упреждающем планировании процессы могут быть прерваны. | При неперегрузочном планировании процессы могут быть прерваны. |
Загрузка процессора | |
При упреждающем планировании загрузка ЦП выше, чем при непревзойденном планировании. | При неперегрузочном планировании загрузка ЦП минимальна по сравнению с вытесняющим планированием. |
гибкость | |
Упреждающее планирование является гибким. | Неприоритетное планирование не является гибким. |
На компьютере запущено несколько процессов. Когда каждый процесс выполняется, ЦП выделяется для этого конкретного процесса. Иногда необходимо остановить выполнение текущего процесса и дать приоритет другому процессу. Механизмы планирования процессов могут быть упреждающими или не вытесняющими. Упреждающее планирование - это механизм планирования процесса, посредством которого процесс может быть прерван другим процессом в середине его выполнения. Неприоритетное планирование - это механизм планирования процесса, хотя один процесс начинает выполнение только после завершения предыдущего процесса. В этом разница между вытесняющим и не вытесняющим расписанием в ОС.
Вы можете скачать PDF-версию этой статьи и использовать ее в автономном режиме согласно примечанию. Пожалуйста, загрузите PDF-версию здесь: Разница между упреждающим и не вытесняющим планированием в ОС
1. Что такое упреждающее и не вытесняющее планирование? Доступна здесь
2.Point, учебники. “Алгоритмы планирования операционной системы.”, Учебное пособие. 8 января 2018. Доступно здесь
3. «Что такое упреждающие и не вытесняющие термины в контексте ОС?» GeeksforGeeks Q & A. Доступна здесь