タスク管理、再配置可能プログラムとプログラムの4つの性質


タスク管理

 コンピュータから見た仕事の単位がタスクという、ジョブステップの実行準備が整うことで
 タスクが生成される
タスクの状態遷移
 再生されたタスクには以下の状態がある。
 ・実行可能状態(READY)
  いつでも実行が可能な、CPUの使用権が回ってくるのを待っている状態。
  生成直後のタスクは、この状態になって、CPUの待ち行列に並んでいる。
 ・実行状態(RUN)
  CPUの使用権が与えられて、実行中の状態
 ・待機状態(WAIT)
  入出力処理が発生したので、その終了を待っている状態。
 上記の状態を図で表すと以下の通りになる。
  

ディスパッチャとタスクスケジューリング

 実行可能状態で順番待ちしているタスクにCPUの使用権を割り当てることを
 ディスパッチャという。 また、「どのタスクに使用権を割り当てるのか」を決めるためには、
 タスクの実行順序を定める必要がある。これをタスクスケジューリングという。
 
タスクスケジューリングの方式
 様々な方式があるが、なかでも以下の3つが代表的。
 
 到着順方式
 実行可能状態になったタスク順に、CPUの使用権を割り当てる方式。
 タスクに優先度の概念がないので、実行の途中でCPU使用権が奪われることはない。
 
 優先順(プライオリティ順)方式
 タスクにそれぞれ優先度を設定し、その優先度が高いものから順に実行していく方式。
 実行中のタスクよりmじょ優先度の高いものが待ち行列に追加されると、実行の途中でCPU使用権が奪われる。

 ラウンドロビン方式
 CPUの使用権を一定時間ごとに切り替える方式
 実行可能状態になった順番でタスクにCPU使用権が与えられるが、
 既定の時間内に処理が終わらなかった場合は次のタスクに使用権が与えられ実行中だったタスクは待ち行列の最後に回される。

割り込み処理
 実行中のタスクを中断して、別の処理に切り替え、そちらが終わるとまた元のタスクに復帰するという
 処理のことを割り込み処理と呼ぶ
 割り込み処理は実行中のプログラムが原因で生じる内部割込みとプログラム外の要因で生じる外部割込みに分かれる

再配置可能プログラムとプログラムの4つの性質

 再配置可能プログラムなら、主記憶上のどこに配置しても問題なく実行できる。
4つのプログラムの性質
 再配置可能プログラムは以下の4つのプログラムがある
 再配置可能(リローケータブル)

 再使用可能(リユーザブル)

 再入可能(リエントラント)
 
 再帰的(リカーシブ)

以上