JP2005293070A - タスク実行システム - Google Patents

タスク実行システム Download PDF

Info

Publication number
JP2005293070A
JP2005293070A JP2004105365A JP2004105365A JP2005293070A JP 2005293070 A JP2005293070 A JP 2005293070A JP 2004105365 A JP2004105365 A JP 2004105365A JP 2004105365 A JP2004105365 A JP 2004105365A JP 2005293070 A JP2005293070 A JP 2005293070A
Authority
JP
Japan
Prior art keywords
task
processor
registered
main execution
execution
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
JP2004105365A
Other languages
English (en)
Other versions
JP4325466B2 (ja
Inventor
Mutsumi Abe
睦 阿部
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.)
Toyota Motor Corp
Original Assignee
Toyota Motor 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 Toyota Motor Corp filed Critical Toyota Motor Corp
Priority to JP2004105365A priority Critical patent/JP4325466B2/ja
Priority to EP04799765A priority patent/EP1730637A1/en
Priority to US10/583,371 priority patent/US7900205B2/en
Priority to PCT/JP2004/017225 priority patent/WO2005101204A1/en
Priority to CNB2004800425218A priority patent/CN100533389C/zh
Publication of JP2005293070A publication Critical patent/JP2005293070A/ja
Application granted granted Critical
Publication of JP4325466B2 publication Critical patent/JP4325466B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2038Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant with a single idle spare processing component
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2041Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant with more than one idle spare processing component
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Debugging And Monitoring (AREA)
  • Hardware Redundancy (AREA)

Abstract

【課題】 マルチプロセッサのシステムにおいて、あるプロセッサが故障等で停止した場合であっても、そのプロセッサが処理していたタスクの動作を保証し、システム全体としての動作も保証する。
【解決手段】 少なくとも2つのプロセッサを包含するタスク実行システムであって、少なくともタスクと主実行プロセッサと停止時担当プロセッサとの対応関係が登録されるタスク管理テーブルと、前記タスク管理テーブルに登録されたタスクの中から実行可能タスクを選択する手段と、前記選択されたタスクを実行しようとするプロセッサ以外のプロセッサが前記選択されたタスクの主実行プロセッサとして登録されている場合、その主実行プロセッサとして登録されているプロセッサの停止状態をチェックする手段と、前記主実行プロセッサとして登録されているプロセッサが停止している場合、前記選択されたタスクを実行する手段と、を備える。
【選択図】図1

Description

