Планування процесів в ОС: довгостроковий, середньостроковий і короткостроковий планувальник

⚡ Розумний підсумок

Планування процесів – це завдання операційної системи, яке керує процесами в станах готовності, очікування та виконання. Воно виділяє процесорний час кожному процесу, підтримує його зайнятість і зменшує час відгуку за допомогою довгострокових, середньострокових та короткострокових планувальників.

  • 🗓️ Визначення: Планування процесів керує процесами в станах готовності, очікування та виконання, щоб забезпечити зайнятість процесора.
  • 📥 Черги: Черги завдань, готовності та пристроїв упорядковують процеси за станом їх виконання.
  • 🔀 Модель двох держав: На найпростішому рівні процес або виконується, або не виконується.
  • 🧑‍💼 Три планувальники: Довгострокові, середньострокові та короткострокові планувальники контролюють, які процеси виконуються і коли.
  • Короткий термін: Планувальник процесора є найшвидшим, вибираючи готовий процес для негайного виконання.
  • 🔁 Перемикач контексту: Збереження та відновлення стану процесора на друкованій платі дозволяє виконувати багатозадачність.

Планування процесів в ОС

Що таке планування процесів?

Планування процесу — це завдання ОС, яке планує процеси різних станів, таких як готовий, очікування та виконання.

Планування процесів дозволяє ОС виділяти часовий інтервал виконання процесора для кожного процесу. Ще однією важливою причиною використання системи планування процесів є те, що вона постійно займає процесор. Це дозволяє отримати мінімальний час відгуку програм.

Черги планування процесів

Черги планування процесів допомагають підтримувати окрему чергу для кожного стану процесу та плати виконання (PCB). Усі процеси з одним і тим самим станом виконання розміщуються в одній черзі. Тому, щоразу, коли стан процесу змінюється, його плати виконання потрібно від’єднати від існуючої черги та перемістити назад до черги нового стану.

Є три типи черг операційної системи:

  1. Черга завдань – Це допомагає зберігати всі процеси в системі.
  2. Готова черга – Цей тип черги допомагає встановити кожен процес, що знаходиться в основній пам’яті, який готовий і очікує на виконання.
  3. Черги пристроїв – Це процес, який заблоковано через відсутність пристрою введення-виведення.
Черги планування процесів
Черги планування процесів

На наведеній вище діаграмі:

  • Прямокутник представляє чергу.
  • Коло позначає ресурс.
  • Стрілка вказує на хід процесу.
  1. Кожен новий процес спочатку поміщається в чергу готовності. Він очікує в черзі готовності, поки його остаточно не буде оброблено для виконання. Тут новий процес поміщається в чергу готовності та чекає, поки його не буде обрано для виконання або його не буде відправлено.
  2. Одному з процесів виділено процесор, і він виконується.
  3. Процес повинен видати запит вводу/виводу.
  4. Потім його слід помістити в чергу вводу/виводу.
  5. Процес має створити новий підпроцес.
  6. Процес повинен чекати свого завершення.
  7. Його слід примусово видалити з процесора в результаті переривання. Після завершення переривання його слід відправити назад до черги готовності.

Модель процесу двох станів

Моделі процесу з двома станами:

  • Запущений стан
  • Не запущений стан

Робота

Перейдіть на вкладку Operaсистема тингу, щоразу, коли створюється новий процес, він вводиться в систему, яка повинна бути запущена.

Не працює

Процеси, що не виконуються, зберігаються в черзі, яка очікує своєї черги на виконання. Кожен запис у черзі є точкою до певного процесу.

Цілі планування

Ось важливі цілі планування процесів:

  • Збільште кількість інтерактивних користувачів за прийнятний час відповіді.
  • Досягніть балансу між відгуком і використанням.
  • Уникайте відкладень на невизначений термін і дотримуйтеся пріоритетів.
  • Він також має містити посилання на процеси, що містять ключові ресурси.

Тип планувальників процесів

Планувальник — це тип системного програмного забезпечення, яке дозволяє керувати плануванням процесів.

Існує в основному три типи планувальників процесів:

  1. Довгостроковий планувальник
  2. Короткостроковий планувальник
  3. Середньостроковий планувальник

Довгостроковий планувальник

Довгостроковий планувальник також відомий як планувальник завданьЦей планувальник регулює програму, вибирає процеси з черги та завантажує їх у пам'ять для виконання. Він також регулює ступінь мультипрограмування.

Однак головною метою цього типу планувальника є пропонування збалансованого поєднання завдань, таких як завдання процесора та вводу/виводу, що дозволяє керувати мультипрограмуванням.

Середньостроковий планувальник

Важливою частиною є середньострокове планування обмінpingЦе дозволяє обробляти процеси, що підключаються до комп'ютера. У цьому планувальнику запущений процес може бути призупинений, що призведе до запиту на введення/виведення.

Запущений процес може бути призупинений, якщо він здійснює запит вводу/виводу. Призупинений процес не може просуватися до завершення. Щоб видалити процес з пам'яті та звільнити місце для інших процесів, призупинений процес слід перемістити на вторинне сховище.

Короткостроковий планувальник

Короткострокове планування також відоме як Планувальник ЦПГоловною метою цього планувальника є підвищення продуктивності системи відповідно до встановлених критеріїв. Це допомагає вибрати з групи процесів, готових до виконання, та виділити процесор одному з них. Диспетчер передає керування процесором процесу, вибраному короткостроковим планувальником.

Різниця між планувальниками

Довгостроковий проти короткострокового проти середньострокового:

Довгий строк Короткий термін Середньостроковий
Довгостроковий також відомий як планувальник завдань. Короткостроковий також відомий як планувальник процесора. Середньостроковий також називається свопомping планувальник.
У системі розподілу часу він або відсутній, або мінімальний. У порядку розподілу часу він незначний. Цей планувальник є елементом систем розподілу часу.
Швидкість менша порівняно з короткостроковим планувальником. Швидкість найвища порівняно з короткостроковим і середньостроковим планувальником. Він забезпечує середню швидкість.
Дозволяє вибирати процеси з завантаження та об'єднувати їх назад у пам'ять. Він вибирає лише процеси, які перебувають у стані готовності до виконання. Це допомагає вам відправити процес назад у пам'ять.
Пропонує повний контроль. Пропонує менше контролю. Знижує рівень мультипрограмування.

Що таке перемикач контексту?

Це метод збереження/відновлення стану процесора на друкованій платі, щоб виконання процесу можна було відновити з тієї ж точки пізніше. Метод перемикання контексту важливий для багатозадачної ОС.

Поширені запитання

Планувальник вирішує, який процес має виконуватися наступним, на основі політики. Диспетчер — це модуль, який фактично надає вибраному процесу керування процесором, виконуючи перемикання контексту та переходи.ping у потрібне місце в програмі.

Ступінь мультипрограмування – це кількість процесів, що одночасно зберігаються в основній пам'яті. Довгостроковий планувальник контролює його, вирішуючи, скільки процесів допустити, балансуючи використання процесора та вводу/виводу для ефективної роботи системи.

Блок керування процесом (Pracse Control Block) – це структура даних, яку ОС використовує для зберігання всієї інформації про процес, такої як його стан, лічильник програм, регістри та обмеження пам'яті. Він необхідний для збереження та відновлення процесів під час перемикання контексту.

Штучний інтелект може вивчати закономірності робочого навантаження, щоб вирішувати, який процес запускати та як розподіляти час процесора. Замість фіксованих правил він адаптує планування в режимі реального часу, покращуючи пропускну здатність, час відгуку та енергоефективність, особливо в хмарних та багатоядерних системах.

Так. Аналізуючи попередні сплески навантаження на процесор та шаблони вводу-виводу, моделі штучного інтелекту можуть оцінити, як довго виконуватиметься процес і чи обмежений він ресурсами процесора чи вводу-виводу. Ці прогнози допомагають планувальнику пріоритезувати процеси та скоротити час очікування.

Підсумуйте цей пост за допомогою: