Факторы, обуславливающие сложность восстановления системы после тупика.

1) Неочевидность того что система попала в тупиковую ситуацию.

2) В большинстве ОС не существует эффективных средств приостановки процесса на неопределённо долгое время и выведения его из системы с последующим его возобновлением. Так процессы реального времени не должны быть остановлены. Даже если в системе имеются средства остановки – восстановления процесса, то это требует значительных затрат машинного времени и высококвалифицированных профессионалов.

3) Требуется большой объём дополнительных работ.

 

В современных ОС процесс восстановления после тупиков осуществляется путём принудительного вывода некоторого процесса из системы, что бы можно было использовать его ресурсы. Этот процесс теряется, зато за счёт освобождения ресурсов остальные процессы могут работать. Иногда требуется уничтожить несколько процессов чтобы освободить достаточное количество ресурсов для завершения оставшихся процессов. В таких ситуациях большое значение имеет алгоритм выведения процессов. Наиболее значимым на сегодняшний день является алгоритм выведения процессов по приоритетам. Скорее всего самым целесообразным способом восстановления системы после тупиков всё таки является механизм приостановки-восстановления процесса, поскольку он позволяет перевести процессы в состояние ожидания, а затем их активизировать без потери результата предыдущей работы тупики могут приводить к катастрофическим последствиям в некоторых системах: в первую очередь в системах реального времени. Тупиковые ситуации могут явиться критическим фактором для операционных систем больших вычислительных комплексов из за большого количества одновременно выполняемых процессов и более динамичного использования ресурсов.