応用情報技術者平成30年秋期 午前問17
プリエンプション方式のタスクスケジューリングにおいて,タスクBの実行中にプリエンプションが発生する契機となるのはどれか。ここで,タスクの優先度は,タスクAが最も高く,タスクA>タスクB=タスクC>タスクDの関係とする。
1、プリエンプション(Preemption)とは、
実行状態にあるタスクがCPUの使用権を奪われ実行可能状態に移されることをいい、以下の状態を満たした場合に起こります。
・実行状態のタスクより優先度の高いタスクが実行可能状態になる
・実行状態のタスクに割り当てられたCPU使用時間が満了する
当該質問には、タスクBとCの優先度は同じので、Cが実行可能状態になったでも、プリエンプションにならないですね。ただ、Aが実行可能状態になった場合は、優先度が高いだから、プリエンプションが発生するだろうね。
2、ディスパッチ dispatch
ディスパッチとは、複数のプログラムを実行中のマルチタスクオペレーティングシステムにおいて、プログラムに実行権を渡すことである。
参照:
https://www.ap-siken.com/kakomon/27_aki/q16.html
ディスパッチ
https://www.weblio.jp/content/%E3%83%87%E3%82%A3%E3%82%B9%E3%83%91%E3%83%83%E3%83%81