JPH04195432A - タスク管理装置 - Google Patents

タスク管理装置

Info

Publication number
JPH04195432A
JPH04195432A JP32634390A JP32634390A JPH04195432A JP H04195432 A JPH04195432 A JP H04195432A JP 32634390 A JP32634390 A JP 32634390A JP 32634390 A JP32634390 A JP 32634390A JP H04195432 A JPH04195432 A JP H04195432A
Authority
JP
Japan
Prior art keywords
task
resource
priority
semaphore
resources
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
JP32634390A
Other languages
English (en)
Inventor
Noriaki Takakura
高倉 規彰
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 JP32634390A priority Critical patent/JPH04195432A/ja
Publication of JPH04195432A publication Critical patent/JPH04195432A/ja
Pending legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、タスクの動作をプライオリティで管理するO
8をもつタスク管理手段に利用する。特に、資源を獲得
したタスクのプライオリティを変更させる管理手段に関
する。
〔概要〕
本発明は、タスクの動作をプライオリティで管理する手
段において、 資源を解放するタスクのプライオリティを一時上昇させ
ることにより、 資源待ち状態であるプライオリティの高いタスクの待ち
時間を短縮することができるようにしたものである。
〔従来の技術〕
従来、タスクのそれぞれにプライオリティと呼ばれる正
の整数を付け、その値が小さい(ブライ、オリティが高
い)はど処理を優先させていた。したがって、プライオ
リティの値が小さい(プライオリティが高い)タスクと
プライオリティの値が大きい(プライオリティが低い)
タスクが動作可能な状態であった場合に、まずプライオ
リティの高いタスクの処理が実行され、その処理が終了
するかまたは中断した場合にプライオリティの低いタス
クの処理が実行される。また、ある資源を複数のプライ
オリティの異なるタスクが待っている場合には、プライ
オリティの高いものから優先的に資源が与えられる。
あるセマフォをタスクD(プライオリティ100)が獲
得した後にタスクE(プライオリティ1)が要求して待
ちになり、その後タスクDがセマフォを返却してタスク
Eの待ち状態が解除になる際の処理を図面を参照して説
明する。
第10図は、この従来例の動作環境を示すブロック図で
ある。第11図は、従来のセマフォ獲得および返却の際
のフローチャートである。第12図はプライオリティ1
00のタスクDとプライオリティ1のタスクEの従来の
管理テーブルの初期状態で、58はタスクDのコード部
を指すポインタ、61はプライオリティ、63はタスク
Eのコード部を指すポインタ、66はプライオリティで
ある。第13図は従来のセマフォ源管理テーブルで、6
7および68はタスク管理テーブルのリンク情報である
今、ID=X、資源管理数1のセマフォXが存在してい
て、タスクDはセマフォXが管理する資源を1個、タス
クEはセマフォXが管理する資源を1個をそれぞれ獲得
して処理を進めるものとする。セマフォXが管理する資
源をタスクDが要求した場合に、O8は第11図(1)
の353でタスクDの要求したセマフォXの管理する資
源が空いているか否かをチエツクする。資源が空いてい
るので資源を1個貸し出す。タスクDは資源を獲得し、
次の処理に進む。次にタスクEが同じ<ID=Xのセマ
フォXに対し資源を要求する。第11図(1)のS53
で要求された資源が空いているか否かをチエツクし、空
いていないので355で待ちキューにつながれる。タス
クEはタスクDがセマフォXで管理する資源を返却する
まで待ちキューにつながれたまま待つ(第13図)。タ
スクDはセマフォXの管理する資源を使用して処理を行
うが、プライオリティが低いのでプライオリティの高い
タスクが他に存在した場合に処理が後回しになり、資源
の返却までに時間がかかる。また、タスクDが他の資源
を要求して待ちになっても、待ちキューはプライオリテ
ィの高いものから順にリンクされ、資源を獲得するまで
に時間がかかる。タスクDがセマフォをO8に返却する
と、356で空き資源になって資源の返却処理が終了し
、はじめてタスクEがセマフォXの資源を獲得し、起床
して処理を続けることができる。
〔発明が解決しようとする課題〕
このような従来例では、あるタスクが資源を獲得してそ
の資源の空きがなくなると、その資源が返却されるまで
はその後でどんなに高いプライオリティのタスクがその
資源を要求しても待ちになる。また、プライオリティの
低いタスクの処理はそれよりもプライオリティの高いタ
スクが動作可能な場合には後回しになる。したがって、
資源を獲得したタスクのプライオリティが低い場合には
、その処理は遅くなり、資源の返却にも時間がかかり、
資源待ちになっているタスクはそのプライオリティに関
係なく資源を獲得しているタスクよりも処理が遅くなる
。これは、プライオリティの高いタスクを優先的に実行
するクスタブライオリティ処理の原則に反することで、
重大な欠点である。
また、プライオリティの低いタスクが資源を獲得したま
ま実行待ちであるということは、資源が獲得されたまま
使用されていないということで、資源の有効活用ができ
ない欠点となる。
本発明は、このような欠点を除去するもので、資源待ち
状態であるタスクの待ち時間を短縮することができるタ
スク管理装置を提供することを目的とする。
〔課題を解決するための手段〕
本発明は、タスクの動作をプライオリティで管理する管
理手段と、この管理手段が管理するタスクに一対一に対
応するプライオリティを保存する保存手段とを備えたタ
スク管理装置において、資源をすでに獲得したタスクを
登録する登録手段と、新たなタスクが獲得する資源をす
でに獲得しているタスクを上記登録手段から選定する選
定手段と、この選定手段で選定されたタスクのプライオ
リティと新たなタスクのプライオリティとを上記保存手
段から抽出する抽出手段と、この抽出手段で抽出された
プライオリティを比較する比較手段と、資源をすでに獲
得しているタスクのプライオリティが新たに資源を獲得
するタスクのプライオリティより低いことをこの比較手
段の比較結果が示すときに、資源をすでに獲得している
タスクの上記保存手段上のプライオリティを一時変更す
る変更手段とを備えたことを特徴とする。
〔作用〕
資源を獲得しているタスクの管理テーブルをプライオリ
ティ類に登録し、資源を解放させるタスクのプライオリ
ティがこれから資源を獲得するタスクのプライオリティ
より低いプライオリティのタスクであるときに、この資
源を解放させるタスクのプライオリティを上昇させて資
源の獲得情報を書き換える。これにより、資源を解放さ
せるタスクの処理を優先実行して資源を速やかに返却さ
せ、資源待ち状態であるプライオリティの高いタスクの
待ち時間を短縮する。
〔実施例〕
以下、本発明の一実施例について図面を用いて説明する
。第1図はこの実施例の構成図である。
この実施例は、第1図に示すように、タスクの動作をプ
ライオリティで管理する管理手段1と、この管理手段1
が管理するタスクに一対一に対応するプライオリティを
保存する保存手段2とを備え、さらに、本発明の特徴と
する手段として、資源をすでに獲得したタスクを登録す
る登録手段3と、新たなタスクが獲得する資源をすでに
獲得しているタスクを登録手段3から選定する選定手段
4と、この選定手段4で選定されたタスクのプライオリ
ティと新たなタスクのプライオリティとを上記保存手段
から抽出する抽出手段5と、この抽出手段5で抽出され
たプライオリティを比較する比較手段6と、資源をすで
に獲得しているタスクのプライオリティが新たに資源を
獲得するタスクのプライオリティより低いことをこの比
較手段6の比較結果が示すときに、資源をすでに獲得し
ているタスクの保存手段2上のプライオリティを一時変
更する変更手段7とを備える。第2図はタスクが資源を
獲得する際のフローチャート、第3図はタスクが資源を
返却する際のフローチャート、第4図(1)はタスクA
の管理テーブルの初期状態、第4図(2)はタスクBの
管理テーブルの初期状態、第4図(3)はタスクCの管
理テーブルの初期状態、第5図はセマフォ・キューの初
期状態、第6図はタスクBはセマフォで管理する資源を
獲得した際の、第7図はタスクCがセマフォで管理する
資源を獲得できずに待ちの状態になった際の、第8図は
タスクCがセマフォで管理する資源を獲得した際のセマ
フォ・キューのそれぞれの状態を示す。
また、表は資源獲得情報の取り得る値、第10図は本発
明の実施例が動作するハードウェアの構成を示す。
表 ○Sの管理下に、プライオリティr100 Jのタスク
Aと、プライオリティ「1」のタスクBと、プライオリ
ティ「50」のタスクCと、そのほかにプライオリティ
「51」〜r100 Jのタスクが複数と、ID=Xで
資源管理数「2」のセマフォXとが存在していて、タス
クA1タスクBおよびタスクCがそれぞれ1つずつ資源
を獲得して処理を続けるものとする。第4図で、12.
19および26はそれぞれタスクASBおよびCの管理
テーブル、13.20および27はタスクのコード部を
示すポインタ、14.15.21.22.28および2
9はリンクキューで、そのうち14.21および28は
それぞれひとつ後につながれているタスク管理テーブル
を指し、15.22および29はそれぞれひとつ前につ
ながれているタスクを指す。16.23および30はそ
れぞれのタスクのプライオリティで、17.24および
31はそのタスクが要求している資源数を、18.25
および32はその要求した資源を獲得しているかを示し
、第5図の33および34はセマフォ・キューで、33
はキューの先頭につながっているタスクを示し、34は
キューの最後尾につながっているタスクを示す。また、
表は実施例で用いたタスクがまだ資源を獲得していない
ときの、タスクが資源を獲得したときの、タスクが獲得
している資源を返却させるためにプライオリティを上昇
させたときの資源獲得情報のとる値をそれぞれ示してい
る。
セマフォXが管理する資源をタスクAが1個獲得しよう
とすると、○Sは第2図の81で要求されたセマフォX
の管理する資源が空いているか否かをチエツクする。資
源が空いているので第2図の86に処理は移り、タスク
八にセマフォXの管理する資源を貸し出す。このときに
第4図の(1)の18(資源獲得情報)を表に則って1
1」にしてセマフォ・キューに登録する(第5図)。次
に同じくセマフォXが管理する資源に対してタスクBが
獲得要求を出す。O8は再び第2図の81で要求された
セマフォXの資源が空いているか否かをチエツクし、空
いているので第2図の86の処理でタスクの管理情報を
プライオリティ順に登録し、セマフォXの管理する資源
をタスク已に貸し出す(第6図)。さらに、タスクCが
セマフォXの管理する資源に対してセマフォ獲得要求を
出す。すると、O8は第2図の81で要求されたセマフ
ォXの資源が空いているか否かをチエツクするが、セマ
フォXの資源が空いていないので第2図の82に行き、
セマフォの獲得待ちでセマフォ・キューに登録する(第
7図)。そして第2図の83でセマフォXの資源を獲得
しているタスクの内のタスクCよりもプライオリティの
低いタスクを選び出す。このときにタスクCよりもプラ
イオリティの低いタスクが無ければ処理は終了する。こ
の実施例ではタスクAが該当する。もし前工程で該当す
るタスクが複数存在する場合は、同図の84でタスクが
獲得しているセマフォXの資源を返却させるか決定する
。この実施例の場合にタスクAしか存在しないので、同
図のS5で見つけたタスクAのプライオリティを一時的
に「50」まで上昇させる。その際にタスクAの資源獲
得情報(第4図の18)を表に則って「2」にする。タ
スクAはプライオリティが上昇したためにその処理が他
の複数のタスクよりも優先され、他の資源を要求して待
ちになったとしても待ちキューの先頭につながれる。
タスクAが獲得しているセマフォXの資源を返却する際
に、O8は第3図の87でそのタスクの獲得している資
源を返却し、第3図の88でそのタスクの管理テーブル
をセマフォ・キューから削除する。次に、処理は第3図
の39に移ってタスクAのプライオリティを元に戻し、
第3図のSllでセマフォの待ちキューにつながってい
るタスクを見て起床するかどうかをチエツクする。タス
クCが起床するので、第2図の86に行きセマフォXの
管理する資源を獲得し、資源獲得情報を「1」に変更し
、セマフォ・キューに登録して処理を行う。タスクCが
セマフォXの管理する資源を返却する際は、第3図の8
7で資源を返却して第3図の88でタスクCのタスク管
理テーブルをセマフォ・キューから削除する。処理は第
3図の89に移り、資源獲得情報を調べる。タスクCの
その値は「1」であるので、プライオリティはそのまま
にして資源返却の一連の処理を終える。その時点のセマ
フォ・キューの状態を第8図に示す。
第9図は別の実施例で用いる獲得資源管理テーブルの初
期状態である。50は獲得資源管理テーブルで、49は
そのテーブルのポインタで、51および52は資源を獲
得しているタスクを登録する領域である。前述の実施例
と同様に、O8の管理下に、プライオリティr100 
JのタスクAと、プライオリティ 「1」のタスクBと
、プライオリティ「5旧のタスクCと、その他にプライ
オリティ「51」〜r100 Jのタスクが複数と、I
D=Xで資源管理数「2」のセマフォXとが存在する。
前述の実施例と同様に、ID=Xで管理するセマフォX
に対してタスクAがセマフォXて管理する資源の獲得要
求を出す。O8は前述の実施例と同様の手順でタスクA
にセマフォXの管理する資源を貸し出す。ただし、この
ときにタスクAの資源獲得情報を表に則って「1」に変
更して第9図に示す獲得資源管理テーブルにタスクAを
登録する。次に、タスクBが同じく■D−xの管理する
セマフォXが管理する資源を獲得しようとする。
○Sは再び前述の実施例と同様の手順でセマフォXの管
理する資源を貸し出してタスクBの資源獲得情報を「1
」に変更し、獲得資源管理テーブルにプライオリティ順
に登録する。さらに、タスクCがセマフォXの管理する
資源に対して資源獲得要求を出す。すると、O8は第2
図の81で要求されたセマフォXの資源が空いているか
否かをチエツクするが、セマフォXの資源が空いていな
いので第2図の32に行きセマフォ獲得待ちで待ち、セ
マフォ・ウェイト・キューに登録する。そして第2図の
83に処理は移り、前述の実施例同様にセマフォXの資
源を獲得しているタスクの内のタスクCよりもプライオ
リティの低いタスクを選び出す。このときにタスクCよ
りもプライオリティの低いタスクが無ければ処理は終了
する。この実施例ではタスクAが該当する。もし前工程
で該当するタスクが複数存在する場合は、同図の84で
獲得しているセマフォXの資源をどのタスクに返却させ
るかを決定する。この実施例の場合にはタスクAしか存
在していないので、同図の85で前過程までに見つけた
タスクAのプライオリティを一時的に「50」まで上昇
させる。その際にタスクAの資源獲得情報を(第4図の
18)を表に則って「2」に変更する。タスクAはプラ
イオリティが上昇したので、その処理は他の複数のタス
クよりも優先される。タスクAが獲得している資源を返
却する際は、前述の実施例と同様に資源の返却操作を行
い、獲得資源管理テーブルから削除して前記実施例と同
様の手段によりプライオリティを元に戻し、同じセマフ
ォXの資源を待っているタスクが起床するか否かをチエ
ツクする。タスクCが起床するので処理は第2図の86
に行きタスク八にセマフォXの資源を貸し出し、資源獲
得情報を「1」にするので処理は第2図の86に行き、
タスクAにセマフォXの資源を貸し8し、資源獲得情報
を「1」に変更して獲得資源管理テーブルに登録してか
ら処理を行う。
〔発明の効果〕
本発明は、以上説明したように、タスクの管理テーブル
内に獲得資源数と獲得情報を保存しておく領域を追加し
、タスクが資源を獲得するとキューに管理テーブルの情
報を残しておき、そのタスクよりもプライオリティの高
いタスクが資源を要求しても獲得しえなかった場合に、
プライオリティの低いタスクのプライオリティを上昇さ
せる機能を追加することにより、資源を獲得したタスク
は、処理が優先され、素早く処理を終えて資源を返却で
きる。したがって、プライオリティの高いタスクが資源
待ちの状態になる時間が短くなり、資源の有効活用がで
きる効果がある。
【図面の簡単な説明】
第1図は本発明実施例の構成図。 第2図は本発明実施例が資源獲得の際のフローチャート
。 第3図は本発明実施例が資源返却する際のフローチャー
ト。 第4図は実施例のタスク管理テーブルの初期状態。 第5図はタスク八が資源を獲得した際のセマフォ・キュ
ー。 第6図はタスクBが資源を獲得した際のセマフォ・キュ
ー0 第7図はタスクCが資源の獲得要求を出した際のセマフ
ォ・キュー。 第8図はタスクCが資源を獲得した際のセマフォ・キュ
ー。 第9図は別の実施例の獲得資源管理テーブルの初期状態
。 第10図は本発明および従来例の動作環境。 第11図は従来の資源獲得および資源返却の際のフロー
チャート。 第12図は従来のタスク管理テーブル。 第13図は従来の資源管理テーブル。 1・・・管理手段、2・・・保存手段、3・・・登録手
段、4・・・選定手段、5・・・抽出手段、6・・・比
較手段、7・・・変更手段。

