JP2667575B2 - タスクスケジューリング方式 - Google Patents

タスクスケジューリング方式

Info

Publication number
JP2667575B2
JP2667575B2 JP32099490A JP32099490A JP2667575B2 JP 2667575 B2 JP2667575 B2 JP 2667575B2 JP 32099490 A JP32099490 A JP 32099490A JP 32099490 A JP32099490 A JP 32099490A JP 2667575 B2 JP2667575 B2 JP 2667575B2
Authority
JP
Japan
Prior art keywords
task
priority
scheduling
tasks
schedule
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.)
Expired - Fee Related
Application number
JP32099490A
Other languages
English (en)
Other versions
JPH04191935A (ja
Inventor
司 末永
英次 石橋
正治 野崎
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP32099490A priority Critical patent/JP2667575B2/ja
Publication of JPH04191935A publication Critical patent/JPH04191935A/ja
Application granted granted Critical
Publication of JP2667575B2 publication Critical patent/JP2667575B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】 [発明の目的] (産業上の利用分野) 本発明は、複数のタスクを備えたマルチタスクにおけ
る当該タスクがCPUを時分割に供用するタスクスケジュ
ーリングにおいて、特に、優先度の高いタスクがCPUを
占有し続けていても優先度の低いタスクがCPUを占有で
きることにより、システムのスループットを向上するタ
スクスケジューリング方式に関する。
(従来の技術) 従来のタスクスケジューリング方式は、タスクがCPU
割当待ち状態(以下、レディ状態という。)であるとき
優先度の高いタスクから順次、待ち行列に登録するタス
クレディキューを備えて、タスクディスパッチング要求
があるとタスクスケジューラは、当該タスクレディキュ
ーの先頭のタスクの優先度と現在CPUを占有中のタスク
の優先度とを比較する。比較により優先度の高いタスク
からスケジュールする。上記優先度の高いタスクをCPU
に割当てるため、従来のタスクスケジューリング方式で
は、優先度の低いタスクをCPUに割当てるのが容易では
なかった。
(発明が解決しようとする課題) ところで、従来のタスクスケジューリング方式は、優
先度の高いタスクが、例えばプログラムのループ等によ
りCPUを占有し続けると優先度の低いタスクにCPUが割当
てられなくなり、端末のレスポンスの低下およびシステ
ム全体のスループットの低下を招来する問題があった。
本発明は、上記に鑑みてなさたものであり、その目的
は、優先度の高いタスクがCPUを占有し続けている場合
でも、優先度の低いタスクをCPUに割当てることによ
り、システムのスループットを向上させて、システムの
性能を向上するタスクスケジューリング方式を提供する
ことにある。
[発明の構成] (課題を解決するための手段) 上記目的を達成するため、本発明は、複数のタスクを
備えて当該複数のタスクがCPUを時分割に供用するタス
クスケジューリング方式において、 CPU割当待ち状態のタスクを優先度の高い順にスケジ
ュールする優先度制御スケジューリング手段と、 CPU割当待ち状態のタスクを優先度の高いタスク群と
優先度の低いタスク群とに分類して当該優先度の高いタ
スクと優先度の低いタスクとを交互にスケジュールする
2段階優先度制御スケジューリング手段と、 前記CPU割当待ち状態のタスクのうちで最も優先度の
低いタスクの待ち時間を監視するスケジューリング監視
手段と、 このスケジューリング監視手段により、前記最も優先
度の低いタスクの待ち時間が指定値を越えたと判定され
た場合には、タスクのスケジューリングを前記優先度制
御スケジューリング手段から前記2段階優先度制御スケ
ジューリング手段に移行させるスケジュール移行手段
と、 前記2段階優先度制御スケジューリング手段により、
前記優先度の最も低いタスクのスケジュールが終了した
ときには、タスクのスケジューリングを前記優先度制御
スケジューリング手段に復帰させるスケジュール回復手
段と、 を備えたことを要旨とする。
(作用) 上記構成を備えたタスクスケジューリング方式におい
ては、複数のタスクのうちCPU割当待ち状態で最も優先
度の低いタスクの待ち時間を監視して、当該待ち時間が
指定値を越えると当該CPU割当待ち状態のタスクを優先
度の高いタスクと優先度の低いタスクに分類されている
タスクを交互にスケジュールする制御に移行する。前記
スケジュールにより優先度の低いタスク群のうち優先度
の最も低いタスクがスケジュールされると、通常の、優
先度の高いタスクからスケジュールする制御に移行する
ので、優先度の高いタスクがCPUを占有している場合で
も優先度の低いタスクがCPUを占有できる。
(実施例) 以下、図面を用いて本発明の実施例を説明する。
第1図は本発明のタスクスケジューリング方式に係る
一実施例の概略を示すブロック図である。
上記タスクスケジューリング方式は、優先度制御スケ
ジューリング部1、タスクスケジュール状態監視部3、
2段階優先度制御スケジューリング部5およびタスクス
ケジュール回復部7を備える。
上記優先度制御スケジューリング部1は、優先度の高
いタスクからスケジューリングするものであり、タスク
スケジュール状態監視部3は定周期毎に後述するタスク
スケジュール制御テーブル9を参照して優先度制御スケ
ジューリング部1から2段階制御スケジューリング部5
に制御を移行するものである。2段階優先度制御スケジ
ューリング部5は、複数のタスクを優先度の高いタスク
群と優先度の低いタスク群とに分類して、優先度の高い
タスクと優先度の低いタスクとを交互にスケジュールす
る。
タスクスケジュール回復部7は、レディー状態のタス
クを、全てスケジューリングし終ると2段階優先制御ス
ケジューリング部5から優先制御スケジューリング部1
に制御を移行する。
タスクスケジュール制御テーブル9は、以下に示す各
種のポインタ等を備えており、第2図を用いて詳細に説
明する。
上記タスクスケジュール制御テーブル(以下、テーブ
ルという。)9はタスクスケジュール状態フラグ11およ
びタスクスケジュール状態変更上限カウンタ13を備えて
いる。上記タスクスケジュール状態フラグ11は優先度制
御スケジューリング部1および2段階優先度制御スケジ
ューリング部5の高優先度グループ,低優先度グループ
を識別するフラグであり、例えば、優先度制御の場合
「0」,2段階優先度制御の高優先度グループの場合
「1」,低優先度グループの場合「2」の識別をしてい
る。タスクスケジュール状態変更上限カウンタ13は、タ
スクスケジュール状態監視部3により、レディ状態のタ
スクT1,T2…Tnのそれぞれに備えられているタスク制御
ブロック内の未スケジュール状態保持カウンタC1,C2…C
nのうち、最も優先度の低いタスク、例えばTnの未スケ
ジュール状態保持カウンタCnと比較される。比較によ
り、この未スケジュール状態保持カウンタCnの値がタス
クスケジュール状態変更上限カウンタ13の値(特許請求
の範囲でいう「指定値」をいう。)を超えるときタスク
スケジュール状態監視部3により2段階優先度制御スケ
ジューリング部5に制御が移行される。
また、テーブル9は、被状態監視タスクポインタ15,
低優先度グループポインタ17およびレディタスク制御ポ
インタ19を有する。
上記被状態監視タスクポインタ15は、2段階優先度制
御スケジューリング部5に制御を移行する原因となった
タスクを示すポインタであり、当該タスクが2段階優先
度制御の最後にスケジュールされるタスクである。
低優先度グループポインタ17は、2段階優先制御の低
優先度グループのタスクを示すポインタである。
レディタスク制御ポインタ19は、レディ状態のタスク
を優先度順に管理するエントリであり、当該レディ状態
のタスク7が全てキューイング(タスクレディキュー)
されている。
なお、タスクスケジュール状態監視部3等は、オペレ
ーティングシステム(以下、OSという。)により管理さ
れている。
次に本実施例の作用を第3図および第4図の処理フロ
ーチャートを用いて説明する。
まず、第3図はタスク状態監視の処理を示すフローチ
ャートである。
タスクスケジュール状態監視部3は、一定周期毎に起
動される。現在、優先度制御スケジューリング部1によ
る優先度スケジューリングが実行されている場合(ステ
ップ100Yes)には、最も優先度の低いタスク、すなわち
タスクレディキューの最後のタスクの未スケジュール状
態保持カウンタをカウントアップする(ステップ11
0)。なお、現在、優先度制御スケジューリング部1に
よる優先度スケジューリングが実行されていない場合
(ステップ100No)には、ステップ160に進み、タスクス
ケジュール状態監視部3は、次の周期が到来するまで待
機する。
上記未スケジュール状態保持カウンタの値がタスクス
ケジュール状態変更上限カウンタ13の値を超えるとタス
クスケジュール状態監視部3は、優先度制御スケジュー
リング部1から2段階優先度制御スケジューリング部5
に制御を移行する。一方、未スケジュール状態保持カウ
ンタの値がタスクスケジュール状態変更上限カウンタ13
の値以下ならばステップ160に進む(ステップ120)。
2段階優先度制御に移行されるとタスクスケジュール
状態監視部3は、テーブル9の被状態監視タスクポイン
タ15をタスクレディキューの最後のタスクに設定し、低
優先度タスクグループポインタ17をタスクレディキュー
の先頭のタスクに設定する。また、タスクスケジュール
状態監視部3は、タスクスケジュール状態のフラグ11を
2段階優先制御を示す、例えば「1」にセットしてステ
ップ160に進む(ステップ130〜150)。
ステップ160に進むとタスクスケジュール状態監視部
3は、実行待ち状態になり一定周期後に再び起動されて
ステップ100に戻る(ステップ160)。
次にタスクスケジューリング処理および2段階優先度
制御から回復処理を第4図のフローチャートを用いて説
明する。
まず、タスクスケジュール状態監視部3は、テーブル
9のタスクスケジューリング状態フラグ11を調べて、通
常の優先度制御のとき、現在CPUを占有しているタスク
とレディキューの先頭のタスクの優先度とを比較する。
比較によりレディキューのタスクの優先度が高いとき優
先度制御スケジューリング部11は、当該タスクをスケジ
ュールして、CPUの使用権を待つカレントタスクをレデ
ィキューにつないだ後にCPUの使用権を与えるタスクス
ケジューリングを行なう。一方、CPUを占有しているタ
スクの優先度が高いとき優先度制御スケジューリング部
1は、CPUの使用権を有するタスクのタスクスケジュー
リングを行なう(ステップ200〜240)。
上記テーブル9のタスクスケジュール状態フラグ11が
2段階優先制御を示すときタスクスケジュール状態監視
部3は、現在までCPUを占有していたタスクをタスクレ
ディキューに登録する。登録後、タスクスケジュール状
態監視部3は、タスクスケジュール状態フラグ11が高優
先度グループを示すときステップ340に進み、低優先度
グループを示すときステップ270に進む(ステップ250〜
260)。
ステップ270に進むと2段階優先度制御スケジューリ
ング部5は、低優先度グループのタスクをスケジュール
するとき当該タスクがタスクレディキューの最後のタス
クか、即ち、レディ状態のタスクを全てスケジュールし
たか否かを調べる。上記タスクがタスクレディキューの
最後のタスクでない場合、2段階優先度制御スケジュー
リング部5は、低優先度グループポインタ17をレディキ
ューの次のタスクに移すことにより、高優先度グループ
と低優先度グループの調整を行ない次の低優先度グルー
プのタスクの実行を保証する。また、2段階優先度制御
スケジューリング部5は、次回のスケジューリングを高
優先度グループで行なうためにタスクスケジュール状態
フラグ11を高優先度グループに変更する(ステップ270
〜300)。
一方、タスクレディキューの最後のタスクの場合、2
段階優先度制御スケジューリング部5は、被状態監視ポ
インタ15,低優先度グループポインタ17およびレディタ
スク制御ポインタ19をそれぞれ初期化して、タスクスケ
ジュールを元の優先制御に制御を移行する(ステップ31
0〜330)。
タスクスケジュール状態フラグ11が高優先度グループ
を示すステップ340に進むと2段階優先度制御スケジュ
ーリング部5は、高優先度の先頭のタスクをスケジュー
ルしてステップ300に進む(ステップ340)。
これにより、優先度の高いタスクがCPUを占有してい
る場合でも、優先度の低いタスクがスケジュールするこ
とにより、システムのスループットを向上できる。
また、デバックの作業中のシステムのバックアップに
も対応可能になる。
[発明の効果] 以上説明したように、本発明によれば、高優先度のタ
スクおよび低優先度のタスクを交互にスケジューリング
するので、優先度の高いタスクがCPUを占有し続けてい
る場合でも、優先度の低いタスクをCPUに割当てること
により、システムのスループットを向上させて、システ
ムの性能の向上を実現できる。
【図面の簡単な説明】
第1図は本発明のタスクスケジューリング方式に係る一
実施例を示す概略図、第2図はタスクスケジューリング
制御テーブルを示す図、第3図および第4図は本発明の
動作を示すフローチャートである。 1……優先度制御スケジューリング部 3……タスクスケジュール状態監視部 5……2段階優先度制御スケジューリング部 7……タスクスケジュール回復部 9……タスクスケジュール制御テーブル 11……タスクスケジュール状態フラグ 13……タスクスケジュール状態変更上限カウンタ 17……低優先度グループポインタ

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】複数のタスクを備えて当該複数のタスクが
    CPUを時分割に供用するタスクスケジューリング方式に
    おいて、 CPU割当待ち状態のタスクを優先度の高い順にスケジュ
    ールする優先度制御スケジューリング手段と、 CPU割当待ち状態のタスクを優先度の高いタスク群と優
    先度の低いタスク群とに分類して当該優先度の高いタス
    クと優先度の低いタスクとを交互にスケジュールする2
    段階優先度制御スケジューリング手段と、 前記CPU割当待ち状態のタスクのうちで最も優先度の低
    いタスクの待ち時間を監視するスケジューリング監視手
    段と、 このスケジューリング監視手段により、前記最も優先度
    の低いタスクの待ち時間が指定値を越えたと判定された
    場合には、タスクのスケジューリングを前記優先度制御
    スケジューリング手段から前記2段階優先度制御スケジ
    ューリング手段に移行させるスケジュール移行手段と、 前記2段階優先度制御スケジューリング手段により、前
    記優先度の最も低いタスクのスケジュールが終了したと
    きには、タスクのスケジューリングを前記優先度制御ス
    ケジューリング手段に復帰させるスケジュール回復手段
    と、 を備えたことを特徴とするタスクスケジューリング方
    式。
JP32099490A 1990-11-27 1990-11-27 タスクスケジューリング方式 Expired - Fee Related JP2667575B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP32099490A JP2667575B2 (ja) 1990-11-27 1990-11-27 タスクスケジューリング方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP32099490A JP2667575B2 (ja) 1990-11-27 1990-11-27 タスクスケジューリング方式

Publications (2)

Publication Number Publication Date
JPH04191935A JPH04191935A (ja) 1992-07-10
JP2667575B2 true JP2667575B2 (ja) 1997-10-27

Family

ID=18127598

Family Applications (1)

Application Number Title Priority Date Filing Date
JP32099490A Expired - Fee Related JP2667575B2 (ja) 1990-11-27 1990-11-27 タスクスケジューリング方式

Country Status (1)

Country Link
JP (1) JP2667575B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7184549B2 (en) 2000-01-14 2007-02-27 Mitsubishi Denki Kabushiki Kaisha Method and apparatus for encryption, method and apparatus for decryption, and computer-readable medium storing program
DE60042062D1 (de) * 2000-01-14 2009-06-04 Mitsubishi Electric Corp Verfahren und vorrichtung zur verschlüsselung oder entschlüsselung und rechnerlesbares medium zur aufzeichnung des programmes
JP4874140B2 (ja) * 2007-03-20 2012-02-15 京セラミタ株式会社 ジョブスケジューラ、ジョブスケジュール方法、及び、ジョブ制御プログラム
JP5936041B2 (ja) * 2012-03-07 2016-06-15 日本電気株式会社 マルチプロセッサ装置、スケジューリング方法、および、スケジューリングプログラム

Also Published As

Publication number Publication date
JPH04191935A (ja) 1992-07-10

Similar Documents

Publication Publication Date Title
US4736318A (en) Data processing system having tunable operating system means
KR950002713B1 (ko) 인터페이스 시스템 및 데이타 전송 제어방법
US5390329A (en) Responding to service requests using minimal system-side context in a multiprocessor environment
JP4094550B2 (ja) スケジューリングの順序付けられたステージの基準を使用してリクエストをスケジューリングする方法及び装置
JP2518998B2 (ja) 多重タスク処理オペレ―ティング・システム及びそのコンピュ―タの動作方法
US6473780B1 (en) Scheduling of direct memory access
JP2002063148A (ja) 多重プロセッサ・システム
JPWO2002069174A1 (ja) 並列プロセス実行方法、及びマルチプロセッサ型コンピュータ
CN111897637B (zh) 作业调度方法、装置、主机及存储介质
JP2667575B2 (ja) タスクスケジューリング方式
JP3644042B2 (ja) マルチタスク処理装置
JP2000148513A (ja) タスク制御方法およびタスク制御装置
EP0942366A2 (en) Event-driven and cyclic context controller and processor employing the same
JPH0877026A (ja) 情報処理方法とその装置
JPH10177489A (ja) タスクのスケジュール方法
JPH11249917A (ja) 並列型計算機及びそのバッチ処理方法及び記録媒体
JPH02204838A (ja) タスク優先順位管理方式
JP3169316B2 (ja) タスクスケジューリング方法
JPH0640315B2 (ja) 中央処理装置割り当て制御方式
JPH0644234B2 (ja) タスク管理装置
WO1992003784A1 (en) Scheduling method for a multiprocessing operating system
JPH0778091A (ja) マルチタスク管理方法
JPH0782444B2 (ja) タスクスケジユ−ル方式
JPS636655A (ja) タスクスケジユ−ル方式
Buchanan et al. Processes and Scheduling

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees