Алгоритм банкиров с процессом в реальном времени

Как мы можем дать процесс в диспетчере задач (например, notepad.exe) в качестве входных данных в качестве процесса для моего алгоритма Bankers (обнаружение тупиковых ситуаций) ???

2

Решение

Будет сложно и, вероятно, невозможно осуществить отслеживание всех условий ОС / внешних условий для реализации реального алгоритма предотвращения тупиковых ситуаций в реальном приложении. Современные ОС (когда мы не говорим о системах с поддержкой RT) предпочитают не реализовывать такие алгоритмы из-за их огромной сложности и дороговизны.

Другими словами, вы можете выйти из тупика Windows, в худшем случае, с помощью простой перезагрузки. И учитывая, сколько раз это происходит, это не считается огромной проблемой на рынке настольных ОС.

Поэтому я рекомендую написать простой контрольный пример с фиктивным приложением, которое либо

  • Служить своей цели
  • Позволяют вам точно знать, что используется вашим приложением, и позволяют вам управлять сложностью

В качестве идентификатора: приложения типа notepad.exe или аналогичные не процессы в реальном времени даже если вы отдадите им приоритет «реального времени» в диспетчере задач Windows (и даже не в режиме реального времени). Реальные процессы в реальном времени имеют временные ограничения (т.е. сроки), которые они ДОЛЖНЫ соблюдать. Это не так в любой настольной ОС, поскольку они просто созданы с другой концепцией (разделение времени). В Linux есть некоторые исправления RT (например, Xenomai) для отображения алгоритма планирования в ядре в режиме реального времени, но я не знаю о состоянии этого патча прямо сейчас.

1

Другие решения