Claims (1)

  1. 【特許請求の範囲】 1、タスクの動作をプライオリティで管理する管理手段
    と、この管理手段が管理するタスクに一対一に対応する
    プライオリティを保存する保存手段とを備えたタスク管
    理装置において、 資源をすでに獲得したタスクを登録する登録手段と、新
    たなタスクが獲得する資源をすでに獲得しているタスク
    を上記登録手段から選定する選定手段と、この選定手段
    で選定されたタスクのプライオリティと新たなタスクの
    プライオリティとを上記保存手段から抽出する抽出手段
    と、この抽出手段で抽出されたプライオリティを比較す
    る比較手段と、資源をすでに獲得しているタスクのプラ
    イオリティが新たに資源を獲得するタスクのプライオリ
    ティより低いことをこの比較手段の比較結果が示すとき
    に、資源をすでに獲得しているタスクの上記保存手段上
    のプライオリティを一時変更する変更手段とを備えたこ
    とを特徴とするタスク管理装置。
JP32634390A 1990-11-28 1990-11-28 タスク管理装置 Pending JPH04195432A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP32634390A JPH04195432A (ja) 1990-11-28 1990-11-28 タスク管理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP32634390A JPH04195432A (ja) 1990-11-28 1990-11-28 タスク管理装置

Publications (1)

Publication Number Publication Date
JPH04195432A true JPH04195432A (ja) 1992-07-15

Family

ID=18186727

Family Applications (1)

Application Number Title Priority Date Filing Date
JP32634390A Pending JPH04195432A (ja) 1990-11-28 1990-11-28 タスク管理装置

Country Status (1)

Country Link
JP (1) JPH04195432A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06187175A (ja) * 1992-12-18 1994-07-08 Erugu Kk マルチタスクコンピューティングシステムの排他制御方式

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6125249A (ja) * 1984-07-14 1986-02-04 Fujitsu Ltd 排他制御方式
JPS6316775A (ja) * 1986-07-09 1988-01-23 Matsushita Electric Ind Co Ltd クランプ回路
JPH02204838A (ja) * 1989-02-03 1990-08-14 Hitachi Ltd タスク優先順位管理方式

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6125249A (ja) * 1984-07-14 1986-02-04 Fujitsu Ltd 排他制御方式
JPS6316775A (ja) * 1986-07-09 1988-01-23 Matsushita Electric Ind Co Ltd クランプ回路
JPH02204838A (ja) * 1989-02-03 1990-08-14 Hitachi Ltd タスク優先順位管理方式

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06187175A (ja) * 1992-12-18 1994-07-08 Erugu Kk マルチタスクコンピューティングシステムの排他制御方式

Similar Documents

Publication Publication Date Title
US9959313B2 (en) Database management system and method capable of dynamically issuing inputs/outputs and executing operations in parallel
US6449614B1 (en) Interface system and method for asynchronously updating a share resource with locking facility
US5956712A (en) Byte range locking in a distributed environment
US9798595B2 (en) Transparent user mode scheduling on traditional threading systems
US6006247A (en) Method and system for scheduling threads and handling exceptions within a multiprocessor data processing system
US6961865B1 (en) Techniques for resuming a transaction after an error
US5687372A (en) Customer information control system and method in a loosely coupled parallel processing environment
US8607239B2 (en) Lock mechanism to reduce waiting of threads to access a shared resource by selectively granting access to a thread before an enqueued highest priority thread
EP0747813A2 (en) Customer information control system and method with temporary storage queuing functions in a loosely coupled parallel processing environment
US20240061710A1 (en) Resource allocation method and system after system restart and related component
US5941975A (en) Method of using a latch for controlling simultaneous access to a critical section
JPH04195432A (ja) タスク管理装置
CN115981808A (zh) 调度方法、装置、计算机设备和存储介质
JPH05120041A (ja) 資源割り当て管理方式
JPH04100156A (ja) タスクプライオリティ管理装置
JPH0586574B2 (ja)
JPH03116334A (ja) タスクディスパッチ方式
JPH05113891A (ja) 疑似セマフオア方式
JPH05120042A (ja) コンピユータシステム
JPS6125249A (ja) 排他制御方式
JP2000207229A (ja) 資源占有の管理方式
CN116226081A (zh) 数据库弹性伸缩方法、装置、电子设备及存储介质
Lemon Kqueue: A generic and scalable event notification facility for freebsd
CN118260051A (zh) 线程访问控制设备、方法与计算设备
JPH05158894A (ja) 分散資源アクセス装置