2012年4月30日月曜日
z/VMのタスク管理
2009年の記事移植
VMのタスク管理ですが、3つのListによって行われています。
VMにログインした状態ではまず、Dormant List(休眠リスト)にタスクが割り当てられます。
Dormant Listで待機している状態で行う処理が発生すると、Eligible List(適格リスト)へ処理が移動します。
Eligible ListではStorageの確保を行うべく処理は、Listの待ち行列に並びます。Listの先頭で、Storageを確保を行うことができればDispatch List(派遣リスト)へ処理が移動します。
Dispatch Listにて選択された処理は、Dispatch vectorに移動し、プロセッサに処理されます。
処理後は、Dormant Listへ戻ります。
大きい処理の場合は、Dormant Listへもどらず、Eligible Listへ移動し再びStorage確保を行って再処理を行う場合があります。
ちなみにタスク(処理)には重み付けされていて、1から3ランクまで分かれている。
軽い処理(1,2秒のCPU処理時間)
重い処理(1,2秒*6セットのCPU処理時間)
もっとも重い処理(1,2秒*48セットのCPU処理時間)
1の処理はEligible ListからDispatch Listに移動する時間がもっとも小さい。(早い)
3の処理はEligible ListからDispatch Listに移動する時間が最も大きい。(遅い)
※Linuxやz/OSの処理は、3に該当する。
MAINTユーザでの処理などは、1に該当する。
登録:
コメントの投稿 (Atom)
0 件のコメント:
コメントを投稿