JPS63300326A - トランザクション実行スケジュ−ル方式 - Google Patents

トランザクション実行スケジュ−ル方式

Info

Publication number
JPS63300326A
JPS63300326A JP13536587A JP13536587A JPS63300326A JP S63300326 A JPS63300326 A JP S63300326A JP 13536587 A JP13536587 A JP 13536587A JP 13536587 A JP13536587 A JP 13536587A JP S63300326 A JPS63300326 A JP S63300326A
Authority
JP
Japan
Prior art keywords
execution
transaction
priority
waiting
transactions
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP13536587A
Other languages
English (en)
Inventor
Masao Fujita
藤田 正男
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP13536587A priority Critical patent/JPS63300326A/ja
Publication of JPS63300326A publication Critical patent/JPS63300326A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はトランザクション実行スケジュール方式に関し
、特に各トランザクションの実行をそれに付与された実
行優先度に従ってスケジュールすると共に、実行待ちの
トランザクション数を監視し、実行優先度の度合を動的
に変更するようにしたトランザクション実行スケジュー
ル方式に関する。
〔従来の技術〕
トランザクション毎に実行優先度を持たせ、その実行優
先度に従ってトランザクションの実行をスケジュールす
る従来のトランザクション処理システムでは、実行優先
度ごとにトランザクシランの実行待ち行列を作り、これ
らトランザクションの実行は、最上位の実行優先度から
スケジュールし、上位の実行優先度の実行待ちトランザ
クションが無くなると、次の実行優先度のトランザクシ
ョンをスケジュールするという方式が採用されている。
〔発明が解決しようとする問題点〕
上述した従来の方式は、実行優先度を厳密に且つ固定的
に扱う方式であり、上位の実行優先度の実行待ちトラン
ザクションがなくならなければ、それより下位の実行優
先度のトランザクションは実行されない、従って、上位
の実行優先度を持つトランザクションが連続して多量に
発生すると、それより下位の実行優先度のトランザクシ
ョンの実行が長時間待たされてしまうという不都合があ
る。
そこで、本発明の目的は、各実行優先度のトランザクシ
ョンの実行待ち数が許容範囲内にあるうちは所定の度合
の実行優先度によりトランザクションの実行制御を行な
うが、実行待ち数が大きくなると一時的にその実行優先
度の度合を変更し、速やかに実行待ち数を少なくするこ
とができるようにすることにある。
〔問題点を解決するための手段〕
本発明は上記目的を達成するために、実行待らのトラン
ザクションを該トランザクションに付与された実行優先
度毎に管理すると共に、各実行優先度毎の実行待ちトラ
ンザクション数、各実行優先度毎の実行配分の初期値お
よび実行配分の監視値を記憶するトランザクション実行
待ちテーブルと、 該トランザクション実行待ちテーブルに記憶された各実
行優先度の実行待ちトランザクション数を監視し、基準
値を越えているときは該実行優先度の実行配分の監視値
を高め、実行待ちトランザクション数が少なくなったと
きに前記実行配分の監視値を前記実行優先度の実行配分
の初期値に戻す実行配分変更手段と、 前記トランザクシラン実行待ちテーブルで管理された各
実行優先度毎の実行待ちトランザクションを、各実行優
先度対応の実行配分の監視値に従った実行優先度合でス
ケジュールするトランザクション実行スケジュール手段
とから構成される。
〔作用〕
トランザクション実行待ちテーブルで管理された各実行
優先度の実行待ちトランザクション数が基準値内にある
ときは、実行配分変更手段によってトランザクション実
行待ちテーブル中の各実行配分の監視値はその初期値に
設定され、トランザクション実行スケジュール手段は、
実行待ちのトランザクションをそψ実行配分の初期値に
応じた実行優先度合に従ってスケジュールする。ある実
行優先度の実行待ちトランザクション数が基準値よりも
大きくなると、実行配分変更手段によってその実行優先
度の実行配分の監視値が大きくされ、これに応じてトラ
ンザクション実行スケジュール手段は、その実行優先度
のスケジュールの優先度合を初期値のときに比べて高め
る。このように優先的にスケジュールされることにより
、実行待ちトランザクション数が少なくなると、実行配
分変更手段によってその実行配分の監視値が元の初期値
に戻される。
〔実施例〕
第1図は本発明の実施例のブロック図である。
同図に示すように本実施例は、図示しない端末や一括処
理プログラムなどより入力されたトランザクション1−
1.1−2.・・・、l−n (各トランザクションに
はトランザクション(TX)番号として#l、#2、・
・・、9nと、トランザクション識別子としてTX−A
、TX−B、・・・、TX−Zとが付加されている)を
チェーン化して管理するトランザクション処理待ち管理
ポインタ2と、トランザクション識別子をキーとして実
行優先度を検索し得るトランザクション種別テーブル4
と、トランザクション実行待ちテーブル6と、トランザ
クション処理待ち管理ポインタ2に従ってトランザクシ
ョン1−1.1−2.・・・、 l−nを取出し、その
実行優先度をトランザクション種別テーブル4で調べて
トランザクション実行待ちテーブル6に接続するトラン
ザクション実行待ちテーブル接続手段3と、トランザク
ション実行待ちテーブル6に接続されたトランザクショ
ンを実行するためのスケジュール処理を行なうトランザ
クション実行スケジュール手段5と、トランザクション
実行スケジュール処理中に所定間隔でトランザクション
実行待ちテーブル6に接続されている各実行優先度の実
行待ちトランザクシラン数を監視するトランザクション
実行待ち監視手段7と、このトランザクション実行待ち
監視手段7からの監視結果に応じて実行優先度合を変更
するトランザクション実行配分変更手段8とで構成され
ている。
第2図はトランザクション種別テーブル4の内容例を示
す。このように、トランザクション種別テーブル4は複
数のエントリを有し、各エントリにはトランザクション
識別子(TX−A等)と、そのトランザクション識別子
を持つトランザクションの実行優先度と、その他トラン
ザクションに関する情報とが格納されている。
第3図はトランザクション実行待ちテーブル6の内容例
を示す、同図に示すようにトランザクション実行待ちテ
ーブル6は各実行優先度に対応するエントリを有し、各
エントリには、実行配分の監視値(現実行優先度合を示
す値)、実行配分の初期値(初期実行優先度合を示す値
)、今回のサイクルで実行したトランザクション実行数
、実行待ちトランザクション数、トランザクションキエ
−Ql−Q3へのポインタであるトランザクション待ち
のポインタとが格納される。このうち、実行配分の初期
値はトランザクション処理システムの運用開始前にユー
ザ等によって設定される。また、実行待ちトランザクシ
ョン数はトランザクション実行待ちテーブル接続手段3
が一つのトランザクションを接続する毎及びトランザク
ション実行スケジュール手段5が一つの実行待ちトラン
ザクションをスケジュールする毎に更新され、トランザ
クション実行数はトランザクション実行スケジュール手
段5でスケジュールされる毎に更新される。更に、実行
配分の監視値はトランザクション実行配分変更手段8に
よって変更される。
以下、各図を参照して本実施例の動作を説明する。
端末や一括処理プログラムなどから入力されたトランザ
クション1−1.1−2.・・・、 1−nは、先ずト
ランザクション処理待ち管理ポインタ2に接続されて管
理される。
トランザクション実行待ちテーブル接続手段3は、トラ
ンザクション処理待ち管理ポインタ2に接続されたトラ
ンザクションが存在すると、これを順次に取出し、その
トランザクションが存するトランザクション識別子をキ
ーとしてトランザクション種別テーブル4を検索し該当
トランザクシランの実行優先度を取得し、そのトランザ
クションをトランザクション実行待ちテーブル6におけ
るその実行優先度対応のポインタで指示されるキューに
接続する。なお接続後、トランザクション実行待ちテー
ブル6におけるその実行優先度対応の実行待ちトランザ
クション数を+1する0以上の処理をトランザクション
処理待ち管理ポインタ2に接続されたトランザクション
がな(なるまで繰返す。
上述したような処理と並行して、トランザクション実行
スケジュール手段5による以下のようなスゲジュール処
理が行なわれる。先ず、トランザクション実行スケジュ
ール手段5は、実行優先度rlJに実行待ちトランザク
ションが存在するか否かを調べ、存在しなければ次の実
行優先度「2」の処理へ進み、存在すれば実行配分の監
視値(第3図に示す例ではrlOJ)を限度として実行
優先度rlJの実行待ちトランザクションをキューQ1
の最初から取出し実行させる。そして、一つのトランザ
クションを実行させると、そのトランザクション実行数
を+1し、実行待ちトランザクション数を−1する。第
3図に示した状態は、実行優先度rlJのトランザクシ
ョンを合計6個実行させた直後の状態を示しており、あ
と4個のトランザクションが続いて実行される。トラン
ザクション実行スケジュール手段5は、実行優先度rl
Jの実行待ちトランザクションを実行配分の監視値の個
数だけ実行させると、未だ実行待ちトランザクションが
残っていても次の実行優先度「2」の処理へ移る。そし
て、実行優先度「2」以下の実行優先度の実行待ちトラ
ンザクションについても上述と同様な処理を行なう。そ
して、最下位の実行優先度rnJの処理を終えると、今
回のスケジュールサイクルを終了し、トランザクション
実行待ち監視手段7を起動する。
トランザクション実行待ち監視手段7は起動されると、
トランザクション実行待ちテーブル6の各実行優先度の
実行配分の監視値を各実行待ちトランザクション数に応
じて変更する処理を、トランザクション実行配分変更手
段8と共同して行なう。このような変更処理の仕方とし
ては各種の方法が採用できるが、例えば次のようにして
行なう。
まず、各実行優先度の実行待ちトランザクション数を対
応する実行配分の監視値と比較し、実行待ちトランザク
ション数が実行配分の監視値を越えていれば、その越え
ている数の大きさに応じた値だけ実行配分の監視値を大
きくする。また、越えていなければ、実行待ちトランザ
クション数と実行配分の初期値とを比較し、実行待ちト
ランザクション数がその初期値以下になって、いれば、
実行配分の監視値を実行配分の初期値に戻す。
上述のようにして、実行配分の監視値が大きな値に変更
されると、トランザクション実行スケジュール手段5の
次のスケジュールサイクルにおいてはその分だけ余分に
実行待ちのトランザクションが処理されることになり、
待ら数を速やかに減少させることが可能となる。また、
待ち数が少なくなれば実行配分の監視値が元の初期値に
戻されるので、再び予め定められた実行配分に従って各
実行優先度のトランザクションがスケジュールされるこ
とになる。
以上本発明の実施例について説明したが、本発明は以上
の実施例にのみ限定されずその他各種の付加変更が可能
である。例えば、トランザクション実行待ち監視手段7
を一定周期で起動することにより、一定周期毎に実行待
ちトランザクション数の監視および実行配分の監視値の
変更を行なうようにすることもできる。
〔発明の効果〕
以上説明したように、本発明は、各実行優先度のトラン
ザクションの実行待ち数を監視し、基準値を越えるほど
大きくなっているときは、その実行優先度の実行配分の
監視値を大きくして実行優先度合を高めるので、速やか
に待も敗を減少させることができ、従来方式のように下
位の実行優先度のトランザクションが長く待たされるよ
うなことがなくなる。また、待ち数が少なくなれば再び
実行配分の監視値が初期値に戻され、初!IJIの実行
優先度合でスケジュールされるので、通常は予め定めら
れた所定の優先度度合に従ってスケジュールを行なうこ
とができる効果がある。
【図面の簡単な説明】
第1図は本発明の実施例のブロック図、第2図はトラン
ザクション種別テーブル4の説明図および、 第3図はトランザクション実行待ちテーブル6の説明図
である。 図において、

Claims (1)

  1. 【特許請求の範囲】 実行待ちのトランザクションを該トランザクションに付
    与された実行優先度毎に管理すると共に、各実行優先度
    毎の実行待ちトランザクション数、各実行優先度毎の実
    行配分の初期値および実行配分の監視値を記憶するトラ
    ンザクション実行待ちテーブルと、 該トランザクション実行待ちテーブルに記憶された各実
    行優先度の実行待ちトランザクション数を監視し、基準
    値を越えているときは該実行優先度の実行配分の監視値
    を高め、実行待ちトランザクション数が少なくなったと
    きに前記実行配分の監視値を前記実行優先度の実行配分
    の初期値に戻す実行配分変更手段と、 前記トランザクション実行待ちテーブルで管理された各
    実行優先度毎の実行待ちトランザクションを、各実行優
    先度対応の実行配分の監視値に従った実行優先度合でス
    ケジュールするトランザクション実行スケジュール手段
    とを具備したことを特徴とするトランザクション実行ス
    ケジュール方式。
JP13536587A 1987-05-30 1987-05-30 トランザクション実行スケジュ−ル方式 Pending JPS63300326A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP13536587A JPS63300326A (ja) 1987-05-30 1987-05-30 トランザクション実行スケジュ−ル方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP13536587A JPS63300326A (ja) 1987-05-30 1987-05-30 トランザクション実行スケジュ−ル方式

Publications (1)

Publication Number Publication Date
JPS63300326A true JPS63300326A (ja) 1988-12-07

Family

ID=15150026

Family Applications (1)

Application Number Title Priority Date Filing Date
JP13536587A Pending JPS63300326A (ja) 1987-05-30 1987-05-30 トランザクション実行スケジュ−ル方式

Country Status (1)

Country Link
JP (1) JPS63300326A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02281338A (ja) * 1989-04-21 1990-11-19 Nec Corp タスクの制御方法
JPH0476732A (ja) * 1990-07-19 1992-03-11 Nec Corp トランザクションの実行プライオリティ制御方式
JPH04264927A (ja) * 1991-02-20 1992-09-21 Matsushita Electric Ind Co Ltd スケジューリング装置
JPH0863432A (ja) * 1994-08-22 1996-03-08 Nec Corp 電文一括処理システムの起動スケジューリング方式
US5937205A (en) * 1995-12-06 1999-08-10 International Business Machines Corporation Dynamic queue prioritization by modifying priority value based on queue's level and serving less than a maximum number of requests per queue

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02281338A (ja) * 1989-04-21 1990-11-19 Nec Corp タスクの制御方法
JPH0476732A (ja) * 1990-07-19 1992-03-11 Nec Corp トランザクションの実行プライオリティ制御方式
JPH04264927A (ja) * 1991-02-20 1992-09-21 Matsushita Electric Ind Co Ltd スケジューリング装置
JPH0863432A (ja) * 1994-08-22 1996-03-08 Nec Corp 電文一括処理システムの起動スケジューリング方式
US5937205A (en) * 1995-12-06 1999-08-10 International Business Machines Corporation Dynamic queue prioritization by modifying priority value based on queue's level and serving less than a maximum number of requests per queue

Similar Documents

Publication Publication Date Title
US4642756A (en) Method and apparatus for scheduling the execution of multiple processing tasks in a computer system
US6430594B1 (en) Real-time operating system and a task management system therefor
US8612986B2 (en) Computer program product for scheduling ready threads in a multiprocessor computer based on an interrupt mask flag value associated with a thread and a current processor priority register value
KR101391907B1 (ko) 인터럽트 컨트롤러
JPS61253572A (ja) 疎結合マルチプロセツサ・システムの負荷配分方式
GB2519080A (en) Scheduling function calls
EP2587374A1 (en) Multi-core system and scheduling method
JPS63300326A (ja) トランザクション実行スケジュ−ル方式
Horowitz A run-time execution model for referential integrity maintenance
JPH02311932A (ja) 優先制御方式
JPH09101902A (ja) ジョブスケジューリング方式
JPH07191863A (ja) マルチタスク実行管理方式
JPH08329022A (ja) マルチプロセッサシステムの入出力処理負荷分散制御方式
JPH0644234B2 (ja) タスク管理装置
JPS63239537A (ja) タスク制御方法
JPS63136233A (ja) タイマサ−ビス利用プロセスのスケジユ−ル方式
JPH09319708A (ja) オンライン制御プロセス代行方式
JPS6149270A (ja) マルチプロセツサシステムの入/出力制御方式
JPH03253965A (ja) コントローラによるマルチタスク処理方式
JPS62271147A (ja) タスク制御方法
WO1992003784A1 (en) Scheduling method for a multiprocessing operating system
CN116483527A (zh) 一种基于uCOS-II的多任务调度方法与系统
CN117234678A (zh) 控制程序部分的流程的方法和装置、编程方法、编程装置
JPH02230429A (ja) データアクセス制御方式
JPH0128418B2 (ja)