SkillStack
テクノロジ系8 / 25問

エンベデッドシステムスペシャリスト試験 令和5年度 秋期 午前II 問8

スケジューリングアルゴリズムにおける、リソーススタベーションに関する記述として、適切なものはどれか。

選択肢を押すと答え合わせができます。

正解と解説を見る

【正解】エ

リソーススタベーションとは、優先度制御などの影響によって、あるプロセスが必要なCPU時間や装置、ロックなどのリソースをいつまでも獲得できない状態です。例えば、優先度の高いプロセスが次々と実行され、そのたびに同じリソースを先に使用すると、優先度の低いプロセスは実行可能であっても利用の機会を得られません。したがって、優先度の低いプロセスが必要なリソースを獲得できないとするエが適切です。スタベーションは「飢餓状態」とも呼ばれ、必ずしも複数プロセスが互いに待ち合う状態ではない点がデッドロックとの違いです。

アの実行中の処理を中断して別の処理を実行することは、プリエンプションの説明であり、リソーススタベーションそのものではありません。

イのプロセスを切り替える一定時間は、タイムクウォンタム又はタイムスライスの説明です。各プロセスにCPUを割り当てる時間の単位を指します。

ウの利用中のリソースを他のプロセスに使わせないことは、排他制御の説明です。共有資源への同時アクセスによるデータ破壊などを防ぐ仕組みであり、それ自体がスタベーションを意味するわけではありません。

【ポイント】 スタベーションは、待ち時間に応じて優先度を上げるエージングによって防止できます。 デッドロックは処理が循環的に待つ状態、スタベーションは特定の処理だけが機会を得られない状態です。 優先度方式では、低優先度プロセスが永久に後回しにならない設計が重要です。

出典:令和5年度 秋期 エンベデッドシステムスペシャリスト試験 午前II 問8
※ 解説は SkillStack 編集部が作成したものです。Web 表示のため、図表の配置や表記を一部改めています。

この回の25問を、アプリで通しで解く

  • 本番と同じ問題数・制限時間で通し演習(模試モード)
  • 間違えた問題は自動で「復習すべき問題」に回る
  • 解説で分からない点はAIに質問できる
SkillStackで無料で始める