JP2002163120A - 情報処理システム、オブジェクトの優先度管理方法、オペレーティングシステム、記録媒体 - Google Patents

情報処理システム、オブジェクトの優先度管理方法、オペレーティングシステム、記録媒体

Info

Publication number
JP2002163120A
JP2002163120A JP2000362839A JP2000362839A JP2002163120A JP 2002163120 A JP2002163120 A JP 2002163120A JP 2000362839 A JP2000362839 A JP 2000362839A JP 2000362839 A JP2000362839 A JP 2000362839A JP 2002163120 A JP2002163120 A JP 2002163120A
Authority
JP
Japan
Prior art keywords
priority
group
processing
objects
priority table
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.)
Granted
Application number
JP2000362839A
Other languages
English (en)
Other versions
JP3763452B2 (ja
Inventor
Akira Sawada
陽 澤田
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.)
Elmic Systems Inc
Original Assignee
Elmic Systems Inc
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 Elmic Systems Inc filed Critical Elmic Systems Inc
Priority to JP2000362839A priority Critical patent/JP3763452B2/ja
Publication of JP2002163120A publication Critical patent/JP2002163120A/ja
Application granted granted Critical
Publication of JP3763452B2 publication Critical patent/JP3763452B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】 ソフトウェア部品による処理の中でパフォー
マンスの保証をする必要があるものについて、そのパフ
ォーマンスを低下させることなく処理を実行できるよう
にする技術を提供する。 【解決手段】 システム全体のタスク及びソフトウェア
部品の優先度を定める主優先度テーブル(グループ0)
と、ソフトウェア部品内部のタスクの優先度を定める従
優先度テーブル(グループ1、グループ2)を作成す
る。主優先度テーブルにより定められた優先度により処
理を実行し、ソフトウェア部品の処理が最優先になる
と、当該ソフトウェア部品のタスクの優先度を定める従
優先度テーブルに基づいて処理を実行する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、コンピュータから
なる情報処理システム上で所定の処理を実行するための
環境を、当該コンピュータに構築するための技術に関す
る。
【0002】
【従来の技術】情報処理システムには、その情報処理シ
ステムに接続されるハードウェアを制御したり、入力さ
れるデータの処理を実行したり、処理されたデータの出
力を制御したりするための各種ソフトウェアが組み込ま
れる。ソフトウェアは、各種処理を行うために、タスク
やソフトウェア部品を組み合わせて構成されるのが一般
的である。タスクは、処理の最小単位である。ソフトウ
ェア部品は、内部に、処理を分担する複数のタスクを備
えており、これらのタスクが協働して処理を行うことに
より、ソフトウェア部品としての処理を実現する。タス
クを実行するためには、タスク間の同期をとるためのイ
ベントフラグやセマフォ等が必要となる。このようなイ
ベントフラグやセマフォ等もソフトウェア部品内に備え
られる。これらのタスクや、イベントフラグ、セマフォ
等のソフトウェア部品の動作要素を、本明細書では「オ
ブジェクト」と称する。ソフトウェア部品には、例え
ば、TCP/IP(Transmission Control Protocol/In
ternet Protocol)等の各種通信プロトコルの処理や、
画面の制御、ファイルを管理するもの等がある。
【0003】ソフトウェア部品の中には、パフォーマン
スを保証する必要があるものがある。例えば、プロトコ
ルをサポートするようなものである。ここでパフォーマ
ンスとは、処理速度や処理結果の精度等である。従来、
情報処理システム内のすべてのタスクに優先度を付け、
優先度の高い順にタスクの処理を実行している。つま
り、情報処理システム内で、タスクの優先度を一元的に
管理している。優先度は、通常、システム設計者が情報
処理システムの設計段階で決めて割り振る。優先度を一
元的に管理するために、タスクの優先度は、情報処理シ
ステム全体での比較となる。そのため、ソフトウェア部
品単体では十分なパフォーマンスが出せたとしても、情
報処理システムに実装した際に、パフォーマンスが保証
できなくなることがある。例えば、ソフトウェア部品を
構成する複数のタスクの優先度を、ソフトウェア部品以
外のタスクの優先度と同列で扱うため、ソフトウェア部
品内のタスクの処理中に、タスク優先度に応じて、ソフ
トウェア部品以外のタスクに制御が渡ってしまい、ソフ
トウェア部品としての処理が完結せずに十分なパフォー
マンスを出せなくなる。
【0004】図6を例に、従来の優先度の概念によるタ
スクの処理順序について説明する。図6では、情報処理
システム全体の優先度が1〜10まで設けてあり、10
個のタスクにいずれかの優先度が割り振られている。こ
こで、優先度「4」のタスクA、優先度「7」のタスク
B、優先度「9」のタスクCは、一つのソフトウェア部
品をなすものとする。このソフトウェア部品は、タスク
A、タスクB、タスクCにより連続して処理を行う場
合、最高のパフォーマンスを発揮する。しかし、図6の
ように、タスクAとタスクBとの間にタスク4、タスク
5による処理が行われ、タスクBとタスクCとの間にタ
スク6による処理が行われると、ソフトウェア部品とし
ての処理の合間に別の処理による割り込みが入ることに
なり、パフォーマンスが低下することになる。
【0005】
【発明が解決しようとする課題】本発明の課題は、上記
のような問題点に鑑み、ソフトウェア部品による処理の
中でパフォーマンスの保証をする必要があるものについ
て、そのパフォーマンスを低下させることなく処理を実
行できるようにする技術を提供することにある。
【0006】
【課題を解決するための手段】以上のような課題を解決
する本発明は、複数のオブジェクトによる処理をオブジ
ェクト単位で実行することにより所定の機能を実現する
情報処理システムである。この情報処理システムは、前
記複数のオブジェクトを、処理のパフォーマンスに影響
する第1オブジェクトのグループと処理のパフォーマン
スに影響しない第2オブジェクトとに分類し、前記グル
ープによる処理の実行順序と前記第2オブジェクトによ
る処理の実行順序との優先度を定める主優先度テーブル
を作成するとともに前記第1オブジェクトによる処理の
実行順序の優先度を定める従優先度テーブルを作成する
第1の手段と、前記作成された主優先度テーブルを用い
た前記処理の実行中に、前記グループによる処理の実行
順序が最優先になったときに、前記従優先度テーブルを
用いた前記処理に切り換える第2の手段と、を備える。
このとき、前記第1の手段は、例えば、前記グループ
を、2以上のオブジェクトにより構成されて所定の処理
を行う1以上のソフトウェア部品毎に形成し、前記ソフ
トウェア部品毎に前記従優先度テーブルを作成するよう
にしてなるようにしてもよい。
【0007】また、本発明は、オブジェクトと、2以上
のオブジェクトにより構成されて処理を行う1以上のソ
フトウェア部品と、により所定の処理を行う情報処理シ
ステムである。この情報処理システムは、オブジェクト
を、前記ソフトウェア部品毎のオブジェクトのグループ
と、いずれのソフトウェア部品にも属さないオブジェク
トのグループとにグループ化し、前記いずれのソフトウ
ェア部品にも属さないオブジェクトによる処理の実行順
序と前記ソフトウェア部品による処理の実行順序との優
先度を定める主優先度テーブルを作成するとともに、ソ
フトウェア部品を構成するオブジェクトによる処理の実
行順序の優先度を定める従優先度テーブルを前記ソフト
ウェア部品毎に作成する第1の手段と、前記作成された
主優先度テーブルを用いた前記処理の実行中に、ソフト
ウェア部品による処理の実行順序が最優先になったとき
に、当該ソフトウェア部品について定められた従優先度
テーブルを用いた前記処理に切り換える第2の手段と、
を備える。このとき、例えば、前記ソフトウェア部品
が、当該ソフトウェア部品の処理のパフォーマンスに影
響しないオブジェクトを含んでいる場合、前記第1の手
段は、ソフトウェア部品のパフォーマンスに影響しない
前記オブジェクトの優先度を、前記主優先度テーブルに
含むようにしてなるようにしてもよい。
【0008】これらの本発明により、処理のパフォーマ
ンスに関するオブジェクトの処理時に、他のオブジェク
トにより、そのパフォーマンスを低下させることが無く
なる。つまり、パフォーマンスに関するオブジェクトの
処理中には、他のオブジェクトによる処理の発生を抑え
て、パフォーマンスを保証する。ここでパフォーマンス
とは、例えば、処理の速度であったり、処理結果の精度
等である。例えば、ソフトウェア部品のように、複数の
オブジェクトにより所定の処理を優先的に完結させる必
要がある場合などに有効である。なお、オブジェクトと
は、例えば、タスクや、イベントフラグ、セマフォ等の
動作要素である。
【0009】本発明は、以下のような方法によっても実
現可能である。即ち、複数のオブジェクトによる処理を
実行することにより所定の処理を行う装置において実行
される方法であって、前記複数のオブジェクトを所定の
条件により主グループと1以上の従グループとに分ける
第1段階と、前記主グループに属するオブジェクトによ
る処理及び前記従グループによる処理を行う優先度を定
める主優先度テーブルを作成する第2段階と、前記従グ
ループに属するオブジェクトの処理を行う優先度を定め
る従優先度テーブルを、従グループ毎に作成する第3段
階と、を含み、前記作成された主優先度テーブルを用い
た処理の実行中に、従グループによる処理が最優先にな
ったときは、当該従グループについて定められた従優先
度テーブルを用いた処理に切り換え、当該従優先度テー
ブルを用いた処理の終了時に、前記主優先度テーブルを
用いた処理に切り換えることを特徴とする、オブジェク
トの優先度管理方法である。前記第1段階では、例え
ば、前記複数のオブジェクトを、処理がパフォーマンス
に影響しない主グループと処理がパフォーマンスに影響
する従グループとに分けるようにしてもよい。
【0010】本発明は、以下のような方法によっても実
現可能である。即ち、情報処理システム全体のタスク及
び1以上のソフトウェア部品の優先度を定める主優先度
テーブルと、前記1以上のソフトウェア部品内部のタス
クの優先度をソフトウェア部品毎に定める従優先度テー
ブルと、その時点で使用する前記主優先度テーブル又は
従優先度テーブルを指定するポインタとを備え、前記ポ
インタが指定する優先度テーブルに基づいて前記タスク
又は前記ソフトウェア部品による処理を実行する装置に
おいて実行される方法であって、前記ポインタが、前記
主優先度テーブルを指定しているときに、ソフトウェア
部品の処理が最優先になると、当該ソフトウェア部品に
ついて定められた従優先度テーブルを指定するようにす
る、オブジェクトの優先度管理方法である。
【0011】本発明は、以下のようなオペレーティング
システムによっても実現可能である。即ち、複数のオブ
ジェクトによる処理をオブジェクト単位で実行すること
により所定の機能を実現するオペレーティングシステム
において、前記複数のオブジェクトを、処理のパフォー
マンスに影響する第1オブジェクトのグループと処理の
パフォーマンスに影響しない第2オブジェクトとに分類
し、前記グループによる処理の実行順序と前記第2オブ
ジェクトによる処理の実行順序との優先度を定める主優
先度テーブルを作成するとともに前記第1オブジェクト
による処理の実行順序の優先度を定める従優先度テーブ
ルを作成する第1の手段と、前記作成された主優先度テ
ーブルを用いた前記処理の実行中に、前記グループによ
る処理の実行順序が最優先になったときに、前記従優先
度テーブルを用いた前記処理に切り換える第2の手段
と、を備える、オペレーティングシステムである。
【0012】本発明は、以下のようなオペレーティング
システムによっても実現可能である。即ち、オブジェク
トと、2以上のオブジェクトにより構成されて処理を行
う1以上のソフトウェア部品と、により所定の処理を行
うオペレーティングシステムにおいて、オブジェクト
を、前記ソフトウェア部品毎のオブジェクトのグループ
と、いずれのソフトウェア部品にも属さないオブジェク
トのグループとにグループ化し、前記いずれのソフトウ
ェア部品にも属さないオブジェクトによる処理の実行順
序と前記ソフトウェア部品による処理の実行順序との優
先度を定める主優先度テーブルを作成するとともに、ソ
フトウェア部品を構成するオブジェクトによる処理の実
行順序の優先度を定める従優先度テーブルを前記ソフト
ウェア部品毎に作成する第1の手段と、前記作成された
主優先度テーブルを用いた前記処理の実行中に、ソフト
ウェア部品による処理の実行順序が最優先になったとき
に、当該ソフトウェア部品について定められた従優先度
テーブルを用いた前記処理に切り換える第2の手段と、
を備える、オペレーティングシステムである。
【0013】本発明は、以下のようなプログラムが記録
された記録媒体をコンピュータに読み取らせて実行させ
ることによっても実現可能である。即ち、複数のオブジ
ェクトによる処理をオブジェクト単位で実行することに
より所定の機能を実現するコンピュータに、前記複数の
オブジェクトを、処理のパフォーマンスに影響する第1
オブジェクトのグループと処理のパフォーマンスに影響
しない第2オブジェクトとに分類し、前記グループによ
る処理の実行順序と前記第2オブジェクトによる処理の
実行順序との優先度を定める主優先度テーブルを作成す
るとともに前記第1オブジェクトによる処理の実行順序
の優先度を定める従優先度テーブルを作成する処理、前
記作成された主優先度テーブルを用いた前記処理の実行
中に、前記グループによる処理の実行順序が最優先にな
ったときに、前記従優先度テーブルを用いた前記処理に
切り換える処理、を実行させるためのプログラムが記録
された、コンピュータ読み取り可能な記録媒体がその一
例である。
【0014】また、他の例として、本発明は、以下のよ
うなプログラムが記録された記録媒体をコンピュータに
読み取らせて実行させることによっても実現可能であ
る。即ち、オブジェクトと、2以上のオブジェクトによ
り構成されて処理を行う1以上のソフトウェア部品と、
により所定の処理を行うコンピュータに、オブジェクト
を、前記ソフトウェア部品毎のオブジェクトのグループ
と、いずれのソフトウェア部品にも属さないオブジェク
トのグループとにグループ化し、前記いずれのソフトウ
ェア部品にも属さないオブジェクトによる処理の実行順
序と前記ソフトウェア部品による処理の実行順序との優
先度を定める主優先度テーブルを作成するとともに、ソ
フトウェア部品を構成するオブジェクトによる処理の実
行順序の優先度を定める従優先度テーブルを前記ソフト
ウェア部品毎に作成する処理、前記作成された主優先度
テーブルを用いた前記処理の実行中に、ソフトウェア部
品による処理の実行順序が最優先になったときに、当該
ソフトウェア部品について定められた従優先度テーブル
を用いた前記処理に切り換える処理、を実行させるため
のプログラムが記録された、コンピュータ読み取り可能
な記録媒体である。
【0015】
【発明の実施の形態】以下、本発明の実施形態を図面を
参照して詳細に説明する。本発明では、グループ優先度
の概念に基づいて、タスク等のオブジェクトの優先度を
管理する。
【0016】グループ優先度について説明する。オブジ
ェクトを、各種処理を単体で行うオブジェクトのグルー
プと、複数のオブジェクトで協働して一つの処理を行う
オブジェクトのグループとに分ける。ここで後者をソフ
トウェア部品と呼ぶ。オペレーティングシステムは、オ
ブジェクト及びソフトウェア部品についての優先度を管
理し、実行することにより所望のアプリケーションソフ
トウェアを実現する。
【0017】単体で処理を行うオブジェクト(第1オブ
ジェクト)は、アプリケーションソフトウェアから各種
要求を受け付け、要求による処理結果をアプリケーショ
ンソフトウェアに返す。ソフトウェア部品内のオブジェ
クトには、アプリケーションソフトウェアから各種要求
を受け付け、ソフトウェア部品内で行われる要求に対す
る処理結果をアプリケーションに返すオブジェクト(第
2オブジェクト)と、ソフトウェア部品内に固有で、ア
プリケーションソフトウェアや他のソフトウェア部品と
は、直接要求を受けたり処理結果を返さないオブジェク
ト(第3オブジェクト)とがある。第3オブジェクト
は、ソフトウェア部品の中核であり、ソフトウェア部品
が行う処理のパフォーマンスに影響するものである。
【0018】第1オブジェクト及びソフトウェア部品を
一つのグループとして、グループ番号「0」を割り振
る。また、第2、第3オブジェクトを、ソフトウェア部
品毎のグループに分け、各グループにグループ番号を割
り振る。グループ番号「0」に属する第1オブジェクト
及びソフトウェア部品に、処理の順序を表す優先度を割
り振り、優先度テーブルを作成する。例えば、図1に示
すようなグループ0の優先度テーブルを作成する。図1
に示すグループ0の優先度のテーブルには、グループ0
に属するオブジェクトの他に、各ソフトウェア部品(グ
ループ1、2)の優先度も割り振られる。また、各ソフ
トウェア部品についても、ソフトウェア部品毎にソフト
ウェア部品内のオブジェクトに優先度を割り振り、優先
度テーブルを作成する。図1では、グループ1の優先度
テーブル、グループ2の優先度テーブルが、それに当た
る。
【0019】グループ0では、優先度1〜7の順序で、
タスク1→タスク2→タスク3→グループ1→タスク5
→グループ2→タスク7の処理を行うようにしてもよい
が、本実施形態では、実行準備が完了した各タスク及び
各グループの中で、優先度が最も高いものから処理を実
行する。例えば、タスク1の実行準備完了前にタスク2
の実行準備が完了すると、タスク2の優先度がタスク1
の優先度より低い場合であってもタスク2が実行され
る。グループ0でグループ1の実行準備が整い、優先度
1〜3のタスク1〜3の実行準備が整っていない場合、
優先度4であるグループ1の処理が実行される。この場
合、グループ1の優先度テーブルに処理が移り、グルー
プ1のタスクA〜Dを実行する。つまり、アプリケーシ
ョンソフトウェアからグループ1の第2オブジェクトの
タスクに処理を要求し、第2オブジェクトのタスクが、
グループ1内の優先度に基づき第3オブジェクトのタス
クを用いてグループ1のソフトウェア部品としての処理
を行わせる。処理結果は、第2オブジェクトからアプリ
ケーションソフトウェアに返す。これにより、グループ
0の優先度4の処理が終了する。
【0020】例えば、タスクAを第2オブジェクト、タ
スクB、C、Dを第3オブジェクトとする。グループ0
の優先度4の処理が始まると、グループ1の優先度1で
あるタスクAは、アプリケーションソフトウェアから処
理の要求を受け付ける。タスクAは、要求を受け付ける
と、第3オブジェクトによる処理結果が導出されるまで
待機状態に移行する。その結果、グループ1の優先度2
以降の処理が実行可能となる。タスクAが要求を受け付
けると、タスクB、C、Dは、グループ1の優先度テー
ブルに従って要求に応じた処理を実行し、処理結果をタ
スクAに戻す。タスクAは、処理結果を受け取ると待機
状態が終了し、アプリケーションソフトウェアに処理結
果を返す。
【0021】グループ0で優先度6のグループ2が実行
されるときも同様の処理が行われる。このようにして、
グループ0の優先度テーブルから他のグループの優先度
テーブルによる処理を行わせて、再びグループ0の優先
度テーブルに基づく処理に戻ることが可能となる。
【0022】グループ1、グループ2の各ソフトウェア
部品の処理を行うときは、各グループ内の優先度に基づ
いてタスクを実行して、自グループより優先度の低いタ
スクやグループに処理が移ることはないようにする。パ
フォーマンスを保証する必要のあるソフトウェア部品を
一つのグループとして、当該グループ内で優先度を定
め、処理を実行することができるようになるので、従来
のように、他のソフトウェア部品やタスクに処理が移動
して、ソフトウェア部品自体のパフォーマンスの低下を
招くことはなくなる。
【0023】
【実施例】図2は、以上のようなグループ優先度の概念
に基づいて、オブジェクトの優先度順に処理を行う情報
処理システムの構成図である。この情報処理システム1
0は、オペレーティングシステム(以下、OSとい
う。)20と、所定のアプリケーションソフトウェア3
0とを備えている。アプリケーションソフトウェア30
は、タスク等のオブジェクトやソフトウェア部品を優先
度に従い実行することにより、所定の処理を実現する。
OS20は、モニタ部21と、グループ化されたオブジ
ェクトの各グループに割り振られるグループ番号に対応
した優先度テーブル23a〜cを備えており、オブジェ
クト及びソフトウェア部品による処理を優先度テーブル
に基づいて実行して、種々の処理を行う。各オブジェク
トには、通常、システム設計者により優先度が割り振ら
れるが、OS20側で、自動で割り振るようにしてもよ
い。
【0024】モニタ部21は、各オブジェクトの優先度
を、当該オブジェクトが属するグループのグループ番号
に対応する優先度テーブルに記録する。また、各オブジ
ェクト及びソフトウェア部品による処理が、優先度テー
ブル23a〜cに基づく順序で実行されるように制御す
る。モニタ部21は、その時点で使用する優先度テーブ
ル23a〜cを指し示すポインタ22を備える。
【0025】優先度テーブル23a〜cは、グループ番
号のそれぞれに対応しており、自グループに属するオブ
ジェクトやソフトウェア部品の優先度テーブルを保持す
る。なお、本実施形態では優先度テーブルを3つとして
いるが、これは、ソフトウェア部品(グループ)の数に
より決まるものであり、ソフトウェア部品が5つの場合
は、グループ0を加えて優先度テーブルが6つとなり、
ソフトウェア部品が1つの場合は、グループ0を加えて
優先度テーブルが2つとなる。
【0026】以下のようにして、各優先度テーブル23
a〜cにテーブルを保存する。まず、第1オブジェクト
及びソフトウェア部品をグループ0として、グループ番
号「0」を指定する。そして、第1オブジェクト及びソ
フトウェア部品に対して、処理順序を定める優先度を割
り振る。モニタ部21は、第1オブジェクト及びソフト
ウェア部品の優先度のテーブルを優先度テーブル23a
に保存する。次いで、先に情報処理システム10に登録
する第1ソフトウェア部品をグループ1として、グルー
プ番号「1」を指定する。そして、第1ソフトウェア部
品内部のオブジェクトに対して優先度を割り振る。モニ
タ部21は、第1ソフトウェア部品内部のオブジェクト
の優先度のテーブルを優先度テーブル23bに保存す
る。次いで、後に情報処理システム10に登録する第2
ソフトウェア部品をグループ2として、グループ番号
「2」を指定する。そして、第2ソフトウェア部品内部
のオブジェクトに対して優先度を割り振る。モニタ部2
1は、第2ソフトウェア部品内部のオブジェクトの優先
度のテーブルを優先度テーブル23cに保存する。モニ
タ部21は、タスクの制御も行っているため、どのグル
ープ番号のタスクが動作しているかを判別することがで
きる。
【0027】モニタ部21は、デフォルトでグループ0
の優先度テーブル23aに基づいてオブジェクトを実行
させる。優先度テーブル23aでソフトウェア部品(グ
ループ)の実行順序になると、ポインタ22が、該当す
るグループの優先度テーブル23b又は優先度テーブル
23cを指定して、指定した優先度テーブルの優先度順
に従って、ソフトウェア部品内部のオブジェクトを実行
するように切り換える。
【0028】図3を例にすると、モニタ部21は、デフ
ォルトであるグループ0の優先度テーブル23aに従っ
て、タスク1〜3の処理を行う。そして、優先度「4」
のグループ1の処理の順番になると、ポインタ22がグ
ループ1の処理の優先度テーブルである優先度テーブル
23bを指定して、グループ1のタスクA〜Dを優先度
テーブル23bに基づいて実行させる。グループ1の処
理が終了すると、ポインタ22は、再びグループ0の優
先度テーブル23aを指定して、優先度「5」のタスク
5の処理を実行させる。次いで、優先度「6」のグルー
プ2の処理になると、ポインタ22がグループ2の処理
の優先度テーブルである優先度テーブル23cを指定し
て、グループ2のタスクX〜Zを優先度テーブル23c
に基づいて実行させる。グループ2の処理が終了する
と、ポインタ22はグループ0の優先度テーブル23a
を指定して、優先度「7」のタスク7の処理を実行す
る。以上のようにして、すべてのタスクの処理が終了す
る。
【0029】図4を用いて、さらに詳細に説明する。こ
こでは、グループ番号及び優先度を16ビットで表すこ
ととし、1234H(Hは16進数で表すことを示
す。)という数値で表す場合、12Hをグループ番号、
34Hを優先度とする。
【0030】第1オブジェクトのタスク4つ(タスク1
〜タスク4)及びソフトウェア部品2つ(グループ1、
2)をグループ0として、グループ番号「0」を割り振
る。次いで、タスク及びソフトウェア部品に優先度を割
り振る。図4では、以下のようになる。 タスク1 0001H グループ1 0002H タスク2 0003H タスク3 0005H グループ2 0006H タスク4 0007H 各タスク及びグループは、グループ0を表す「00H」
と、優先度を表す「01H」〜「07H」により表され
る。
【0031】次に、第1ソフトウェア部品内のタスクに
優先度を設定する。第1ソフトウェア部品内のタスク
は、第1ソフトウェア部品のパフォーマンスに影響する
タスクA、B、Cと、パフォーマンスに影響しないタス
クK、Lとからなる。第1ソフトウェア部品をグループ
1として、グループ番号「1」を割り振る。次いで、タ
スクに優先度を割り振る。ここで、優先度は、第1ソフ
トウェア部品のパフォーマンスに影響するタスクA、
B、Cについてはグループ1内で独自の優先度を割り振
ることになるが、タスクK、Lについては、第1ソフト
ウェア部品のパフォーマンスに影響を与えないので、グ
ループ0の優先度テーブルに基づいて優先度が割り振ら
れる。図4では、以下のようになる。 タスクA FF03H タスクB FF04H タスクC FF05H タスクK 0004H タスクL 0005H タスクA〜Cは、グループ0以外のグループを表す「F
FH」と、優先度を表す「03H」〜「05H」により
表される。タスクK、Lは、グループ0を表す「00
H」と、優先度を表す「04H」、「05H」により表
される。尚、タスクK、Lは、予めグループ0として優
先度テーブル23aに登録してもよい。つまり、パフォ
ーマンスに関するタスクのみをグループ化して、パフォ
ーマンスに関しないタスクは従来と同様に、グループ0
のタスクと同列で管理するようにしてもよい。
【0032】次に、第2ソフトウェア部品内のタスクに
優先度を設定する。第2ソフトウェア部品内のタスク
は、第2ソフトウェア部品のパフォーマンスに影響する
タスクX、Y、Zからなる。第2ソフトウェア部品をグ
ループ2として、グループ番号「2」を割り振る。次い
で、タスクに優先度を割り振る。図4では、以下のよう
になる。 タスクX FF01H タスクY FF03H タスクZ FF04H タスクX〜Zは、グループ0以外のグループを表す「F
FH」と、優先度を表す「01H」、「03H」、「0
4H」により表される。
【0033】グループ1のタスクAとグループ2のタス
クYとは、同じ「FF03H」により優先度が表される
が、ポインタ22により指定された優先度テーブルにお
いて優先度を指定してタスクの処理を実行するために、
両者を混同することはない。つまり、同じ優先度で表さ
れていても異なる優先度テーブルで両者を管理し、ポイ
ンタ22でいずれかの優先度テーブルを指定して処理を
実行させるために、両者の混同は起こらない。これは、
グループ1のタスクBとグループ2のタスクZについて
も同様である。
【0034】図4に示す優先度テーブルにより実行され
るタスクの処理順序は、以下のようになる。ここでは、
一度処理を行ったタスクは待機状態になるものとする。
まず、グループ0の優先度テーブル23aに従い、優先
度「01H」のタスク1の処理が実行される。ついで、
優先度「02H」のグループ1へ処理が移る。モニタ2
1のポインタ22は、グループ1の優先度テーブルであ
る優先度テーブル23bを指定する。そして、グループ
1の優先度テーブル23bに従い、タスクA、タスク
B、タスクCの処理を、この順序で実行する。グループ
1の優先度テーブル23bによる順序での処理が終了す
ると、ポインタ22は、再び優先度テーブル23aを指
定して、引き続きグループ0の優先度テーブル23aに
基づいた処理を行う。
【0035】グループ1のタスクA、B、Cの優先度
は、それぞれ「03H」、「04H」、「05H」であ
るが、グループ0の優先度とは異なる優先度により優先
度が決められている。そのために、グループ0の優先度
テーブル23aで優先度「02H」のであるグループ1
の優先度「05H」のタスクCが、グループ0の優先度
「03H」のタスク2よりも先に処理が実行されること
となる。つまり、グループ1の優先度がタスク2の優先
度よりも高いために、グループ1内のタスクの処理が終
了するまで、タスク2の処理が実行されることはない。
そのために、グループ1のパフォーマンスは、グループ
1、つまり第1ソフトウェア部品単体のときと同じにな
る。
【0036】グループ0の優先度テーブル23aでは、
グループ1の処理に次いで、優先度「03H」のタスク
2の処理を実行する。タスク2の処理が終了すると、優
先度「04H」の処理を実行する。優先度「04H」は
グループ1のタスクKであるが、タスクKが第1ソフト
ウェア部品のパフォーマンスに影響のないタスクである
ために、グループ0の優先度テーブル23aで、その処
理順序を指定する。つまり、タスクKは、グループ1に
属するが、扱いとしてはグループ0のタスクと同列とい
うことになる。タスクに割り振られるグループ番号によ
り、どのグループの優先度テーブルを用いるか、つま
り、グループ番号が「00H」ならばグループ0の優先
度テーブル23aを用い、グループ番号が「FFH」な
らば自グループの優先度テーブルを用いることで、この
ような処理が可能にになる。
【0037】次いで、グループ0の優先度テーブル23
aの優先度「05H」の処理を実行する。優先度「05
H」には、グループ0のタスク3及びグループ1のタス
クKがあるが、どちらを優先させて処理を実行させるか
は、情報処理システム10全体として、システム設計者
が決めたり、その都度、他のプログラムにより制御する
ようにするとよい。例えば、グループ0のタスク3の処
理を優先的に実行させたり、実行の準備が先に整ったタ
スクの処理を先に実行したり、前後のタスクの処理結果
によって決めたり等である。
【0038】次いで、グループ0の優先度テーブル23
aの優先度「06H」の処理を実行する。ここでは、グ
ループ2の処理を行うので、ポインタ22は、グループ
2の優先度テーブル23cを指定する。グループ2の優
先度テーブル23cに従い、タスクX、タスクY、タス
クZの処理を、この順序で実行する。グループ2の優先
度テーブル23cによる順序での処理が終了すると、ポ
インタ22は、再び優先度テーブル23aを指定して、
引き続きグループ0の優先度テーブル23aに基づいた
処理を行う。
【0039】グループ2のタスクX、Y、Zの優先度
は、それぞれ「01H」、「03H」、「04H」であ
るが、グループ0の優先度とは異なる優先度により優先
度が決められている。そのために、グループ2の優先度
「01H」のタスクXがグループ0の優先度「05H」
のタスク3よりも後に処理が実行される。つまり、グル
ープ2の優先度がタスク3の優先度よりも低いために、
グループ2内のタスクの処理は、タスク3の処理が終了
するまで実行されることはない。そのために、グループ
2のパフォーマンスは、グループ2、つまり第2ソフト
ウェア部品単体のときと同じになる。
【0040】ポインタ22は、グループ2の処理が終了
すると再びグループ0の優先度テーブル23aを指定す
る。グループ0の優先度テーブル23aでは、グループ
2の処理に次いで、優先度「07H」のタスク4の処理
を実行する。これにより、図4に示す優先度テーブル2
3a〜cによるタスクの処理が終了する。
【0041】タスクを、主となるグループ(グループ
0)と従となるソフトウェア部品のグループ(グループ
1、2)とに分け、各グループで優先度テーブルを設定
する。ソフトウェア部品のグループの優先度テーブル
は、他のグループの優先度テーブルから独立しているた
め、ソフトウェア部品内の処理が終了するまで、自グル
ープより優先度の低いタスクやグループに処理が移るこ
とはない。そのために、ソフトウェア部品単体のときと
同じパフォーマンスを保証できるようになる。
【0042】ここで、第1ソフトウェア部品(グループ
1)に機能が追加され、新たなタスクであるタスクDを
追加する場合について、図5を用いて説明する。タスク
Dは、グループ1内の処理で、優先度としてタスクAと
タスクBの間に位置するものとする。この場合、グルー
プ番号「1」をタスクDに割り振る。そして、グループ
番号「1」の優先度テーブル23bを参照してタスクA
とタスクBの間に処理が実行されるように、タスクDに
優先度を割り振る。
【0043】具体的には、モニタ部21でグループ1の
優先度テーブル23bを読み出す。読み出された優先度
テーブル23bに基づいてタスクDの処理の優先度を割
り振る。この場合は、タスクAの優先度を「FF02
H」に変更し、タスクDの優先度を「FF03H」とす
る。
【0044】他のグループにタスクやソフトウェア部品
を追加する場合も同様に行う。これにより、タスクやソ
フトウェア部品が追加される優先度テーブルのみを変更
することにより優先度の再割り振りが可能となり、情報
処理システム内のすべてのタスクについて優先度の再割
り振りを行う必要のあった従来と比較して、容易にタス
クやソフトウェア部品の追加による機能の追加が行える
ようになる。
【0045】グループ優先度の概念を導入することで、
各ソフトウェア部品のパフォーマンスを保証することが
できる。また、ソフトウェア部品にタスクの追加があっ
た場合でも、ソフトウェア部品内で優先度の再割り振り
をするだけで済むために、容易に機能の追加が可能にな
る。
【0046】
【発明の効果】以上のような本発明により、情報処理シ
ステムに組み込んだ場合でも、ソフトウェア部品のパフ
ォーマンスを低下させることなく実行することができ
る。
【図面の簡単な説明】
【図1】グループ優先度による優先度テーブルの例示
図。
【図2】情報処理システムの構成図。
【図3】モニタ部による処理の説明図。
【図4】優先度テーブルの例示図。
【図5】優先度テーブルの例示図。
【図6】従来の優先度テーブルの例示図。
【符号の説明】
10 情報処理システム 20 オペレーティングシステム 21 モニタ部 22 ポインタ 23a、b、c 優先度テーブル 30 アプリケーション

Claims (11)

    【特許請求の範囲】
  1. 【請求項1】 複数のオブジェクトによる処理をオブジ
    ェクト単位で実行することにより所定の機能を実現する
    情報処理システムにおいて、 前記複数のオブジェクトを、処理のパフォーマンスに影
    響する第1オブジェクトのグループと処理のパフォーマ
    ンスに影響しない第2オブジェクトとに分類し、前記グ
    ループによる処理の実行順序と前記第2オブジェクトに
    よる処理の実行順序との優先度を定める主優先度テーブ
    ルを作成するとともに前記第1オブジェクトによる処理
    の実行順序の優先度を定める従優先度テーブルを作成す
    る第1の手段と、 前記作成された主優先度テーブルを用いた前記処理の実
    行中に、前記グループによる処理の実行順序が最優先に
    なったときに、前記従優先度テーブルを用いた前記処理
    に切り換える第2の手段と、を備える、 情報処理システム。
  2. 【請求項2】 前記第1の手段は、 前記グループを、2以上のオブジェクトにより構成され
    て所定の処理を行う1以上のソフトウェア部品毎に形成
    し、前記ソフトウェア部品毎に前記従優先度テーブルを
    作成するようにしてなる、 請求項1記載の情報処理システム。
  3. 【請求項3】 オブジェクトと、2以上のオブジェクト
    により構成されて処理を行う1以上のソフトウェア部品
    と、により所定の処理を行う情報処理システムにおい
    て、 オブジェクトを、前記ソフトウェア部品毎のオブジェク
    トのグループと、いずれのソフトウェア部品にも属さな
    いオブジェクトのグループとにグループ化し、前記いず
    れのソフトウェア部品にも属さないオブジェクトによる
    処理の実行順序と前記ソフトウェア部品による処理の実
    行順序との優先度を定める主優先度テーブルを作成する
    とともに、ソフトウェア部品を構成するオブジェクトに
    よる処理の実行順序の優先度を定める従優先度テーブル
    を前記ソフトウェア部品毎に作成する第1の手段と、 前記作成された主優先度テーブルを用いた前記処理の実
    行中に、ソフトウェア部品による処理の実行順序が最優
    先になったときに、当該ソフトウェア部品について定め
    られた従優先度テーブルを用いた前記処理に切り換える
    第2の手段と、を備える、 情報処理システム。
  4. 【請求項4】 前記ソフトウェア部品は、当該ソフトウ
    ェア部品の処理のパフォーマンスに影響しないオブジェ
    クトを含んでおり、 前記第1の手段は、ソフトウェア部品のパフォーマンス
    に影響しない前記オブジェクトの優先度を、前記主優先
    度テーブルに含むようにしてなる、 請求項3記載の情報処理システム。
  5. 【請求項5】 複数のオブジェクトによる処理を実行す
    ることにより所定の処理を行う装置において実行される
    方法であって、 前記複数のオブジェクトを所定の条件により主グループ
    と1以上の従グループとに分ける第1段階と、 前記主グループに属するオブジェクトによる処理及び前
    記従グループによる処理を行う優先度を定める主優先度
    テーブルを作成する第2段階と、 前記従グループに属するオブジェクトの処理を行う優先
    度を定める従優先度テーブルを、従グループ毎に作成す
    る第3段階と、を含み、 前記作成された主優先度テーブルを用いた処理の実行中
    に、従グループによる処理が最優先になったときは、当
    該従グループについて定められた従優先度テーブルを用
    いた処理に切り換え、当該従優先度テーブルを用いた処
    理の終了時に、前記主優先度テーブルを用いた処理に切
    り換えることを特徴とする、 オブジェクトの優先度管理方法。
  6. 【請求項6】 前記第1段階では、前記複数のオブジェ
    クトを、処理がパフォーマンスに影響しない主グループ
    と処理がパフォーマンスに影響する従グループとに分け
    ることを特徴とする、 請求項5記載のオブジェクトの優先度管理方法。
  7. 【請求項7】 情報処理システム全体のタスク及び2以
    上のタスクにより構成され所定の処理を行う1以上のソ
    フトウェア部品の優先度を定める主優先度テーブルと、
    前記1以上のソフトウェア部品内部のタスクの優先度を
    ソフトウェア部品毎に定める従優先度テーブルと、その
    時点で使用する前記主優先度テーブル又は従優先度テー
    ブルを指定するポインタとを備え、前記ポインタが指定
    する優先度テーブルに基づいて前記タスク又は前記ソフ
    トウェア部品による処理を実行する装置において実行さ
    れる方法であって、 前記ポインタが、 前記主優先度テーブルを指定しているときに、ソフトウ
    ェア部品の処理が最優先になると、当該ソフトウェア部
    品について定められた従優先度テーブルを指定するよう
    にする、 オブジェクトの優先度管理方法。
  8. 【請求項8】 複数のオブジェクトによる処理をオブジ
    ェクト単位で実行することにより所定の機能を実現する
    オペレーティングシステムにおいて、 前記複数のオブジェクトを、処理のパフォーマンスに影
    響する第1オブジェクトのグループと処理のパフォーマ
    ンスに影響しない第2オブジェクトとに分類し、前記グ
    ループによる処理の実行順序と前記第2オブジェクトに
    よる処理の実行順序との優先度を定める主優先度テーブ
    ルを作成するとともに前記第1オブジェクトによる処理
    の実行順序の優先度を定める従優先度テーブルを作成す
    る第1の手段と、 前記作成された主優先度テーブルを用いた前記処理の実
    行中に、前記グループによる処理の実行順序が最優先に
    なったときに、前記従優先度テーブルを用いた前記処理
    に切り換える第2の手段と、を備える、 オペレーティングシステム。
  9. 【請求項9】 オブジェクトと、2以上のオブジェクト
    により構成されて処理を行う1以上のソフトウェア部品
    と、により所定の処理を行うオペレーティングシステム
    において、 オブジェクトを、前記ソフトウェア部品毎のオブジェク
    トのグループと、いずれのソフトウェア部品にも属さな
    いオブジェクトのグループとにグループ化し、前記いず
    れのソフトウェア部品にも属さないオブジェクトによる
    処理の実行順序と前記ソフトウェア部品による処理の実
    行順序との優先度を定める主優先度テーブルを作成する
    とともに、ソフトウェア部品を構成するオブジェクトに
    よる処理の実行順序の優先度を定める従優先度テーブル
    を前記ソフトウェア部品毎に作成する第1の手段と、 前記作成された主優先度テーブルを用いた前記処理の実
    行中に、ソフトウェア部品による処理の実行順序が最優
    先になったときに、当該ソフトウェア部品について定め
    られた従優先度テーブルを用いた前記処理に切り換える
    第2の手段と、を備える、 オペレーティングシステム。
  10. 【請求項10】 複数のオブジェクトによる処理をオブ
    ジェクト単位で実行することにより所定の機能を実現す
    るコンピュータに、 前記複数のオブジェクトを、処理のパフォーマンスに影
    響する第1オブジェクトのグループと処理のパフォーマ
    ンスに影響しない第2オブジェクトとに分類し、前記グ
    ループによる処理の実行順序と前記第2オブジェクトに
    よる処理の実行順序との優先度を定める主優先度テーブ
    ルを作成するとともに前記第1オブジェクトによる処理
    の実行順序の優先度を定める従優先度テーブルを作成す
    る処理、 前記作成された主優先度テーブルを用いた前記処理の実
    行中に、前記グループによる処理の実行順序が最優先に
    なったときに、前記従優先度テーブルを用いた前記処理
    に切り換える処理、 を実行させるためのプログラムが記録された、コンピュ
    ータ読み取り可能な記録媒体。
  11. 【請求項11】 オブジェクトと、2以上のオブジェク
    トにより構成されて処理を行う1以上のソフトウェア部
    品と、により所定の処理を行うコンピュータに、 オブジェクトを、前記ソフトウェア部品毎のオブジェク
    トのグループと、いずれのソフトウェア部品にも属さな
    いオブジェクトのグループとにグループ化し、前記いず
    れのソフトウェア部品にも属さないオブジェクトによる
    処理の実行順序と前記ソフトウェア部品による処理の実
    行順序との優先度を定める主優先度テーブルを作成する
    とともに、ソフトウェア部品を構成するオブジェクトに
    よる処理の実行順序の優先度を定める従優先度テーブル
    を前記ソフトウェア部品毎に作成する処理、 前記作成された主優先度テーブルを用いた前記処理の実
    行中に、ソフトウェア部品による処理の実行順序が最優
    先になったときに、当該ソフトウェア部品について定め
    られた従優先度テーブルを用いた前記処理に切り換える
    処理、 を実行させるためのプログラムが記録された、コンピュ
    ータ読み取り可能な記録媒体。