本発明は、少なくとも2つのプロセッサを包含するタスク実行システムに関する。
従来、処理するタスクを変更する機能を有するものが知られている(例えば特許文献1参照)。しかしながら、マルチプロセッサのシステムにおいて、あるプロセッサが故障等で停止した場合、そのプロセッサが処理していたタスクの動作を保証することが不可能となり、システム全体としての動作も保証できなくなるという問題がある。
なお、本発明に関連すると考えられるものとして、複数のタスクが、タスク間通信によって連携を取りながら機能を実現するシステムにおいて、タスクの追加・削除等によって生じるタスク間におけるメッセージの変更等に対して容易に対応できるタスク処理システム(例えば特許文献2参照)がある。
特開平11−203149号公報 特開平6−95896号公報
本発明の課題は、マルチプロセッサのシステムにおいて、あるプロセッサが故障等で停止した場合であっても、そのプロセッサが処理していたタスクの動作を保証し、システム全体としての動作も保証することにある。
本発明は、上記課題を解決するためになされたものであり、少なくとも2つのプロセッサを包含するタスク実行システムであって、少なくともタスクとそのタスクを実行する主実行プロセッサとその主実行プロセッサ停止時にそのタスクを実行する停止時担当プロセッサとの対応関係が登録されるタスク管理テーブルと、前記タスク管理テーブルに登録されたタスクの中から実行可能タスクを選択する手段と、前記選択されたタスクを実行しようとするプロセッサ以外のプロセッサが前記選択されたタスクの主実行プロセッサとして登録されている場合、その主実行プロセッサとして登録されているプロセッサの停止状態をチェックする手段と、前記主実行プロセッサとして登録されているプロセッサが停止している場合、前記選択されたタスクを実行する手段と、を備える構成とした。
本発明によれば、あるプロセッサ(主実行プロセッサ)で必ず実行させたいタスクを他のプロセッサ(停止時担当プロセッサ)に予め割り振っておき、タスクの受付判定を(その割り振られたタスクを含めて)行っておく。そして、あるプロセッサの停止時には、割り振りが設定されているプロセッサでタスクを実行することで、割り振られたタスクの動作の保証が実現でき、システムとしても必要な動作を保証することが可能となり、結果として、システムの部分的な停止時でもシステムの動作保証の可能性を向上させることが可能となる。
また、本発明は次のように特定することもできる。
少なくとも2つのプロセッサを包含するタスク実行システムであって、登録要求されたタスクを主実行プロセッサのタスクとして登録可能か否かを判定する手段と、前記登録要求されたタスクを停止時担当プロセッサのタスクとして登録可能か否かを判定する手段と、前記主実行プロセッサのタスクとして登録可能と判定され、かつ前記停止時担当プロセッサのタスクとして登録可能と判定された場合に、前記登録要求されたタスクと主実行プ
ロセッサと停止時担当プロセッサとの対応関係を登録する手段と、前記登録されたタスクの中から実行可能タスクを選択する手段と、前記選択されたタスクを実行しようとするプロセッサ以外のプロセッサが前記選択されたタスクの主実行プロセッサとして登録されている場合、その主実行プロセッサとして登録されているプロセッサの停止状態をチェックする手段と、前記主実行プロセッサとして登録されているプロセッサが停止している場合、前記選択されたタスクを実行する手段と、を備えるタスク実行システム。
また、本発明は方法の発明として次のように特定できる。
少なくとも2つのプロセッサを包含するタスク実行システムにおけるタスク実行方法であって、少なくともタスクとそのタスクを実行する主実行プロセッサとその主実行プロセッサ停止時にそのタスクを実行する停止時担当プロセッサとの対応関係が登録されるタスク管理テーブルに登録されたタスクの中から実行可能タスクを選択し、前記選択されたタスクを実行しようとするプロセッサ以外のプロセッサが前記選択されたタスクの主実行プロセッサとして登録されている場合、その主実行プロセッサとして登録されているプロセッサの停止状態をチェックし、前記主実行プロセッサとして登録されているプロセッサが停止している場合、前記選択されたタスクを実行する、タスク実行方法。
また、本発明はプログラムの発明として次のように特定できる。
少なくとも2つのプロセッサを包含する情報処理装置を、少なくともタスクとそのタスクを実行する主実行プロセッサとその主実行プロセッサ停止時にそのタスクを実行する停止時担当プロセッサとの対応関係が登録されるタスク管理テーブル、前記タスク管理テーブルに登録されたタスクの中から実行可能タスクを選択する手段、前記選択されたタスクを実行しようとするプロセッサ以外のプロセッサが前記選択されたタスクの主実行プロセッサとして登録されている場合、その主実行プロセッサとして登録されているプロセッサの停止状態をチェックする手段、前記主実行プロセッサとして登録されているプロセッサが停止している場合、前記選択されたタスクを実行する手段、として機能させるためのプログラム。
また、本発明は上記プログラムを記録した情報処理装置(コンピュータ)読み取り可能な記録媒体として特定することもできる。
本発明によれば、あるプロセッサ(主実行プロセッサ)で必ず実行させたいタスクを他のプロセッサ(停止時担当プロセッサ)に割り振っておき、そのプロセッサの停止時に予め割り振られたプロセッサでタスクを実行することで、システムの部分的な停止時(主実行プロセッサ停止時)でもシステムの動作保証の可能性を向上させることが可能となる。
以下、本発明の一実施形態であるタスク管理システムについて図面を参照しながら説明する。
(本システムの概略構成)
図1は、タスク実行システムの概略構成を説明するための図である。
(システム環境)
本実施形態のタスク実行システムは、PDA(Personal Digital Assistants)やパーソナルコンピュータ等の一般的な情報処理装置100により実現される。
図1に示すように、情報処理装置100は、2つのプロセッサ110、120(以下説明の便宜上一方を主実行プロセッサ110、他方を停止時担当プロセッサ120という)、ハードディスク装置等の記憶装置130、及びメモリ140等を備えている。また、情報処理装置100は、各種情報や命令を入力するための入力装置(例えばキーセット)、その処理結果等を表示するための画像表示装置(例えば液晶ディスプレイ)、及び音声出力
装置(例えばスピーカ)等も備えていることがある(いずれも図示せず)。なお、説明の都合上2つのプロセッサ110、120を例示してあるが、本発明はこれに限定さない。例えば3つ又はそれ以上のプロセッサであっても同様に適用可能である。
(タスクとオペレーティングシステム)
タスク141とは、プロセス、スレッドと一般的に呼ばれるプログラム実行単位の総称である。タスク141は、タスク登録時に生成されることもあるし、本出願人が先に出願したように予め生成(プール)されていることもある。タスク141は、例えば、その所要リソース量を制御可能な可変タスクであるQoSタスクである。
オペレーティングシステム(OS)142は、例えば、各タスク141をDM(Deadline Monotonic)法によりスケジューリングする機能(スケジューラ)を有するリアルタイムOSである。各スケジューリングタイミングにおいて、実行可能なタスク141(本発明の実行対象タスクに相当)の中から、最も短いデッドライン時間を持つタスク141がアクティブタスクとされる。各タスク141はタスク管理テーブル143により管理される。
図1最下段はタスク管理テーブル143の例示である。タスク管理テーブル143は、各タスク141に関する情報を管理するためのテーブルであり、タスク141に関する情報として、タスクID143a、主実行プロセッサID143b、停止時担当プロセッサID143c、及びタスク実行用パラメータ143d等が登録される。
タスクID143aは、各タスク141を識別するためのものである。主実行プロセッサID143b及び停止時担当プロセッサID143cは各プロセッサを識別するためのものである。タスク実行用パラメータ143dとしては、起動タイミング、実行割当時間、及びデッドライン時間等がある。起動タイミングは、各タスク141の実行開始時点から次の実行開始時点までの時間(周期)である。あるタスク141が実行されると、その周期の間、このタスク141が新たに実行されることはない。実行割当時間は、各タスク141に割り当てられるリソース量(例えば、各プロセッサの使用時間)である。なお、一度リソースが割り当てられたタスク141が割当時間分だけ連続してリソースを割り当てられるとは限らない。何度かに分けて、時間を割り当てられることがある。また、あるタスク141よりも優先順位の高い別のタスク141によりプリエンプションされるとそのタスク141の処理が中断される。
ある時間内に割当時間が経過すればシステムに影響を与えない。この時間がデッドライン時間である。本実施形態では、デッドライン時間が短いタスク141の方が長いタスク141に比べて優先度が高く、デッドライン時間が短いタスク141(すなわち優先度が高いタスク)がアクティブタスクとされる。
上述のスケジュール機能や以下に説明するその他の諸機能等は、これら機能を提供するAPI(Application Program Interface)等の所定プログラムが上述の情報処理装置100に読み込まれ、オペレーティングシステム142に組み込まれることにより実現される。なお、これらオペレーティングシステム142や所定プログラム等は、記憶装置120等にインストールされており、必要に応じて適宜メモリ140に読み出されて実行される(図1参照)。
(タスク登録時動作)
次に、上記構成のタスク管理システムの動作について図面を参照しながら説明する。まずは、タスク登録時の処理について説明する。図2は、タスク登録時の処理について説明するためのフローチャートである。
以下の処理は、情報処理装置100にオペレーティングシステム142等が読み込まれ
て実行されることにより実現される。
オペレーティングシステム142や所定アプリケーション等からタスク登録要求があると(S100)、その登録要求のあったタスク141(以下、登録対象タスクともいう。)を主実行プロセッサ110(例えばS100の登録要求が主実行プロセッサIDを含む場合、その主実行プロセッサID)のタスクとして登録可能か否かが判定される(S101)。これは、例えば、その登録対象タスク141を主実行プロセッサ110のタスクとして登録した場合に、その登録対象タスク141を含めてQoSを保って実行できるか否かの判断であり、所定条件を満たすか否かが判定される。
その結果、その登録対象タスク141を主実行プロセッサ110のタスクとして登録可能と判定されなかった場合(S101:No)、その登録対象タスク141は登録されず、登録不許可通知がなされる(S102)。
一方、主実行プロセッサ110のタスクとして登録可能と判定された場合(S101:Yes)、さらにタスク登録要求(S100)は主実行プロセッサのみか否かが判定される(S103)。これは、例えば、タスク登録要求(S100)が主実行プロセッサIDのみを含むか否か(すなわち停止時担当プロセッサIDも含むか否か)で判定することが考えられる。
その結果、主実行プロセッサIDのみを含むと判定されなかった場合(例えば、停止時担当プロセッサIDも含むと判定された場合)(S103:No)、さらにその登録対象タスク141を停止時担当プロセッサのタスクとして登録可能か否かが判定される(S104)。これは、例えば、その登録対象タスク141を停止時担当プロセッサ120(例えばS100の登録要求が停止時担当プロセッサIDを含む場合、その停止時担当プロセッサID)のタスクとして登録した場合に、その登録対象タスク141を含めてQoSを保って実行できるか否かの判断であり、所定条件を満たすか否かが判定される。
その結果、停止時担当プロセッサ120のタスクとして登録可能と判定されなかった場合(S104:No)、その登録対象タスク141は登録されず、登録不許可通知がなされる(S102)。
一方、停止時担当プロセッサ120のタスクとして登録可能と判定された場合(S104:Yes)、その登録対象タスク141は、主実行プロセッサ110と停止時担当プロセッサ120のタスク管理テーブルへ登録される(S105)。すなわち、各タスク管理テーブル143には、その登録対象タスク141のタスクID143a、主プロセッサID143b、停止時担当プロセッサID143c、及びタスク実行用パラメータ143dが登録される。
一方、S103の判定の結果、登録要求は主実行プロセッサのみと判定された場合(例えば、停止時担当プロセッサIDを含まないと判定された場合)(S103:Yes)、その登録対象タスク141は、主実行プロセッサのタスク管理テーブル143へ登録される(S106)。すなわち、主実行プロセッサのタスク管理テーブル143には、その登録要求のあったタスク141のタスクID143a、主プロセッサID143b、及びタスク実行用パラメータ143dが登録される。
以上説明したように、タスクの登録を行う際に、主にタスクを実行するプロセッサID(主実行プロセッサID)と主にタスクを実行するプロセッサが停止した時に実行を行うプロセッサID(停止時担当プロセッサID)を与える。そして、タスクの登録要求(S100)があった場合にまず受付判定をするシステムで受付処理を行い(S101、S103、S104)、実行可能であれば要求のあったタスクを登録する(S105、S10
6)。
(タスク切替時動作)
次に、タスク切替時の処理について説明する。図3は、タスク切替時の処理について説明するためのフローチャートである。
以下の処理も、情報処理装置100にオペレーティングシステム142(スケジューラなど)等が読み込まれて実行されることにより実現される。
スケジューラが実行されると(S200)、自プロセッサの登録タスクの中から実行可能タスクが選択される(S201)。例えば、タスクスケジューリングによる切替タイミングが到来すると、自プロセッサのタスク管理テーブル143に登録されたタスク141の中から、より短いデッドライン時間のタスクが選択される。なお、実行可能なタスクがなければ(S202:No)、タスク切替の処理を行わず、タスク切替処理を終了する。
一方、実行可能なタスク有りの場合(S202:Yes)、自プロセッサがS201で選択されたタスク(以下選択タスクともいう)の主実行プロセッサとして設定されているか否かが判定される(S203)。この判定のために、自プロセッサのタスク管理テーブル143が参照される。タスク管理テーブル143にはタスクID143aと主担当プロセッサID143bとの対応関係が登録されている(図1参照)。従って、このタスク管理テーブル143が参照されることで、自プロセッサが選択タスクの主実行プロセッサとして設定されているか否かを判定可能となっている。
その結果、自プロセッサが選択タスクの主実行プロセッサとして設定されていると判定された場合(S203:Yes)、選択タスクが実行タスクとして設定される(S204)。すなわち、選択タスクが実行される。
一方、自プロセッサが選択タスクの主実行プロセッサとして設定されていると判定されない場合(例えば自プロセッサ以外のプロセッサが主実行プロセッサとして設定されている場合)(S203:No)、さらに選択タスクの主実行プロセッサとして設定されているプロセッサは停止しているか否か(すなわち、主実行プロセッサとして設定されているプロセッサの停止状態をチェックする)、及び自プロセッサが選択タスクの停止時担当プロセッサとして設定されているか否かが判定される(S205)。この後者の判定のために、自プロセッサのタスク管理テーブル143が参照される。タスク管理テーブル143にはタスクID143aと停止時担当プロセッサID143cとの対応関係が登録されている(図1参照)。従って、このタスク管理テーブル143が参照されることで、自プロセッサが選択タスクの停止時担当プロセッサとして設定されているか否かを判定可能となっている。なお、前者の判定方法としては、選択タスクの主実行プロセッサとして設定されているプロセッサに直接動作状態を問い合わせることで停止状態をチェックすることが考えられる。
その結果、選択タスクの主実行プロセッサとして設定されているプロセッサは停止(故障等により動作不能に陥っている場合等)していると判定され、かつ、自プロセッサが選択タスクの停止時担当プロセッサとして設定されている場合(S205:Yes)、選択タスクが実行タスクとして設定される(S204)。すなわち、選択タスクが実行される。
一方、S205の判定の結果、主実行プロセッサとして設定されているプロセッサは停止していると判定されなかった場合、又は自プロセッサが停止時担当プロセッサとして設定されていない場合(S205:No)、S201へ戻り、再度S201以下の処理が実行される。
以上説明したように、各プロセッサ110、120でタスクを実行する場合、登録されているタスクの管理情報に従って実行するが、その際、プロセッサIDを読みとり、自プロセッサ以外が主なプロセッサとして設定されている場合(S203:No)は、そのプロセッサの停止状況をチェックし(S205)、停止していれば(S205:Yes)、そのタスクを実行する(S204)。
このように、各タスクの動作タイミング時にプロセッサの停止状況もチェックする(S205)ので、タスクの実行の肩代わりが速やかに行われることになる。また、主実行プロセッサ110で必ず実行させたいタスクを停止時担当プロセッサ120に割り振っておくことで、そのプロセッサ110の停止時に予め割り振られたプロセッサ120でタスクを実行することが可能となる。従って、システムの部分的な停止時でもシステムの動作保証の可能性を向上させることが可能となる。
本発明は、その精神または主要な特徴から逸脱することなく、他の様々な形で実施することができる。このため、上記の実施形態はあらゆる点で単なる例示にすぎない。これらの記載によって本発明が限定的に解釈されるものではない。
本発明によれば、あるプロセッサ(主実行プロセッサ)で必ず実行させたいタスクを他のプロセッサ(停止時担当プロセッサ)に割り振っておき、そのプロセッサの停止時に予め割り振られたプロセッサでタスクを実行することで、システムの部分的な停止時(主実行プロセッサ停止時)でもシステムの動作保証の可能性を向上させることが可能となる。
本発明の実施形態であるタスク実行システムの概略構成である。 本発明の実施形態であるタスク実行システムの動作を説明するためのフローチャートである。 本発明の実施形態であるタスク実行システムの動作を説明するためのフローチャートである。
符号の説明
100 情報処理装置
110 プロセッサ(主実行プロセッサ)
120 プロセッサ(停止時担当プロセッサ)
130 記憶装置
140 メモリ
141 タスク
142 オペレーティングシステム
143 タスク管理テーブル
143a タスクID
143b 主実行プロセッサID
143c 停止時担当プロセッサID
143d タスク実行用パラメータ

Claims (4)

  1. 少なくとも2つのプロセッサを包含するタスク実行システムであって、
    少なくともタスクとそのタスクを実行する主実行プロセッサとその主実行プロセッサ停止時にそのタスクを実行する停止時担当プロセッサとの対応関係が登録されるタスク管理テーブルと、
    前記タスク管理テーブルに登録されたタスクの中から実行可能タスクを選択する手段と、
    前記選択されたタスクを実行しようとするプロセッサ以外のプロセッサが前記選択されたタスクの主実行プロセッサとして登録されている場合、その主実行プロセッサとして登録されているプロセッサの停止状態をチェックする手段と、
    前記主実行プロセッサとして登録されているプロセッサが停止している場合、前記選択されたタスクを実行する手段と、
    を備えるタスク実行システム。
  2. 少なくとも2つのプロセッサを包含するタスク実行システムであって、
    登録要求されたタスクを主実行プロセッサのタスクとして登録可能か否かを判定する手段と、
    前記登録要求されたタスクを停止時担当プロセッサのタスクとして登録可能か否かを判定する手段と、
    前記主実行プロセッサのタスクとして登録可能と判定され、かつ前記停止時担当プロセッサのタスクとして登録可能と判定された場合に、前記登録要求されたタスクと主実行プロセッサと停止時担当プロセッサとの対応関係を登録する手段と、
    前記登録されたタスクの中から実行可能タスクを選択する手段と、
    前記選択されたタスクを実行しようとするプロセッサ以外のプロセッサが前記選択されたタスクの主実行プロセッサとして登録されている場合、その主実行プロセッサとして登録されているプロセッサの停止状態をチェックする手段と、
    前記主実行プロセッサとして登録されているプロセッサが停止している場合、前記選択されたタスクを実行する手段と、
    を備えるタスク実行システム。
  3. 少なくとも2つのプロセッサを包含するタスク実行システムにおけるタスク実行方法であって、
    少なくともタスクとそのタスクを実行する主実行プロセッサとその主実行プロセッサ停止時にそのタスクを実行する停止時担当プロセッサとの対応関係が登録されるタスク管理テーブルに登録されたタスクの中から実行可能タスクを選択し、
    前記選択されたタスクを実行しようとするプロセッサ以外のプロセッサが前記選択されたタスクの主実行プロセッサとして登録されている場合、その主実行プロセッサとして登録されているプロセッサの停止状態をチェックし、
    前記主実行プロセッサとして登録されているプロセッサが停止している場合、前記選択されたタスクを実行する、タスク実行方法。
  4. 少なくとも2つのプロセッサを包含する情報処理装置を、
    少なくともタスクとそのタスクを実行する主実行プロセッサとその主実行プロセッサ停止時にそのタスクを実行する停止時担当プロセッサとの対応関係が登録されるタスク管理テーブル、
    前記タスク管理テーブルに登録されたタスクの中から実行可能タスクを選択する手段、
    前記選択されたタスクを実行しようとするプロセッサ以外のプロセッサが前記選択されたタスクの主実行プロセッサとして登録されている場合、その主実行プロセッサとして登録されているプロセッサの停止状態をチェックする手段、
    前記主実行プロセッサとして登録されているプロセッサが停止している場合、前記選択されたタスクを実行する手段、
    として機能させるためのプログラム。
JP2004105365A 2004-03-31 2004-03-31 タスク実行システム Expired - Fee Related JP4325466B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2004105365A JP4325466B2 (ja) 2004-03-31 2004-03-31 タスク実行システム
EP04799765A EP1730637A1 (en) 2004-03-31 2004-11-12 Task management table with task id and two assigned processors
US10/583,371 US7900205B2 (en) 2004-03-31 2004-11-12 System and method for executing selected task based on task management table having at least one task and at least two associated processors
PCT/JP2004/017225 WO2005101204A1 (en) 2004-03-31 2004-11-12 Task management table with task id and two assigned processors
CNB2004800425218A CN100533389C (zh) 2004-03-31 2004-11-12 任务执行系统和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004105365A JP4325466B2 (ja) 2004-03-31 2004-03-31 タスク実行システム

Publications (2)

Publication Number Publication Date
JP2005293070A true JP2005293070A (ja) 2005-10-20
JP4325466B2 JP4325466B2 (ja) 2009-09-02

Family

ID=34959224

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004105365A Expired - Fee Related JP4325466B2 (ja) 2004-03-31 2004-03-31 タスク実行システム

Country Status (5)

Country Link
US (1) US7900205B2 (ja)
EP (1) EP1730637A1 (ja)
JP (1) JP4325466B2 (ja)
CN (1) CN100533389C (ja)
WO (1) WO2005101204A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011248737A (ja) * 2010-05-28 2011-12-08 Fujitsu Ltd タスク引継プログラム、処理装置及びコンピュータ・システム
CN111026515A (zh) * 2018-10-10 2020-04-17 上海寒武纪信息科技有限公司 状态监控装置、任务调度器及状态监控方法

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9811345B2 (en) * 2015-04-16 2017-11-07 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Utilizing computing resources under a disabled processor node without fully enabling the disabled processor node
CN110569115B (zh) * 2019-08-15 2023-08-04 贝壳技术有限公司 多点部署的进程管理方法及进程的争夺方法
US11281502B2 (en) 2020-02-22 2022-03-22 International Business Machines Corporation Dispatching tasks on processors based on memory access efficiency

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4318173A (en) * 1980-02-05 1982-03-02 The Bendix Corporation Scheduler for a multiple computer system
US4872106A (en) * 1983-04-06 1989-10-03 New Forney Corp. Industrial process control system with back-up data processors to take over from failed primary data processors
US4807228A (en) * 1987-03-18 1989-02-21 American Telephone And Telegraph Company, At&T Bell Laboratories Method of spare capacity use for fault detection in a multiprocessor system
JPH0695896A (ja) 1992-09-11 1994-04-08 Hitachi Ltd タスク処理システムおよびタスク間通信制御方法
US5513354A (en) 1992-12-18 1996-04-30 International Business Machines Corporation Fault tolerant load management system and method
US5919266A (en) * 1993-04-02 1999-07-06 Centigram Communications Corporation Apparatus and method for fault tolerant operation of a multiprocessor data processing system
JPH0738510A (ja) 1993-07-09 1995-02-07 Matsushita Electric Ind Co Ltd Atrac用リアルタイム・タスクのスケジュール方法
CA2131406C (en) 1993-09-21 2002-11-12 David D'souza Preemptive multi-tasking with cooperative groups of tasks
US5437032A (en) * 1993-11-04 1995-07-25 International Business Machines Corporation Task scheduler for a miltiprocessor system
JPH07262025A (ja) 1994-03-18 1995-10-13 Fujitsu Ltd 実行制御システム
JP3244982B2 (ja) 1995-01-30 2002-01-07 株式会社日立製作所 分散制御システム
JP3898789B2 (ja) 1996-12-05 2007-03-28 富士通株式会社 周期プロセス負荷制御システムおよび周期プロセス負荷制御方法
JPH10240548A (ja) 1997-03-03 1998-09-11 Toshiba Corp タスクスケジューリング装置及び方法
US6385638B1 (en) 1997-09-04 2002-05-07 Equator Technologies, Inc. Processor resource distributor and method
JPH11203149A (ja) 1998-01-13 1999-07-30 Matsushita Electric Ind Co Ltd タスクスケジュール装置およびその方法
US6658595B1 (en) * 1999-10-19 2003-12-02 Cisco Technology, Inc. Method and system for asymmetrically maintaining system operability
AU2003213406A1 (en) 2002-03-22 2003-10-08 Toyota Jidosha Kabushiki Kaisha Task management device and method, operation judgment device and method, and program to be judged
US20040064829A1 (en) * 2002-09-30 2004-04-01 Kim Pallister Method for identifying processor affinity and improving software execution
US20040181707A1 (en) * 2003-03-11 2004-09-16 Hitachi, Ltd. Method and apparatus for seamless management for disaster recovery

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011248737A (ja) * 2010-05-28 2011-12-08 Fujitsu Ltd タスク引継プログラム、処理装置及びコンピュータ・システム
CN111026515A (zh) * 2018-10-10 2020-04-17 上海寒武纪信息科技有限公司 状态监控装置、任务调度器及状态监控方法
CN111026515B (zh) * 2018-10-10 2023-07-14 上海寒武纪信息科技有限公司 状态监控装置、任务调度器及状态监控方法

Also Published As

Publication number Publication date
US7900205B2 (en) 2011-03-01
JP4325466B2 (ja) 2009-09-02
EP1730637A1 (en) 2006-12-13
WO2005101204A1 (en) 2005-10-27
CN100533389C (zh) 2009-08-26
US20070186213A1 (en) 2007-08-09
CN1926516A (zh) 2007-03-07

Similar Documents

Publication Publication Date Title
US9361136B2 (en) Decoupling background work and foreground work
US20170207977A1 (en) Systems and methods for resource sharing between two resource allocation systems
KR100898315B1 (ko) 인핸스드 런타임 호스팅
TWI584141B (zh) 更新硬體庫以供具有fpga共處理器的電腦系統上的應用程式使用
US9063775B2 (en) Event aggregation for background work execution
US20130346985A1 (en) Managing use of a field programmable gate array by multiple processes in an operating system
CN101310257A (zh) 多处理器系统和用于使计算机执行多处理器系统的控制方法的程序
JP5093259B2 (ja) Biosとbmcとの間の通信パス強化方法、その装置及びそのプログラム
US20130191832A1 (en) Management of threads within a computing environment
JP2013232207A (ja) コンピュータマイクロジョブを中断せずに実行するようスケジュールするための方法、システムおよび装置
KR20070083460A (ko) 다중 커널을 동시에 실행하는 방법 및 시스템
CN105051691A (zh) 调度
JP2008108075A (ja) タスク切替え制御方法及びコンピュータシステム
JP4325466B2 (ja) タスク実行システム
JP2008204243A (ja) ジョブ実行制御方法およびシステム
JP2005149312A (ja) タスク管理システム
JP2005071161A (ja) タスク管理プログラムおよびタスク制御装置
JP2008225641A (ja) コンピュータシステム、割り込み制御方法及びプログラム
JP5678347B2 (ja) Itシステムの構成方法、そのコンピュータプログラムおよびitシステム
JPWO2018211865A1 (ja) 車両制御装置
Richardson et al. RT-OSGi: Integrating the OSGi framework with the real-time specification for java
JP2018536945A (ja) タスクをタイムベーススケジューリングする方法及び装置
US20110023036A1 (en) Switching process types in a process engine
JP2019045907A (ja) アクセス制御装置
US20230236906A1 (en) Information processing device, information processing method, and program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060915

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090217

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090415

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: 20090519

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090601

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

Free format text: PAYMENT UNTIL: 20120619

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120619

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120619

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130619

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees