JPH087689B2 - タスク制御方式 - Google Patents

タスク制御方式

Info

Publication number
JPH087689B2
JPH087689B2 JP28337888A JP28337888A JPH087689B2 JP H087689 B2 JPH087689 B2 JP H087689B2 JP 28337888 A JP28337888 A JP 28337888A JP 28337888 A JP28337888 A JP 28337888A JP H087689 B2 JPH087689 B2 JP H087689B2
Authority
JP
Japan
Prior art keywords
task
flag
level
processing
executed
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 - Lifetime
Application number
JP28337888A
Other languages
English (en)
Other versions
JPH02128227A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP28337888A priority Critical patent/JPH087689B2/ja
Publication of JPH02128227A publication Critical patent/JPH02128227A/ja
Publication of JPH087689B2 publication Critical patent/JPH087689B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Exchange Systems With Centralized Control (AREA)

Description

【発明の詳細な説明】 〔概 要〕 電子交換機等において、優先順序の異なる複数のタク
スを実行するときのタスク制御方式に関し、 処理の無駄を低減することを目的とし、 それぞれが所定の処理を実行する1つ以上の第1のタ
スクと、第1のタスクに比べて優先度の低い処理を実行
する第2のタスクと、第2のタスクの処理の解放に関す
る識別情報を保持するフラグと、所定周期で導入される
割込み信号に応じてフラグを所定の状態に設定すると共
に、解放要求が導入されたときに、フラグの状態に応じ
て第2のタスクの処理の解放を実施し、この解放処理の
実行に応じてフラグの内容を変更する実行制御手段とを
備えるように構成する。
〔産業上の利用分野〕 本発明は、例えば電子交換機において、優先順序の異
なる複数のタクスを実行するときのタスク制御方式に関
するものである。
〔従来の技術〕
同時に多数の呼をただ1個の処理装置によって時分割
的に、しかも実時間性を損なうことなく多重処理を行な
うために、プログラムを効率よく管理することは、電子
交換システムにとってきわめて重要である。(電気通信
共済会発行「D10形自動交換機 第1部 概要」の258ペ
ージから引用)。
一般的に、電子交換機のソフトウェア制御方式は、各
種のタスク(処理装置からみた仕事の単位)に優先順位
(レベル)を割り付けて複数のタスクを制御している。
このレベルは、周期的に実行されるクロックレベル
と、それ以外の通常の仕事を行なうベースレベルとに大
別することができる。例えば、クロックレベルではベー
スレベルの1タスクが長時間に渡って処理を独占してい
るような無限ループになっていないかを監視する処理
(以後メーズ処理と称する)を行なっており、ベースレ
ベルでは交換接続処理を行なっている。また、このベー
スレベルの処理で長時間実行されるタスクは、他のタス
クの処理が実行されるように実行レベルの解放(以後サ
スペンド処理と称する)を行なっている。
第5図に、クロックレベルのタスクとベースレベルの
タスクとを実行する場合の従来例を示す。図において、
クロックレベルは実行周期の許容範囲に応じて更に2つ
のレベルに分けられ、優先順位の高い方をHレベル(CL
K(H))、低い方をLレベル(CLK(L))とした。ま
た、ベースレベルのタスクはそれほど時間的な精度を必
要としないので、起動すべき周期がきたら待ち合わせに
よって起動する方法を採っており、このための待ち行列
のクラスが3個あって、優先順位の高い方のレベルから
順にB1Q1,B1Q2,B1Q3(Qは待ち行列)と称する。
第5図(イ)にクロックレベル及びベースレベルの各
レベルの遷移状態を示す。インターバルタイマ等から所
定周期(例えば4ms)のクロック割込みが発生し、この
クロック割込みが発生するとLレベルあるいはB1の各レ
ベルが実行中でも確実にHレベルのタスクを実行する。
以後、L,B1Q1,B1Q2,B1Q3の各レベルのタスクを順に実行
する。また、このクロック割込みが生じたときにLレベ
ル以下のタスクを中断してHレベルの実行を行なったと
きは、Hレベルの仕事が終了した後に、クロック割込み
によって中断されたタスクの処理を再開する。更に、装
置診断等の優先順位の低いタスクの処理が長時間に及ぶ
ことを防ぐために、B1Q3レベルのタスクにはサスペンド
処理が組み込まれており、このサスペンド処理を実行す
ることによりこのB1Q3レベルのタスクの処理の解放が行
なわれる。
〔発明が解決しようとする課題〕
ところで、交換機の負荷状態は変動するため、高負荷
を想定してサスペンド処理を組み込んでおり、低負荷時
に処理の無駄が生じるという問題点があった。また、低
負荷を想定してサスペンド処理を組み込んだ場合は高負
荷時に処理が間に合わなくなってしまう。
第5図(ロ)に高負荷時のレベル遷移状態を示す(第
5図(ロ),(ハ),(ニ),(ホ)においては、簡単
のためクロックレベル(CLKレベルと称する)と2つの
ベースレベル(高位をBHレベル,低位をBLレベルと称す
る)とに分けて説明する)。
第5図(ロ)に示すように、高負荷(BHレベルの処理
時間が長い状態)の場合には、BLレベルの処理が長時間
継続しないように、短い間隔でサスペンド処理を組み込
む。この状態で低負荷になると、第5図(ハ)に示すよ
うにBLレベルのサスペンド処理後停止状態になるため、
この処理が停止している時間が無駄になる。
また、第5図(ニ)に示すように、低負荷状態を想定
してサスペンド処理を組み込むと、BLレベルの処理を実
行後サスペンド処理に至までの時間が長くなる。従っ
て、第5図(ホ)に示すようにBHレベルの処理時間の割
合が少なくなり、高負荷時にBHレベルのタクスの処理が
間に合わなくなる。
本発明は、このような点にかんがみて創作されたもの
であり、処理の無駄を低減するようにしたタスク制御方
式を提供することを目的としている。
〔課題を解決するための手段〕
第1図は、本発明のタスク制御方式の原理ブロック図
である。
図において、第1のタスク111のそれぞれは、所定の
処理を実行する。
第2のタスク121は、第1のタスク111に比べて優先度
の低い処理を実行する。
フラグ131は、第2のタスク121の処理の解放に関する
識別情報を保持する。
実行制御手段141は、所定周期で導入される割込み信
号に応じてフラグ131を所定の状態に設定すると共に、
解放要求が導入されたときに、フラグ131の状態に応じ
て第2のタスク121の処理の解放を実施し、この解放処
理の実行に応じてフラグ131の内容を変更する。
従って、全体として、第2のタスク121に対する解放
要求が導入されたときに、フラグ131の状態に応じて解
放処理を実行するように構成されている。
〔作 用〕
複数の第1のタスク111に比べて第2のタスク121の優
先度は低く、実行制御手段141からの指示によって処理
の解放が行なわれる。
フラグ131は所定周期で導入される割込み信号に応じ
て所定の状態に設定される。実行制御手段141は、解放
要求が導入されるとフラグ131の状態を監視し、このフ
ラグ131の状態に応じて解放処理を実行し、この解放処
理を実行したときにフラグ131の内容を変更する。
例えば、フラグ131は所定周期でリセットされるもの
とすると、実行制御手段141は、解放要求に応じてフラ
グ131の状態を監視し、フラグ131がリセットされている
ときのみ第2のタスク121の解放処理を実行して、他の
第1のタスク111に処理の実権を渡す。また、このとき
実行制御手段141によってフラグ131がセットされ、2度
目以降の解放要求が導入されても解放処理は行なわれな
い。
本発明にあっては、第2のタスク121に対する解放要
求が導入されたときに、フラグ131の状態に応じて解放
処理を実行すると共に、この解放処理の実行に応じてフ
ラグ131の内容を変更することにより、負荷の状態に応
じた最適な解放処理の実施を行なうことができるので、
処理の無駄を低減することが可能になる。
〔実施例〕
以下、図面に基づいて本発明の実施例について詳細に
説明する。
第2図は、本発明のタスク制御方式を適用した一実施
例の構成を示す。
I.実施例と第1図との対応関係 ここで、本発明の実施例と第1図との対応関係を示し
ておく。
第1のタスク111は、タスク(CLK)211,タスク(H)
213に相当する。
第2のタスク121は、タスク(L)215に相当する。
フラグ131は、フラグ241に相当する。
実行制御手段141は、レベル制御部221,インターバル
タイマ223,フラグ監視部231,セット部233,リセット部23
5に相当する。
以上のような対応関係があるものとして、以下本発明
の実施例について説明する。
II.実施例の構成 第2図において、実施例の交換機は、メーズ処理を行
なうCLKレベルのタスク(CLK)211と、呼接続処理を行
なうBHレベルのタスク(H)213と、装置診断を行なうB
Lレベルのタスク(L)215とによって機能するものとす
る。
また、この交換機は、各タスクの実行順序を制御する
レベル制御部221と、所定の時間間隔(例えば4ms)を計
測するインターバルタイマ223と、サスペンド処理を実
行するか否かを判断するためのフラグ241と、フラグ241
の監視を行なうフラグ監視部231と、フラグ241のセット
を行なうセット部233と、フラグ241のリセットを行なう
リセット部235とを備えている。
インターバルタイマ223はレベル制御部221に接続され
ており、レベル制御部221の制御によってタスク(CLK)
211,タスク(H)213,タスク(L)215の何れかの処理
が実行される。また、フラグ監視部231によるフラグ241
の監視結果はタスク(L)215に導入される。更に、セ
ット部233はフラグ監視部231及びフラグ241に接続され
ており、リセット部235はレベル制御部221及びフラグ24
1に接続されている。
III.実施例の動作 次に、上述した本発明実施例の動作を説明する。
第3図に、実施例のサスペンド処理の要領を示す。図
において、「要求」はBLレベルのタスクの随所で発生す
るサスペンド処理を実施するための要求を、「実行」は
サスペンド処理の実施をそれぞれ示している。また、
「フラグ」はフラグ241に対するアクセス状態を示して
おり、「W」はフラグ監視部231によるフラグ241の監視
状態を、「S」はセット部233によるフラグ241のセット
を、「R」はリセット部235によるフラグ241のリセット
をそれぞれ示している。
また、第4図に、実施例のレベルの遷移状態を示す。
(イ)は低負荷時を、(ロ)は高負荷時をそれぞれ示し
ており、簡単のため1つのクロックレベル(CLKレベ
ル)と2つのベースレベル(BHレベル,BLレベル)とに
分けて、これらのレベル間の遷移について表した。
以下、第2図〜第4図を参照する。
最初に、低負荷時の場合を考える。
インターバルタイマ223からレベル制御部221に周期的
なクロック割込みが発生し、レベル制御部221の制御に
よってタスク(CLK)211の処理に遷移する。また、この
ときレベル制御部221はリセット部235に指示を送り、リ
セット部235はフラグ241をリセットする。
タスク(CLK)211の処理が終了すると、順にタスク
(H)213,タスク(L)215の処理に遷移する。
タスク(L)215の実行においては、随所にサスペン
ド要求が発生する。例えば、タスク(L)215のプログ
ラム中の随所に「サスペンド要求」のサブルーチンへの
ジャンプがあり、以下の処理が実行される。
サスペンド要求が発生すると、フラグ監視部231はフ
ラグ241の監視を行ない、フラグ241がリセットされた状
態にあるか否かを判定する。フラグ241がリセット状態
であると、セット部233に指示を送ってフラグ241のセッ
トを行ない、タスク(L)215によるサスペンド処理を
実行する。
また、サスペンド要求に応じてフラグ監視部231がフ
ラグ241の監視を行なったときに、フラグ241がセットさ
れた状態であるときは、サスペンド処理の実行を行なわ
ずにタスク(L)215の処理を継続する。
このように、タスク(CLK)211が実行された後のサス
ペンド処理のみが実施され、それ以降のサスペンド処理
は実施されないことになり、タスク(L)215の処理を
長時間に渡って実行することができる。
次に、高負荷時の場合を考える。
上述した低負荷時と同様にタスク(H)213,タスク
(L)215の処理に遷移し、その後サスペンド要求が発
生する。この場合にも、タスク(CLK)211が実行された
直後のサスペンド処理のみが実施されるので、タスク
(H)213の処理時間に応じてタスク(L)215の処理時
間を短かくすることができる。
IV.実施例のまとめ このように、インターバルタイマ233からのクロック
割込み発生時にフラグ241をリセットし、その後最初に
発生したサスペンド要求に対してサスペンド処理を実行
する。このサスペンド処理実行時にフラグ241のセット
を行ない、フラグ241がセットされた状態において発生
したサスペンド要求に対してはサスペンド処理の実行を
行なわないようにする。
従って、低負荷時のときは長時間に渡ってタスク
(L)215を実行することになり、また高負荷時のとき
は長時間に渡ってタスク(H)213を実行することにな
り、負荷に応じて最適な状態でタスク(H)213とタス
ク(L)215とを実行することができるので、処理の無
駄を低減することができる。
V.発明の変形態様 なお、上述した本発明の実施例にあっては、クロック
割込み発生時にフラグ241をリセットし、サスペンド処
理時にセットするようにしたが、このリセット,セット
動作は反対であってもよい。
また、「I.実施例と第1図との対応関係」において、
本発明と実施例との対応関係を説明しておいたが、これ
に限られることはなく、本発明には各種の変形態様があ
ることは当業者であれば容易に推考できるであろう。
〔発明の効果〕
上述したように、本発明によれば、第2のタスクに対
する解放要求が導入されたときに、フラグの状態に応じ
て解放処理を実行すると共に、この解放処理の実行に応
じてフラグの内容を変更することにより、処理を無駄を
低減することができるので、実用的には極めて有用であ
る。
【図面の簡単な説明】
第1図は本発明のタスク制御方式の原理ブロック図、 第2図は本発明のタスク制御方式を適用した一実施例の
構成図、 第3図は実施例のサスペンド処理の説明図、 第4図は実施例のレベル遷移の説明図、 第5図は従来例の説明図である。 図において、 111は第1のタスク、 121は第2のタスク、 131はフラグ、 141は実行制御手段、 211はタスク(CLK)、 213はタスク(H)、 215はタスク(L)、 221はレベル制御部、 223はインターバルタイマ、 231はフラグ監視部、 233はセット部、 235はリセット部、 241はフラグである。

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】それぞれが所定の処理を実行する1つ以上
    の第1のタスク(111)と、 前記第1のタスク(111)に比べて優先度の低い処理を
    実行する第2のタスク(121)と、 前記第2のタスク(121)の処理の解放に関する識別情
    報を保持するフラグ(131)と、 所定周期で導入される割込み信号に応じて前記フラグ
    (131)を所定の状態に設定すると共に、解放要求が導
    入されたときに、前記フラグ(131)の状態に応じて前
    記第2のタスク(121)の処理の解放を実施し、この解
    放処理の実行に応じて前記フラグ(131)の内容を変更
    する実行制御手段(141)と、 を備えるように構成したことを特徴とするタスク制御方
    式。
