2

バンカー アルゴリズム (デッドロック検出) のプロセスとして、タスク マネージャー (notepad.exe など) のプロセスを入力として与えるにはどうすればよいですか ???

4

1 に答える 1

1

実際のアプリケーションに実際のデッドロック防止アルゴリズムを実装するために、すべての OS/外部条件を追跡することは困難であり、おそらく実行不可能です。最新の OS (RT 対応システムについて話していない場合) は、圧倒的に複雑で高価であるため、そのようなアルゴリズムを実装しないことを好みます。

言い換えれば、最悪の場合、単純な再起動で Windows のデッドロックから逃れることができます。そして、これが何回発生するかを考えると、デスクトップ OS 市場では大きな問題とは見なされません。

したがって、次のいずれかのダミー アプリケーションを使用して簡単なテスト ケースを作成することをお勧めします。

  • 目的を果たす
  • アプリケーションで何が使用されているかを正確に把握し、複雑さを管理できます

補足として、notepad.exe などのアプリケーションは、たとえ Windows タスク マネージャーで「リアルタイム」の優先度を与えたとしても、リアルタイム プロセスではありません (ソフト リアルタイムでさえありません)。リアルタイム プロセスには、遵守しなければならない時間の制約 (締め切りなど) があります。デスクトップ OS は別の概念 (タイム シェアリング) を念頭に置いて構築されているだけなので、これはどのデスクトップ OS にも当てはまりません。Linux には、カーネルのスケジューリング アルゴリズムをリアルタイムのものにするためのRT パッチ ( Xenomaiなど) がいくつかありますが、現時点でそのパッチの状態はわかりません。

于 2014-04-29T09:21:05.957 に答える