Головна

Thrashing. Властивість локальності. Модель робочого безлічі.

  1.  IV. В БОРОТЬБІ З ЯКИМИ ВОРОГАМИ ВСЕРЕДИНІ РОБОЧОГО РУХУ ВИРІС, зміцнів і загартувався БІЛЬШОВИЗМ?
  2.  IV. Модель (ГБ).
  3. " Економічного людини "модель.
  4.  А) Модельне дію
  5.  А-модель
  6.  Автоматизоване робоче місце (АРМ) як засіб автоматизації робочого місця кінцевого користувача.

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

Хоча теоретично можливо зменшити число кадрів процесу до мінімуму, існує якесь число активно використовуваних сторінок, без якого процес часто генерує faltи. Ця висока частота сторінкових порушень називається трешінг (trashing, іноді вживається російський термін пробуксовка). Процес знаходиться в стані трешінга, якщо він більше часу займається підкачкою сторінок, ніж виконанням. Критична ситуація такого роду виникає незалежно від конкретних алгоритмів заміщення.

Мал. 10.2 Частота page fault'ов

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

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

Критична ситуація типу трешінга виникає незалежно від конкретних алгоритмів заміщення. Єдиним алгоритмом, теоретично гарантує відсутність thrashing, є розглянутий вище не можна реалізувати на практиці оптимальний алгоритм.

Отже, трешінг - висока частота сторінкових порушень. Необхідно її контролювати. Коли вона висока, процес має потребу в кадрах. Можна, встановлюючи бажану частоту fault'ов, регулювати розмір процесу, додаючи або віднімаючи у нього кадри. Як і у випадку з робочим безліччю (див. Нижче) може бути доцільним притримати процес, звільнивши його кадри. Вивільнені кадри виділяються іншим процесам з високою частотою fault'ов.

Для запобігання трешінга потрібно виділити процесу стільки кадрів, скільки йому потрібно. Але як дізнатися, скільки йому потрібно. Існує кілька підходів. Необхідно спробувати з'ясувати, як багато кадрів процес реально використовує. Цей підхід визначає модель локальності виконання процесу.




 Структура обчислювальної системи |  Що таке ОС |  Коротка історія еволюції обчислювальних систем |  Системні виклики |  виняткові ситуації |  Монолітне ядро |  Листкові системи (Layered systems) |  Віртуальні машини |  Мікроядерна архітектура. |  змішані системи |

© um.co.ua - учбові матеріали та реферати