1. ホーム
  2. operating-system

優先順位逆転とは?

2023-11-12 12:32:04

質問

OSの開発に関して、「優先順位の逆転」という言葉を聞いたことがあります。

優先順位の逆転とは、具体的にどのようなことですか?

どのような問題を、どのように解決するのでしょうか?

どのように解決するのか?

優先度逆転は問題であり、解決策ではありません。 典型的な例は、低優先度プロセスが高優先度プロセスが必要とするリソースを取得した後、中優先度プロセスによって先取りされ、中優先度プロセスが終了する間、高優先度プロセスがリソース上でブロックされる (事実上低い優先度で実行される) というものです。

かなり有名な例として、Mars Pathfinder ローバーが経験した問題があります。 http://www.cs.duke.edu/~carla/mars.html をご覧ください。なかなか面白い読み物です。