JP28337888A 1988-11-08 1988-11-08 タスク制御方式 Expired - Lifetime JPH087689B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP28337888A JPH087689B2 (ja) 1988-11-08 1988-11-08 タスク制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP28337888A JPH087689B2 (ja) 1988-11-08 1988-11-08 タスク制御方式

Publications (2)

Publication Number Publication Date
JPH02128227A JPH02128227A (ja) 1990-05-16
JPH087689B2 true JPH087689B2 (ja) 1996-01-29

Family

ID=17664733

Family Applications (1)

Application Number Title Priority Date Filing Date
JP28337888A Expired - Lifetime JPH087689B2 (ja) 1988-11-08 1988-11-08 タスク制御方式

Country Status (1)

Country Link
JP (1) JPH087689B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008271607A (ja) * 2008-07-28 2008-11-06 Nintendo Co Ltd 電子装置

Also Published As

Publication number Publication date
JPH02128227A (ja) 1990-05-16

Similar Documents

Publication Publication Date Title
US5448732A (en) Multiprocessor system and process synchronization method therefor
KR930000592B1 (ko) 타스크 추적장치
US5632032A (en) Cross address space thread control in a multithreaded environment
US20010034751A1 (en) Real-time OS simulator
US5257372A (en) Methods for efficient distribution of parallel tasks to slave processes in a multiprocessing system
JPH0799502B2 (ja) コンピュータ・システム
JPH087689B2 (ja) タスク制御方式
JP2693916B2 (ja) タスクスケジュール方法
CN118689599A (zh) 中断处理的方法、装置和电子设备
JPH0644234B2 (ja) タスク管理装置
JPH05113887A (ja) コンピユータシステム
JP3207564B2 (ja) イベント記録方法及び装置
JP2903525B2 (ja) ジョブ管理方式
JPH0588933A (ja) デバツグ機能を有する並列処理システム
JPH09160790A (ja) タスクスケジュール装置及びタスクスケジュール方法
JPH02220138A (ja) リアルタイムオペレーティングシステムの割り込み保護方式
JPH0612394A (ja) プロセススケジュール方式
JPH0328933A (ja) タスク制御方法
JPS63177231A (ja) 並列プログラムデバグ方式
JP4003113B2 (ja) 電話交換におけるマルチスレッドの制御方法
JP2822728B2 (ja) コンピュータシステム
JPS62217326A (ja) 複数os格納切替可能コンピユ−タ
JPH02244371A (ja) マルチプロセツサシステムの排他制御方法
JPS6027950A (ja) 優先デイスパツチ制御方式
JPH0198047A (ja) 割込み処理方式