0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

ジョブ管理

Last updated at Posted at 2022-08-01

バッチ処理とは?

コンピュータを連続して働かせられない分無駄な時間が生じます
そのな時間待たなくても良いように、時間のかかる処理を、まとめてコンピュータにやらせておく処理の仕方をバッチ処理という。
バッチファイルはイラストの指示書に似た仕組み
バッチ処理を次々登録しておいて、コンピュータを遊ばせずにキリキリ叩かせる仕組みをジョブ管理という。
バッチファイルをたくさん登録して、自動実行させていける仕組みがジョブ管理
ジョブ管理に使う言語をジョブ制御言語(JCL:Job Control Language)
利用者は、処理させたい一連の仕事を指示書をとしてまとめてコンピュータに投入する。
この一塊の仕事の単位をジョブという。

気づき

バッチファイルはジョブ制御言語が使われているのかな。
バッチ処理ジョブ管理の違いがわからない。
バッチファイルを登録してコンピュータを遊ばせずキリキリ働かせる仕組みをジョブ管理
バッチ処理は後から説明されるらしい。
とりあえずまとめて命令することで無駄を無くすのか。

ジョブ管理の流れ

ジョブ管理は、カーネルが持つ機能の一つ。
バッチ処理を次々登録しておいて、コンピュータを遊ばせずにキリキリ働かせる仕組みをジョブ管理という。
利用者はバッチファイルの塊を登録したものを管理プログラムに対して渡す。

マスタスケジューラとは?

利用者との間を橋渡しするのがマスタスケジューラという管理プログラム。
この管理プログラムに対して、ジョブの実行(バッチファイルの実行)を依頼します。

この管理プログラムマスタスケジューラはジョブの実行をジョブスケジューラに依頼する。
マスタスケジューラは実行状態の監視、必要に応じて各種メッセージを利用者に届ける

ジョブスケジューラとは?

ジョブの実行を依頼されたジョブスケジューラは以下の流れでジョブを実行して行きます。

リーダ

依頼されたジョブを入力して、ジョブ待ち行列に登録する。

イニシエータ

優先度の高いジョブを持ってきて、ジョブステップに分解します。
CPUや主記憶装置など、ハードウェア資源が空くのを待って、ジョブステップを割り当て、その実行をタスク管理に依頼します。

ターミネータ

実行を終えたジョブに割り当てられていたハードウェア資源を解放して、ジョブの結果を出力待ち行列に登録

ライタ

優先度の高いものから順に、ジョブ結果を出力します。

気づき

マスタスケジューラはジョブスケジューラの監視、利用者に対してメッセージを届ける。
ジョブスケジューラはマスタスケジューラから依頼されたジョブを

  • リーダでジョブを登録
  • イニシエータでジョブを一つ一つ分解する。
  • それをタスク管理に依頼
  • 実行が終わった後ターミネータで出力待ち行列に登録
  • ライタで優先度の高いものから順にジョブの結果を出力する。

ジョブスケジューラで実行から出力までできるのか。

スプーリング

CPUと入出力装置とでは、処理速度に大きさが出る。
入出力データを一旦高速な磁気ディスクへと蓄える
例えば印刷データを磁気ディスクに書き出したら、CPUはさっさと次に処理に移る。
その分無駄な待ち時間は削減できる

  • 低速な装置とのデータのやり取りを、高速な磁気ディスクを介して行うことで処理効率を高める方法をスプーリングという。
  • 一時的な出力領域をスプール(SPOOL)と言いスプールを使った入出力をスプーリングという。
    スプーリングを使うと、CPUの待ち時間を削減することができる。そうすると単位時間あたりに処理できる仕事量を増やすことができる。
    単位時間あたりに処理できる仕事量をスループットと呼ぶ。

入力の場合

入力データを磁気ディスクに一時的に蓄える。必要となったらCPUがそのデータを取る。

出力の場合

出力データを一時的に蓄えておいて後で印刷させる。

気づき

結果を溜め込まなければいけないくらい
CPUと入出力装置の間の処理スピードが違うのか。
いかにCPUに隙を与えず仕事をさせることが高速処理の鍵になってくるのか。

問題を解いた時の気づき

バッファ

IT分野では、コンピューターが処理しきれないデータを一時的に保持しておくための記憶領域を指し、「緩衝記憶領域」とも呼ばれる。コンピューター内部の入出力装置や制御装置などでは、装置ごとに処理速度の差があるため、装置間でデータをやりとりするとタイムラグが生じる。そこで、処理速度や転送速度の差を緩和させ、それぞれの処理速度に合わせたデータの保管や送信を行う必要があり、バッファはその役目を果たしている。

例えば、パソコンにつないだプリンターで印刷する場合、パソコンからプリンターへ印刷データを送信する速度と、プリンターで印刷データを出力する速度には差がある。そのため、プリンターにバッファ用のメモリー(記憶装置)を搭載し、そこに印刷データを一時的に保存しておくことで、印刷の進行状況に応じてバッファからデータを取り出して印刷できるようになる。
出典 https://mypage.otsuka-shokai.co.jp/contents/business-oyakudachi/words/buffer.html

正式には「バッファメモリー」ですが、略して「バッファ」と言われます。
出典 https://www.unchi-co.com/kaigyoblog/kigyo_kaigyo/buff.html

バッファとは、コンピュータが即座に処理しきれないデータを一時的に保持しておくための記憶領域を指す意味で用いられる語である。
出典 https://www.sophia-it.com/content/%E3%83%90%E3%83%83%E3%83%95%E3%82%A1

ディスクキャッシュに関してメモリと補助記憶装置との間の速度緩和装置(造語、あるかわからない)としか認識していない。
もっと勉強が必要だ。

入出力装置とCPUに処理速度の差があるため入出力結果をためてCPUの処理速度をあげようとしている。

出典

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?