JP2000362839A 2000-11-29 2000-11-29 情報処理システム、オブジェクトの優先度管理方法、オペレーティングシステム、記録媒体 Expired - Fee Related JP3763452B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000362839A JP3763452B2 (ja) 2000-11-29 2000-11-29 情報処理システム、オブジェクトの優先度管理方法、オペレーティングシステム、記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000362839A JP3763452B2 (ja) 2000-11-29 2000-11-29 情報処理システム、オブジェクトの優先度管理方法、オペレーティングシステム、記録媒体

Publications (2)

Publication Number Publication Date
JP2002163120A true JP2002163120A (ja) 2002-06-07
JP3763452B2 JP3763452B2 (ja) 2006-04-05

Family

ID=18834047

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000362839A Expired - Fee Related JP3763452B2 (ja) 2000-11-29 2000-11-29 情報処理システム、オブジェクトの優先度管理方法、オペレーティングシステム、記録媒体

Country Status (1)

Country Link
JP (1) JP3763452B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7606958B2 (en) 2003-06-20 2009-10-20 Fujitsu Limited Interrupt control method, interrupt control apparatus and interrupt control medium
US8347296B2 (en) 2008-06-02 2013-01-01 Panasonic Corporation Priority control apparatus and priority control method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7606958B2 (en) 2003-06-20 2009-10-20 Fujitsu Limited Interrupt control method, interrupt control apparatus and interrupt control medium
US8347296B2 (en) 2008-06-02 2013-01-01 Panasonic Corporation Priority control apparatus and priority control method

Also Published As

Publication number Publication date
JP3763452B2 (ja) 2006-04-05

Similar Documents

Publication Publication Date Title
US6430594B1 (en) Real-time operating system and a task management system therefor
WO2002065281A1 (en) Method, system and computer program product for efficiently utilizing limited resources in a graphics device
JP2005339236A (ja) データベース管理方法及びデータベースシステム
US20140068625A1 (en) Data processing systems
JPH04219844A (ja) 高速媒体優先解放型排他方式
KR20140037749A (ko) 실행 제어 방법 및 멀티프로세서 시스템
JP3763452B2 (ja) 情報処理システム、オブジェクトの優先度管理方法、オペレーティングシステム、記録媒体
JP2005339299A (ja) ストレージ装置のキャッシュ制御方法
JP2006079463A (ja) 時系列データ記録用バッファ管理方法、装置、システムおよびプログラム
CN116069447A (zh) 一种虚拟机numa拓扑生成方法、装置、设备、介质
JP6774147B2 (ja) 制御装置
JP2010244332A (ja) マルチコアシステムのためのタスク割り当て手段、その方法及びそのプログラム
US5062046A (en) Multiple processor system having a correspondence table for transferring processing control between instruction processors
JPH05108380A (ja) データ処理システム
WO2024070015A1 (ja) 電子制御装置、車両制御システム、及びタスクの制御方法
JP2002041310A (ja) クラス動的バインドシステムおよび方法
JPS62163154A (ja) 仮想論理ボリユ−ム方式
JPH10312331A (ja) データベースの動的アクセス方法
JPH0424828A (ja) マルチタスク管理方式
JPH0644234B2 (ja) タスク管理装置
JP2002163119A (ja) 情報処理システム、オブジェクトの管理方法、オペレーティングシステム、記録媒体
JPS61136134A (ja) 待ち行列資源管理方式
WO2024094297A1 (en) System for loading an entity or an asset on a computer system, corresponding method and computer program
JPH0492930A (ja) 排他制御処理装置
JPH02304615A (ja) 並列ディスク制御バッファの割当て方式

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050615

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050719

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050907

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20060104

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060112

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120127

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120127

Year of fee payment: 6

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120127

Year of fee payment: 6

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120127

Year of fee payment: 6

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130127

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees