Студопедия
Новини освіти і науки:
МАРК РЕГНЕРУС ДОСЛІДЖЕННЯ: Наскільки відрізняються діти, які виросли в одностатевих союзах


РЕЗОЛЮЦІЯ: Громадського обговорення навчальної програми статевого виховання


ЧОМУ ФОНД ОЛЕНИ ПІНЧУК І МОЗ УКРАЇНИ ПРОПАГУЮТЬ "СЕКСУАЛЬНІ УРОКИ"


ЕКЗИСТЕНЦІЙНО-ПСИХОЛОГІЧНІ ОСНОВИ ПОРУШЕННЯ СТАТЕВОЇ ІДЕНТИЧНОСТІ ПІДЛІТКІВ


Батьківський, громадянський рух в Україні закликає МОН зупинити тотальну сексуалізацію дітей і підлітків


Відкрите звернення Міністру освіти й науки України - Гриневич Лілії Михайлівні


Представництво українського жіноцтва в ООН: низький рівень культури спілкування в соціальних мережах


Гендерна антидискримінаційна експертиза може зробити нас моральними рабами


ЛІВИЙ МАРКСИЗМ У НОВИХ ПІДРУЧНИКАХ ДЛЯ ШКОЛЯРІВ


ВІДКРИТА ЗАЯВА на підтримку позиції Ганни Турчинової та права кожної людини на свободу думки, світогляду та вираження поглядів



Ігнорування проблеми тупиків

Запобігання, виявлення та усунення взаємоблокування

Стратегії запобігання взаімоблокіровок дуже консервативні, так як вирішує проблему взаімоблокіровок шляхом обмеження доступу процесів до ресурсів і накладення обмежень на процеси. Їх протилежність - стратегії виявлення та усунення взаімоблокіровок, які не обмежують доступу процесів до ресурсів і не накладають жодних обмежень на дії процесів.

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

1. В. Столлінгс. Операційні системи. - М. «Вільямс», 2002

2. Е. Таненбаум. Сучасні операційні системи. - СПб.: Питер, 2002.

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

 

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

Отже, основні напрямки боротьби з тупиками:

1. Ігнорування проблеми в цілому.

2. Запобігання тупиків.

3. Виявлення тупиків.

4. Відновлення після тупиків.

 

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

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

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

 


Читайте також:

  1. V. ЗЕМЕЛЬНІ РЕСУРСИ. ОХОРОНА НАДР ТА ПРОБЛЕМИ ЕНЕРГЕТИКИ
  2. VІІІ. Проблеми та перспективи розвитку машинобудування.
  3. Аграрні проблеми в працях письменників аграрників.
  4. Агроекологічні проблеми розвитку і шляхи їх розв'язання
  5. АКТУАЛЬНI ПРОБЛЕМИ І ЗАВДАННЯ КУРСУ РОЗМIЩЕННЯ ПРОДУКТИВНИХ СИЛ УКРАЇНИ
  6. Актуальні проблеми біоетики
  7. Актуальні проблеми економічної безпеки України.
  8. Актуальність проблеми професійної етики соціальної роботи
  9. Актуальність проблеми.
  10. Алгоритм запобігання тупиків
  11. Антропогенний вплив на природне середовище та сучасні екологічні проблеми
  12. Базові (головні, стратегічні) психологічні проблеми управління.




Переглядів: 611

<== попередня сторінка | наступна сторінка ==>
Умови виникнення взаємоблокування | Виявлення тупиків

Не знайшли потрібну інформацію? Скористайтесь пошуком google:

  

© studopedia.com.ua При використанні або копіюванні матеріалів пряме посилання на сайт обов'язкове.


Генерація сторінки за: 0.013 сек.