JP3600095B2 - 割り込み管理装置及び割り込み管理方法 - Google Patents

割り込み管理装置及び割り込み管理方法 Download PDF

Info

Publication number
JP3600095B2
JP3600095B2 JP34729499A JP34729499A JP3600095B2 JP 3600095 B2 JP3600095 B2 JP 3600095B2 JP 34729499 A JP34729499 A JP 34729499A JP 34729499 A JP34729499 A JP 34729499A JP 3600095 B2 JP3600095 B2 JP 3600095B2
Authority
JP
Japan
Prior art keywords
interrupt
task
processing
initialization
management
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
JP34729499A
Other languages
English (en)
Other versions
JP2001166950A (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.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial Co 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
Priority to JP34729499A priority Critical patent/JP3600095B2/ja
Application filed by Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to PCT/JP2000/008661 priority patent/WO2001042918A1/ja
Priority to CNB008038368A priority patent/CN1162777C/zh
Priority to EP00979973A priority patent/EP1189137A4/en
Priority to AU17333/01A priority patent/AU1733301A/en
Priority to KR10-2001-7009918A priority patent/KR100408351B1/ko
Priority to US09/890,940 priority patent/US6820155B1/en
Publication of JP2001166950A publication Critical patent/JP2001166950A/ja
Application granted granted Critical
Publication of JP3600095B2 publication Critical patent/JP3600095B2/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
    • 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/4812Task transfer initiation or dispatching by interrupt, e.g. masked
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/24Handling requests for interconnection or transfer for access to input/output bus using interrupt
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、コンピュータ処理のリアルタイム・オペレーションシステム(リアルタイムOS)ならびにマルチタスク・オペレーションシステム(マルチタスクOS)と信号処理用プロセッサ(DSP)における割り込み管理を行うものであり、W−CDMA(Wide band−Code Division Multiple Access)方式を用いた移動体通信システムにおける携帯テレビ電話装置等の画像端末装置などに用いる好適な割り込み管理装置及び割り込み管理方法に関する。
【0002】
【従来の技術】
従来、マイクロプロセッサ・システムにおいては、マイクロプロセッサ(以下CPUと記す)がプログラムの処理を実行中に、外部デバイスまたは外部装置からの割り込み要求または実行中の応用プログラムからのソフトウェア割り込み要求(以下、割り込み要求と総称する)という種々の要因によって発生する非同期の割り込み要求が発生した時には、実行中のプログラム処理を中断して割り込み要求を処理する。
【0003】
一方、DSPにおいては、上記のCPUに対するものとして内部にメインプロセッサ(以下MPと記す)を有しており、このMPがプログラムの処理を実行中に割り込み要求が発生した時には、実行中のプログラム処理を中断して割り込み要求を処理する。以下、プログラムの最小単位をタスクと記す。
【0004】
割り込み要求に対して処理する内容は割り込み要因ごとに異なるので、ユーザが割り込み要因ごとに割り込み処理ルーチン(以下、割り込み処理タスクと記す)を作成しておき、割り込み要求があった時には、割り込みの発生を伝える制御手段(以下、割り込みコントローラと呼ぶ)がCPUもしくはMPに伝え、CPUもしくはMPが割り込み要因を識別し、該当する割り込み処理タスクを呼び出して処理する方法が用いられている。
【0005】
割り込み要求の発生によりCPUもしくはMPが実行中のタスク処理を中断する際には、再開するタスクのアドレスやそれまで使用していたCPUもしくはMPの内部レジスタの内容(以下、処理中演算リソースと記す)を保存してから割り込み処理タスクを実行し、割り込み処理タスクが終了した時にこれらのレジスタを元の状態に戻して実行中であったタスク処理を再開する。
【0006】
そして、前記割り込み処理タスクの中で処理中演算リソースの退避・復帰処理を記述することは割り込み処理タスクの作成を煩雑にするため、CPUを有するマイクロプロセッサ・システムにおいては、これらの処理はリアルタイムOSならびにマルチタスクOS(以下、OSと総称する)の割り込み管理機構を呼び出すこと(以下、システムコールと記す)によって行なうのが普通である。
【0007】
また、MPを有するDSPにおいては、割り込み処理タスクと分離した1つの別タスクのソフトウェア(通常DSPではマイクロコード、ファームウェアと呼ばれるもの)としてのモニタ・プログラムとして構築するのが普通である。
【0008】
以下、前記割り込み管理機構と前記モニタ・プログラムを割り込みハンドラと総称して記す。
【0009】
さらに、割り込み処理としては、単独割り込み(割り込み処理を行なっている間は、他の割り込みの受け付けを禁止する割り込み)では、割り込みが発生した時に、割り込みハンドラで処理中演算リソースをそのタスクのスタック領域とタスク制御手段へ退避し、同時に割り込みマスクをマスクして他の割り込みを禁止状態にし、割り込み処理を行なう。そして、割り込み処理が完了し、中断したタスクの実行再開の時にタスクのスタック情報、タスクの制御手段、割り込みマスクを回復させる。
【0010】
また、多重割り込み(割り込み処理を行なっている間にも、他の割り込みの受け付けを可能とする割り込み)を有する割り込みハンドラにおいては、単独割り込みに対して、割り込みマスクを禁止する際に、すべての割り込みを禁止せず、上位の割り込みレベルに対する割り込みマスクは設定せずに、割り込み処理を行なう。すなわち、多重割り込みを有する割り込みハンドラにおいては、割り込み種別毎に割り込みが発生した場合に、どの割り込みを禁止するかを判定する必要がある。
【0011】
【発明が解決しようとする課題】
しかしながら、従来の装置においては、割り込みタスク内で他の割り込みを受け付けられるようにする場合や、以後ある割り込みを禁止する場合などは、割り込みハンドラの処理を変更することが必要になり、割り込みハンドラと割り込み処理タスクが密接に関連しており、割り込みハンドラや割り込み処理タスクによる割り込み処理内容の変更が単独に行なえないという問題がある。
【0012】
また、OSを用いた割り込み管理方法では、すべての割り込み要因に対してOS内にある割り込みハンドラが一括して割り込みの禁止/許可の処理を行なっており、ユーザはOS内の割り込みハンドラの割り込み管理状態を意識して割り込み処理タスクを作成しなければならないという問題がある。
【0013】
また、OS内の割り込みハンドラの割り込み管理状態に依存しない割り込み処理が構築できないという問題がある。
【0014】
また、特開平5−224951号公報には、割り込み要求を受けたCPUより起動されたときにソフトウェア割り込みを指定して割り込みハンドラへの処理移行前にOSに処理を移行させる二重割込指定手段と、二重割込指定手段を介して処理を移行されたとき、OS内で割り込み要因の解析とレジスタ類の保存を行って割り込みハンドラを起動する割込ハンドラ起動手段と、割込ハンドラより割り込み処理の終了を通知されたときにOS内でレジスタ類の復帰を行い中断した処理を再開させる割込ハンドラ終了処理手段を備える管理方式が開示されいる。
【0015】
しかしながらこの技術の場合、OS内でのレジスタ類の退避・復帰処理と割り込みハンドラでの処理を二重割込指定手段を設けることにより分離し、割り込みハンドラの作成効率の向上が図れるようになっているが、割り込みハンドラと割り込み処理タスクを分離する手段については何ら開示されておらず、依然として割り込みハンドラや割り込み処理タスクによる割り込み処理内容の変更が単独に行なえないという問題がある。
【0016】
また、特開平8−297581号公報には、個別にマスク可能な複数の割り込み入力を有し、マスクされていない割り込み入力への入力に応じてCPUに割り込みを伝える割り込みコントローラを設け、割り込みコントローラ中の割り込みマスクテーブルを操作する特定割り込み操作処理手段をOS内に設けると共に、OSで管理したい割り込みに関する情報のみを被管理割り込み格納手段に格納し、OSのシステムコール処理中の排他制御を行う区間では、被管理割り込み格納手段に情報が格納されている割り込みのみを割込み禁止とし、システムコールを発行しないような割り込みについては割り込み許可状態を継続するという技術が開示されている。
【0017】
しかしながらこの技術の場合、OSによる資源管理に影響を及ぼさない割り込みタスクについてはOSによる影響を受けることがなくなり、その割り込み処理タスクの処理をOSと切り離して構築することが可能ではあるが、OSによる資源管理に関係する割り込み処理タスクについてはOSの処理と密接に関連しており、依然としてOS内の割り込みハンドラの割り込み管理状態を意識して割り込み処理タスクを作成しなければならないという問題がある。
【0018】
本発明はかかる点に鑑みてなされたものであり、割り込みタスク内で他の割り込みを受け付けられるようにする場合や、以後ある割り込みを禁止する場合などの、割り込みハンドラの処理を変更することが必要な際に、割り込みハンドラや割り込み処理タスクによる割り込み処理内容の変更が容易に行え、さらに、OSを用いた割り込み管理方法で、すべての割り込み要因に対してOS内にある割り込みハンドラが一括して割り込みの禁止/許可の処理を行なっている場合においても、ユーザがOS内の割り込みハンドラの割り込み管理状態を意識せず割り込み処理タスクを作成でき、また、OS内の割り込みハンドラの割り込み管理状態に依存しない割り込み処理を構築することができる割り込み管理装置及び割り込み管理方法を提供することを目的とする。
【0019】
【課題を解決するための手段】
本発明の割り込み管理装置は、割り込みマスクで割り込みハンドラへの割り込み通知を制御する割り込みコントローラと、前記割り込みの発生時に実行中のタスクの情報を退避する退避処理手段と、前記割り込みの要因に応じて処理すべき割り込み処理タスクを決定する割り込み要因判定処理手段と、前記割り込みハンドラとは独立に、割り込み要因毎に用意された割り込み受付可能状態を保持する割り込み受付可能管理手段と、割り込み処理タスクに割り込み許可を制御する割り込みマスク解除制御手段と、前記割り込み受付可能管理手段及び前記割り込みマスク解除制御手段の処理に応じて割り込みマスクの更新制御を行う多重割り込み制御手段と、決定された割り込み処理タスクと前記割り込みハンドラ間の処理の遷移を行う割り込みタスク制御処理手段と、前記退避処理手段で退避された割り込み発生時に実行中のタスクの情報を復帰し、中断されていたタスクの処理を再開するタスク復帰処理手段と、を具備する構成を採る。
【0020】
この構成によれば、割り込み発生時に割り込みコントローラより割り込みハンドラに制御が遷移すると、退避処理手段により割り込み発生時に実行中であったタスクの種々の情報を退避する。
【0021】
次に、割り込み要因判定処理手段で割り込みコントローラより通知された割り込み要因に対して、割り込み受付管理手段を用いてどの割り込み要因に対する処理を行うかの判定を行い、呼び出す割り込み処理タスクを決定する。
【0022】
次に、多重割り込み制御手段では、決定された割り込み処理タスクに対する割り込みマスクを、割り込み要因毎に用意された割り込み受付可能状態を保持する割り込み受付可能管理手段から取り出し、割り込みコントローラの割り込みマスクに設定する。
【0023】
この際に、割り込み発生時に割り込みコントローラの割り込みマスクで既に割り込みマスクが設定されており、割り込み禁止になっている割り込み要因に対する割り込みマスクに対しては変更を行わない。
【0024】
さらに、割り込み発生時に割り込みコントローラに設定されていた割り込みマスクの状態に対して、割り込み要因判定処理手段で判定された割込み要因に対するマスクを割込み禁止状態にした割り込みマスクの状態を退避する。さらに、割り込み発生時の割り込み受付可能管理手段の状態も退避する。
【0025】
次に、割り込みタスク制御処理手段が割り込み要因判定処理処理手段で決定された対応する割り込み処理タスクを呼び出す。
【0026】
割り込み処理タスクでは、割り込みに対応する処理が行われるが、この処理中に新たな割り込み要因に対して割り込み許可を行う場合は、割り込みマスク解除制御手段の、対応する割り込み要因の情報を割り込み解除状態に設定する。
【0027】
また、即座に割り込み許可を行う場合には、同時に割り込みコントローラの割り込みマスクの対応する割り込みマスクをマスク解除状態に設定する。
【0028】
割込み処理タスクの処理が終わると、再び割り込みタスク制御処理手段に処理が移行する。この際、多重割り込み制御手段により、割り込み処理タスクを呼び出す前に退避しておいた割り込み受付可能管理手段の状態と割り込み処理タスクで設定された割り込みマスク解除制御手段の状態に対して、両方共割り込み許可状態になっている割り込み要因に対して、多重割り込み制御手段により退避された、割り込みマスクの状態の該当ビットを割り込み許可に設定したものを、割り込みコントローラの割り込みマスクに設定する。さらに、この際に割り込み許可状態に変更された割り込み要因に対しては、割り込みマスク解除制御手段の対応する割り込み要因の情報をリセットする。
【0029】
そして、タスク復帰処理手段で、退避処理手段で退避された割り込み発生時に実行中であったタスクの種々の情報を復帰し、中断されていたタスクの処理を再開する。
【0030】
従って、割り込み受付可能管理手段と割り込みマスク解除制御手段は割り込みハンドラとは独立に用意されており、多重割り込み制御手段は割込み受付可能管理手段を用いた制御方法のみを規定するものであるため、割り込みタスク内で他の割り込みを受け付けられるようにする場合や、以後ある割り込みを禁止する場合などの、割り込みハンドラの処理を変更することが必要な際に、割り込み受付可能管理手段と割り込みマスク解除制御手段を変更すればよく、割り込みハンドラの割り込み管理状態を意識せず割り込み処理タスクを作成でき、また、割り込みハンドラの割り込み管理状態に依存しない割り込み処理の構築が可能になる。
【0031】
本発明の割り込み管理装置は、上記構成において、割り込みハンドラとは独立に、タスクの初期化処理を行うためのタスクの呼出しアドレスを格納する初期化タスク管理手段と、実行中のタスクの情報を保持する実行タスク制御手段と、初期化処理が必要となるタスクを設定する初期化タスク指示手段と、前記実行タスク制御手段及び前記初期化タスク指示手段の処理に応じて中断タスクに復帰する際に前記中断タスクの初期化処理の要否の判定行い、初期化処理が必要なタスクに復帰する場合に、前記初期化タスク管理手段に格納された初期化処理を行うタスクの呼出しを実行するタスク管理制御手段と、を具備する構成を採る。
【0032】
この構成によれば、実行タスク制御手段には、処理タスクならびに割り込み処理タスクの内、実行中のタスクの情報が格納されている。割り込みハンドラにおいては、多重割り込み制御手段により、割り込み発生時に実行タスク制御手段に格納されていた実行中のタスクの情報が退避され、割り込み要因判定処理手段で決定された割り込み処理タスクの情報が新たに実行タスク制御手段に格納される。
【0033】
割り込み処理タスクにおいて、タスクの初期化が必要な場合には、初期化タスク指示手段に初期化するタスクの情報を格納する。
【0034】
割込み処理タスクの処理が終わると、再び割り込みタスク制御処理手段に処理が移行するが、この際、多重割り込み制御手段により、割り込み処理タスクを呼び出す前に退避しておいた実行タスク制御手段の情報と初期化タスク指示手段に格納されている初期化するタスクの情報を、タスク管理制御手段が比較を行う。
【0035】
同じタスクを指示している場合には、初期化タスク管理手段の対応するタスクの初期化処理を行うタスクの呼出しアドレスを用いて中断タスクの初期化タスクの処理を行う。尚、タスク復帰処理手段で、退避処理手段で退避された割り込み発生時に実行中であったタスクの種々の情報が必要な場合は復帰処理をも行う。
【0036】
従って、上記構成の割り込み管理装置の作用に加え、タスクの初期化処理を行うタスクの呼出しアドレスを格納する初期化タスク管理手段と実行中のタスクの情報を保持する実行タスク制御手段と初期化処理が必要となるタスクを設定する初期化タスク指示手段を有し、実行タスク制御手段と初期化タスク指示手段を用いて中断タスクに復帰する際に中断タスクの初期化処理の要否を判定行い、初期化処理が必要なタスクに復帰する場合には、初期化タスク管理手段に格納されている呼出しアドレスを用いて初期化処理を行うタスクの呼出しを行うタスク管理制御手段を有しており、割り込み処理タスクにおいて、タスクの処理を初期状態から始めるように制御する場合が発生した場合に、タスクのスタック領域、タスク制御手段などを割り込み処理タスクが初期化する必要がなく、したがって、割り込み処理タスクは初期化するタスクの処理内容を意識する必要がなく、割り込み処理タスク内において、初期化を行なう処理手順を割り込み処理タスクならびに初期化を必要とするタスクと独立に制御できる機構の構築が可能となる。
【0037】
本発明の割り込み管理装置は、上記構成において、処理対象となる処理タスクの判定を行い、処理タスク毎の呼出しアドレスを格納したタスク制御手段と、初期化タスク管理手段の処理に応じて呼び出す処理タスクの切換え処理を行うディスパッチ処理手段とを有するタスクマネージャと、退避処理手段で退避された割り込み発生時に実行中のタスクの情報の復帰を行わず、前記ディスパッチ処理手段を呼び出すタスク中断処理手段とを具備し、タスク管理制御手段は、実行タスク制御手段及び初期化タスク指示手段の処理に応じて中断タスクに復帰する際に中断タスクの初期化処理の要否を判定行い、初期化処理が必要なタスクに復帰する場合は前記タスク中断処理手段を呼び出し、初期化処理が不要な場合はタスク復帰処理手段を呼び出す構成を採る。
【0038】
この構成によれば、割り込みハンドラの復帰処理においては、実行タスク制御手段と初期化タスク指示手段を用いて中断タスクに復帰する際に中断タスクの初期化処理の要否を判定行い、初期化処理が必要なタスクに復帰する場合には、退避処理手段で退避された割り込み発生時に実行中であったタスクの種々の情報の退避を行うタスク復帰処理手段ではなく、単にタスクマネージャのディスパッチ処理手段を呼び出すタスク中断処理手段が呼び出され、初期化処理が不要な場合は、退避処理手段で退避された割り込み発生時に実行中であったタスクの種々の情報の退避を行うタスク復帰処理手段が呼び出され、中断タスクの処理が再開される。そして、タスクマネージャのディスパッチ処理手段で呼び出す処理タスクの切換え処理を行う際に初期化タスク指示手段で指示された処理タスクとの比較を行い、呼び出す処理タスクが初期化処理が必要なタスクの場合には、初期化タスク管理手段に格納されている呼出しアドレスを用いて初期化処理を行うタスクの呼出しを行う。
【0039】
従って、上記構成の割り込み管理装置の作用に加え、タスクの初期化が発生した場合に、初期化処理においてはもはや復帰する必要がない退避処理手段で退避された割り込み発生時に実行中であったタスクの種々の情報の復帰を行うこと無く、さらに初期化処理は、タスクマネージャのディスパッチ処理手段で再度そのタスクが指示された際にのみ初期化処理から処理を開始することが可能となる。
【0040】
本発明の割り込み管理装置は、上記構成において、初期タスク管理手段の処理に応じてタスクの初期化制御を行う初期化制御手段を、タスクマネージャに具備する構成を採る。
【0041】
この構成によれば、初期化制御手段は、処理タスクから呼び出された場合には、対応する処理タスクの初期タスク管理手段に処理タスクからの呼出しアドレスを格納し、対応する処理タスクを初期化するタスクの情報として初期化タスク指示手段に格納した上、ディスパッチ処理手段に処理を移し、ディスパッチ処理手段から呼び出された場合には、呼び出された際に指示された処理タスクの対応する初期タスク管理手段に格納されているタスクの起動開始アドレスを用いてタスクの呼出しを行なう。
【0042】
ディスパッチ処理手段は、処理タスクから呼び出された場合には、対応する処理タスクのタスク制御手段に処理タスクからの呼出しアドレスを格納する。また、タスク中断処理手段もしくは初期化制御手段からディスパッチ処理手段が呼び出された場合には、呼び出す処理タスクの切換え処理を行う際に初期化タスク指示手段で指示された処理タスクとの比較を行い、呼び出す処理タスクが初期化処理が必要なタスクの場合には、初期化タスク管理手段に格納されている起動開始アドレスを用いてタスクの呼出しを行い、その他の場合にはタスク制御手段から呼び出す処理タスクに対応する呼出しアドレスを用いてタスクの呼出しを行う。
【0043】
従って、上記構成の割り込み管理装置の作用に加え、タスクマネージャでの初期化を含むタスクの管理がアドレスの管理ならびに制御方法のみを規定するものであるため、各処理タスクの呼出しアドレスに依存しない処理タスクの切換え制御の構築が可能になる。
【0044】
本発明の割り込み管理方法は、割り込みマスクで割り込みハンドラへの割り込み通知を制御し、この制御による割り込み発生時に実行中のタスクの情報を退避し、前記割り込みの要因に応じて処理すべき割り込み処理タスクを決定し、前記割り込みハンドラとは独立に、前記割り込み要因毎に用意された割り込み受付可能状態を保持し、前記割り込み処理タスクにおいて割り込み許可を制御するための割り込みマスク解除制御情報及び前記割り込み受付可能状態の情報に応じて割り込みマスクの更新制御を行い、決定された割り込み処理タスクと前記割り込みハンドラ間の処理の遷移を行い、前記退避された割り込み発生時に実行中のタスクの情報を復帰し、中断されていたタスクの処理を再開するようにした。
【0045】
この方法によれば、割り込み受付可能管理情報と割り込みマスク解除制御情報は割り込みハンドラとは独立に用意されており、多重割り込み制御手段は割込み受付可能管理情報を用いた制御方法のみを規定するものであるため、割り込みタスク内で他の割り込みを受け付けられるようにする場合や、以後ある割り込みを禁止する場合などの、割り込みハンドラの処理を変更することが必要な際に、割り込み受付可能管理情報と割り込みマスク解除制御情報を変更すればよく、割り込みハンドラの割り込み管理状態を意識せず割り込み処理タスクを作成でき、また、割り込みハンドラの割り込み管理状態に依存しない割り込み処理の構築が可能になる。
【0046】
本発明の割り込み管理方法は、上記方法において、割り込みハンドラとは独立に、タスクの初期化処理を行うタスクの呼出しアドレスを格納する初期化タスク管理情報と、実行中のタスクの情報と、初期化処理が必要となるタスクを設定する初期化タスク指示情報とを保持し、前記実行タスク制御情報及び前記初期化タスク指示情報に応じて中断タスクに復帰する際に、中断タスクの初期化処理の要否を判定行い、初期化処理が必要なタスクに復帰する場合に、前記初期化タスク管理情報に格納されている初期化処理を行うタスクの呼出しを行うようにした。
【0047】
この方法によれば、上記方法の割り込み管理方法の作用に加え、タスクの初期化処理を行うタスクの呼出しアドレスを格納する初期化タスク管理情報と実行中のタスクの情報を保持する実行タスク制御情報と初期化処理が必要となるタスクを設定する初期化タスク指示情報を有し、実行タスク制御情報と初期化タスク指示情報を用いて中断タスクに復帰する際に中断タスクの初期化処理の要否を判定行い、初期化処理が必要なタスクに復帰する場合には、初期化タスク管理情報に格納されている呼出しアドレスを用いて初期化処理を行うタスクの呼出しを行うタスク管理制御手段を有しており、割り込み処理タスクにおいて、タスクの処理を初期状態から始めるように制御する場合が発生した場合に、タスクのスタック領域、タスク制御手段などを割り込み処理タスクが初期化する必要がなく、したがって、割り込み処理タスクは初期化するタスクの処理内容を意識する必要がなく、割り込み処理タスク内において、初期化を行なう処理手順を割り込み処理タスクならびに初期化を必要とするタスクと独立に制御できる機構の構築が可能となる。
【0048】
本発明の割り込み管理方法は、上記方法において、処理対象となる処理タスクの判定を行い、処理タスク毎の呼出しアドレスを格納した実行タスク制御情報及び初期化タスク管理情報に応じて、呼び出す処理タスクの切換え処理を行い、退避された割り込み発生時に実行中のタスクの情報の復帰を行わず前記切換え処理を行い、前記実行タスク制御情報及び前記初期化タスク指示情報に応じて中断タスクに復帰する際に、中断タスクの初期化処理の要否を判定行い、初期化処理が必要なタスクに復帰する場合に、前記タスク中断処理を行い、初期化処理が不要な場合はタスク復帰処理を行うようにした。
【0049】
この方法によれば、上記方法の割り込み管理方法の作用に加え、タスクの初期化が発生した場合に、初期化処理においてはもはや復帰する必要がない退避処理手段で退避された割り込み発生時に実行中であったタスクの種々の情報の復帰を行うこと無く、さらに初期化処理は、タスクマネージャのディスパッチ処理手段で再度そのタスクが指示された際にのみ初期化処理から処理を開始することが可能となる。
【0050】
本発明の割り込み管理方法は、上記方法において、初期化タスク管理情報を用いてタスクの初期化制御を行い、実行タスク制御情報を用いてタスクの切換え処理を行うようにした。
【0051】
この方法によれば、上記方法の割り込み管理方法の作用に加え、タスクマネージャでの初期化を含むタスクの管理がアドレスの管理ならびに制御方法のみを規定するものであるため、各処理タスクの呼出しアドレスに依存しない処理タスクの切換え制御の構築が可能になる。
【0052】
本発明の記録媒体は、上記何れかの構成と同様の割り込み管理方法を実行するプログラムが記録された構成を採る。
【0053】
この構成によれば、記録媒体から上記何れかの構成と同様の割り込み管理制御方法を実行するプログラムを読み出して、その割り込み管理制御を実現することができる。
【0054】
本発明のオペレーティングシステムは、上記何れかの構成と同様の割り込み管理方法に応じた処理機能を具備する構成を採る。
【0055】
この構成によれば、このオペレーティングシステムに搭載したパーソナルコンピュータ上で実現されるアプリケーションシステムに対して、OS内の処理に依存しない割り込み管理機構ならびにタスク切換え処理の構築が可能となる。
【0056】
本発明の信号処理用プロセッサは、上記何れかの構成と同様の割り込み管理方法に応じた処理機能を具備する構成を採る。
【0057】
この構成によれば、信号処理用プロセッサ内での割り込み処理ならびにタスクマネージャとは独立に、割り込み処理を用いたアプリケーションを実現することが可能となる。
【0058】
本発明の画像端末装置は、上記何れかの構成と同様の割り込み管理装置を具備する構成を採る。
【0059】
この構成によれば、画像端末装置において、上記何れかの構成と同様の作用効果を得ることができる。
【0060】
本発明の移動体通信システムは、上記何れかの構成と同様の画像端末装置を具備する構成を採る。
【0061】
この構成によれば、移動体通信システムにおいて、上記何れかの構成と同様の作用効果を得ることができる。
【0062】
【発明の実施の形態】
以下、本発明の実施の形態について、図面を参照して詳細に説明する。
【0063】
(実施の形態1)
図1は、本発明の実施の形態1に係る割り込み管理装置の構成を示す手段図である。
【0064】
この図1に示す割り込み管理装置100は、割り込みハンドラ101と、割り込みコントローラ102と、割り込み受付可能管理部103と、割り込みマスク解除制御部104とを備え、割り込みハンドラ101は、退避処理部105と、割り込み要因判定処理部106と、割り込みタスク制御処理部107と、タスク復帰処理部108と、多重割り込み制御部109とを備え、割り込みコントローラ102は、割り込みマスク部110を備えて構成されている。
【0065】
また、符号121〜122は、第1〜第Nの割り込み要因であり、123は処理タスクであり、第1〜第Nのタスク124〜126を有し、127は割り込み処理タスクであり、第1〜第Nの割り込み処理タスク128〜130を有する。
【0066】
割り込みコントローラ102は、割り込みマスク部110で割り込みハンドラ101への割り込み通知を制御するものである。
【0067】
退避処理部105は、割り込み発生時に実行中であったタスクの種々の情報を退避するものである。
【0068】
割り込み要因判定処理部106は、割り込み要因より処理すべき割り込み処理タスクを決定するものである。
【0069】
割り込み受付可能管理部103は、割り込みハンドラ101とは独立に、割り込み要因毎に用意された割り込み受付可能状態を保持するものである。
【0070】
割り込みマスク解除制御部104は、割り込みハンドラ101とは独立に、割り込み処理タスクにおいて割り込み許可を制御するものである。
【0071】
多重割り込み制御部109は、割り込み受付可能管理部103と割り込みマスク解除制御部104を用いて割り込みマスクの更新制御を行うものである。
【0072】
割り込みタスク制御処理部14は、決定された割り込み処理タスクと割り込みハンドラ間の処理の遷移を行うものである。
【0073】
このように構成された実施の形態1の割り込み管理装置100の動作を説明する。
【0074】
図2は割り込みコントローラ102の動作を説明するためのものであり、説明を簡単にするために、割り込み要因として16種類の割り込み要因(IRQn:n=0,1,..,15とする)を持ち、全てマスク可能な割り込みとし、各々の割り込み要因の発生を示す割り込み要求レジスタ(IR:Interrupt Requestと呼ぶ)と、割り込みマスク部110として各々の割り込み要因に対して割込みの禁止(0)/許可(1)を制御する割り込みマスクレジスタ(IM:Interrupt Maskと呼ぶ)と、各割込み要因毎に存在して、割込み要求レジスタIRをリセットするために使用する割込み要求リセットレジスタ(IRR:Interrupt Request Resetと呼ぶ)とを持つものとする。
【0075】
IRRは、ソフトウェアがこのレジスタへセット(1)することにより、IRの該当ビットがリセット(0)される。IR,IM,IRRの各レジスタを各々16bitのレジスタを用いて実現し、さらに、マスク可能な割込み要因全てについて同時に、割込みの禁止(0)/許可(1)の制御する割込み許可フラグ(IE:Interrupt Enableと呼ぶ)を設ける場合の例を示している。
【0076】
図2(a),(b),(c),(d)は各々IR, IM, IRR, IEを示しており、各割り込み要因IRQn(n=0,1,..,15)に対するビットを、IRn,IMn,IRRn(n=0,1,..,15)と表す。
【0077】
図2(e)は割り込み要因が発生した時の割り込みコントローラ102での処理フローを示している。図2(e)に示すように、割り込み要因が発生すると、割り込み要求レジスタの該当ビットがセット(1)され、割り込み許可フラグが許可(1)されており、割り込みマスクレジスタの該当ビットが許可(1)されている場合に、割り込み許可フラグを禁止(0)とした後、割り込みハンドラに処理が遷移する。さらに、割り込み許可フラグもしくは割込みマスクレジスタが禁止(0)状態から許可(1)状態に変更された場合にも図2(e)に示す割り込み要因判定処理が行われる。
【0078】
以下、割り込みハンドラでの処理の説明を簡単にするために、割り込みハンドラ101に処理が遷移した際に、割り込み要因としてIRQ14,IRQ12,IRQ1,IRQ0の4種類の割り込み要因がセット(1)されており、この際の割り込みマスクレジスタIMの設定状態としてIM15,IM14,IM3,IM1,IM0が割込み許可(1)に設定されており、さらに、その際の割り込み受付管理手段の状態として、全ての割り込みが許可されている割り込みマスクが割り込み受付可能管理部103内に保持されている(この保持しているレジスタをIMFGregと呼ぶ)場合について説明をする。
【0079】
また、この時の割り込みマスク解除制御部104には、マスク解除を行うべき割り込み要因がない、即ち、割り込みマスク解除制御部104の全てビットがクリア(0)に設定されているとする。
【0080】
また、割り込み要因の割り込みレベルとして4段階の割り込みレベルが設定されており、
レベル0の割り込み要因:IRQ2, IRQ3
レベル1の割り込み要因:IRQ0, IRQ1
レベル2の割り込み要因:IRQ15,IRQ14,IRQ13,IRQ12,IRQ4
レベル3の割り込み要因:IRQ5, IRQ6, IRQ7, IRQ8, IRQ9,IRQ10,IRQ11
とし、レベル0>レベル1>レベル2>レベル3であるとする。
【0081】
割り込み受付可能管理部103には、各割り込み毎にその割り込み要因のレベルよりレベルの高い割り込み要因のみを割り込み許可(1)とするような割り込みマスクレジスタへの設定状態(IMFGと呼ぶ)が保持される。
【0082】
図3は前記割り込みレベルに対して設定すべき割り込みマスクレジスタの設定状態を示しており、IMFGnは各々IRQn(n=0,1,..,15)に対応している。例えば、割り込み要因IRQ14に対するIMFG14は、IRQ14よりレベルの高い、IRQ0, IRQ1,IRQ2, IRQ3の該当ビットが許可(1)に設定される。また、割り込み要因IRQ2に対するIMFG1は、IRQ2よりレベルの高い割り込み要因が存在しないため、全てのビットが禁止(0)に設定される。
【0083】
まず、割り込みハンドラ101に処理が遷移した場合、その際に実行中であった処理タスク(この処理タスクを中断タスク125とする)の種々の情報が退避処理部105により退避される。
【0084】
次に、割り込み要因判定処理部106で割り込みコントローラより通知された割り込み要因に対して、割り込み受付可能管理部103を用いてどの割り込み要因に対する処理を行うかの判定を行い、呼び出す割り込み処理タスクを決定する。
【0085】
図4は割り込み要因判定処理手順の説明図である。割り込み要因としてIRQ14,IRQ12,IRQ1,IRQ0の4種類の割り込み要因がセット(1)されているため割込み要求レジスタIRはIR14,IR12,IR1,IR0の各該当ビットが1となっている(S1)。
【0086】
割り込みマスクレジスタIMの設定状態としてIM15,IM14,IM3,IM1,IM0が割込み許可(1)に設定されているため割り込みマスクレジスタIMはIM15,IM14,IM3,IM1,IM0の各該当ビット1となっている(S2)。
【0087】
次に、S1とS2の各対応するビット毎のAND演算を行う(S3)。
【0088】
S3の状態において、MSB側から順に評価を行い値が1となっているビットに該当する割り込み要因を選択する。この場合はIRQ14に対する位置のビットがまず1となっているため、割り込み要因としてIRQ14が選択される。
【0089】
次に、割り込み受付可能管理部103に保持されている割り込みマスクレジスタへの設定状態IMFGに対して、選択された割り込み要因IRQ14に対応する割り込みマスクレジスタへの設定状態IMFG14(即ち、図3のIMFG14の値)を獲得する(S4)。
【0090】
次に、S3とS4の各対応するビット毎のAND演算を行う(S5)。
【0091】
次に、S3の状態に対して行ったと同様の評価を行い割り込み要因としてIRQ1が選択される。
【0092】
次に、S4と同様の処理を行い割り込み受付可能管理部103からIMFG1(即ち、図3のIMFG1の値)を獲得する(S6)。
【0093】
次に、S5と同様の処理を行うと、全てのビットが0となるため(S7)、S3の状態に対して行ったと同様の評価を行うと対応する割り込み要因がなくなる。この時に直前に評価された割り込み要因、即ちIRQ1を割り込み要因として選択し、呼び出す割り込み処理タスクとしてIRQ1に対する割り込み処理タスクを決定し、割り込みタスク制御処理部107に処理が遷移する。
【0094】
尚、この時に割込み要因としてIRQ1が選択されたため、割込み要求リセットレジスタIRRのIRQ1に該当するビット、即ち、IRR1をセット(1)することにより割り込み要求レジスタIRにセットされているIRQ1の割り込み要因のリセット(0)を行う。
【0095】
ここで、IRQ1に対する割り込み処理タスクを第Rの割り込み処理タスク129とし、以下説明を行う。
【0096】
図5は多重割り込み制御部109での処理手順の説明図である。
【0097】
多重割り込み制御部109では、決定された第Rの割り込み処理タスク129に対する割り込みマスクIMFG1を、割り込み要因毎に用意された割り込み受付可能状態を保持する割り込み受付可能管理部103から取り出し、割り込みコントローラ102の割り込みマスク部110に設定する。
【0098】
この際に、割り込み発生時に割り込みコントローラ102の割り込みマスク部110で既に割り込みマスクが設定されており、割り込み禁止になっている割り込み要因に対する割り込みマスクに対しては変更を行わない。
【0099】
即ち、S6のIMFG1とS2のIMの各対応するビット毎のAND演算を行うことにより割込みマスク34に設定する割り込みマスク状態を決定し、このマスク状態が割込みマスク34に設定される(S8)。
【0100】
さらに、割り込み発生時に割り込みコントローラ102に設定されていた割り込みマスクの状態に対して、割り込み要因判定処理部106で判定された割込み要因IRQ1に対するマスクを割込み禁止状態にした割り込みマスクの状態を退避する。
【0101】
即ち、S2のIMに対して、割り込み要因IRQ1の該当ビットのみを1にしたもの(S9)とのEOR演算を行うことにより得られる状態(S10)が退避される(退避するレジスタをIM_SHLTregと呼ぶ)。
【0102】
さらに、割り込み発生時の割り込み受付可能管理手段の状態も退避する。即ち、全ての割り込みが許可されている状態であるIMFGregの内容(S11)が退避される(退避するレジスタをIMFG_SHLTregと呼ぶ)。
【0103】
次に、割り込みタスク制御処理部107が割り込み要因判定処理処理部12で決定された対応する割り込み処理タスクである、第Rの割り込み処理タスク129を呼び出す。
【0104】
第Rの割り込み処理タスク129では、割り込みに対応する処理が行われるが、この処理中に新たな割り込み要因に対して割り込み許可を行う場合は、割り込みマスク解除制御部104の、対応する割り込み要因の情報を割り込み解除状態に設定する。また、即座に割り込み許可を行う場合には、同時に割り込みコントローラ102の割り込みマスク部110の対応する割り込みマスクをマスク解除状態に設定する。
【0105】
即ち、第Rの割り込み処理タスク129の処理内で、新たに割り込み要因IRQ2を受け付け可能とする場合を考えると、割り込みマスク解除制御部104の全てのビットはクリア(0)に設定されている状態であるため、割り込み要因IRQ2を受け付け可能とする場合には、割り込みマスク解除制御部104の該当ビットを設定(1)にする。
【0106】
図6(a)はこの時の割り込みマスク解除制御部104の状態を示している(S12)。
【0107】
さらに、IRQ2は第Rの割り込み処理タスク129が処理対象としている割り込み要因IRQ1より上位レベルの割り込み要因であるため、即座に割込み許可を行う場合となり、割り込みコントローラ102の割り込みマスク部110の現時点での設定状態である、S8の状態に対して、IRQ2の該当ビットの割込みマスクを解除(1)にする。図6(b)はこの時の割り込みマスク部110の状態を示している(S13)。
【0108】
割込み処理タスクR22の処理が終わると、再び割り込みタスク制御処理部107に処理が移行する。
【0109】
この際、多重割り込み制御部109により、第Rの割り込み処理タスク129を呼び出す前にIMFG_SHLTregに退避しておいた割り込み受付可能管理部103の状態(S11)と、第Rの割り込み処理タスク129で設定された割り込みマスク解除制御部104の状態(S12)に対して、両方共割り込み許可状態になっている割り込み要因、即ちIRQ2に対し、多重割り込み制御部109によりIM_SHLTregに退避された、割り込みマスクの状態(S10)の該当ビットを割り込み許可に設定したものを、割り込みコントローラ102の割り込みマスク部110に設定する。図6(c)はこの時のマスク34の状態を示している(S14)。
【0110】
さらに、この際に割り込み許可状態に変更された割り込み要因IRQ2に対しては、割り込みマスク解除制御部104の対応する割り込み要因の情報をリセットする。図6(d)はこの時の割り込みマスク解除制御部104の状態を示している(S15)。
【0111】
そして、タスク復帰処理部108で、退避処理部105で退避された割り込み発生時に実行中であったタスクの種々の情報を復帰し、中断タスク125の処理を再開する。
【0112】
このように、実施の形態1の割り込み管理装置100によれば、割り込み受付可能管理部103と割り込みマスク解除制御部104は割り込みハンドラ101とは独立に用意されており、多重割り込み制御部109は割込み受付可能管理手段51を用いた制御方法のみを規定するものであるため、割り込みタスク内で他の割り込みを受け付けられるようにする場合や、以後ある割り込みを禁止する場合などの、割り込みハンドラ101の処理を変更することが必要な際に、割り込み受付可能管理部103と割り込みマスク解除制御部104を変更すればよく、割り込みハンドラ101の割り込み管理状態を意識せず割り込み処理タスク127を作成でき、また、割り込みハンドラ101の割り込み管理状態に依存しない割り込み処理の構築が可能になる。
【0113】
また、本発明は、ソフトウェアにより実現することも可能であり、このソフトウェアを収めた記録媒体から読み出して本発明を実現することも可能である。
【0114】
また、本発明は、信号処理用プロセッサ(DSP)における割り込み管理機構として組み込むことが可能であり、DSP内での割り込み処理とは独立に割り込み処理を用いたアプリケーションを実現する場合に有効である。
【0115】
また、本発明は、コンピュータ処理のリアルタイム・オペレーションシステムならびにマルチタスク・オペレーションシステムなどのOS内の割り込み処理に組み込むことが可能であり、パーソナルコンピュータ上で実現されるアプリケーションシステムの構築においては、OS内での割り込み処理とは独立に割り込み処理を用いたアプリケーションを実現する場合に有効であり、さらに多重割り込みを有する場合には、割り込みレベルをOS内の割り込み機構とは独立した形態で構築することが可能となるため特にその効果を発揮する。
【0116】
(実施の形態2)
図7は、本発明の実施の形態2に係る割り込み管理装置の構成を示す手段図である。但し、この図7に示す実施の形態2において図1の実施の形態1の各部に対応する部分には同一符号を付し、その説明を省略する。
【0117】
この図7に示す実施の形態2の割り込み管理装置700は、実施の形態1の構成要素の他に、実行タスク制御部701と、初期化タスク指示部702と、初期化タスク管理部703と、割り込みハンドラ101内のタスク管理制御部704とを備えて構成されている。
【0118】
初期化タスク管理部703は、割り込みハンドラ101とは独立に、タスクの初期化処理を行うタスクの呼出しアドレスを格納するものである。
【0119】
実行タスク制御部701は、実行中のタスクの情報を保持するものである。
【0120】
初期化タスク指示部702は、初期化処理が必要となるタスクを設定するものである。
【0121】
タスク管理制御部704は、実行タスク制御部701と初期化タスク指示部702を用いて中断タスクに復帰する際に中断タスクの初期化処理の要否を判定行い、初期化処理が必要なタスクに復帰する場合には、初期化タスク管理部703に格納されている初期化処理を行うタスクの呼出しを行うものである。
【0122】
このように構成された実施の形態2の割り込み管理装置700の動作を説明する。但し、割り込みハンドラ101での処理の説明を簡単にするために、実施の形態1での説明を用いて説明する。
【0123】
図8(a)は、実行タスク制御部701に格納される実行中のタスクの情報の状態を示したものであり、処理タスク4ならびに割込み処理タスク2の各々のタスクを各ビットに対応させ管理する場合を示している。
【0124】
図8(b)は、初期化タスク指示部702に初期化処理が必要となるタスクを実行タスク制御部701と同様に各ビットに対応させて設定する場合を示している。
【0125】
実行タスク制御部701には、処理タスクならびに割り込み処理タスクの内、実行中のタスクの情報(TSKINFと呼ぶ)が格納されている。まず、割り込みハンドラ101に処理が遷移した場合、その際に実行中であった処理タスク(中断タスク125)の該当ビットに1が設定される(T1)。
【0126】
まず、割り込みハンドラ101において、多重割り込み制御部109により、割り込み発生時に実行タスク制御部701に格納されていた実行中のタスクの情報、即ちT1の状態が退避され(退避するレジスタをTSKINF_SHLTregと呼ぶ)、割り込み要因判定処理部106で決定された第Rの割り込み処理タスク129の情報(T2)が新たに実行タスク制御部701に格納される。
【0127】
そして、第Rの割り込み処理タスク129において、タスクの初期化が必要な場合には、初期化タスク指示部702に初期化するタスクの情報を格納する。
【0128】
中断タスク125が初期化が必要なタスクとして設定された場合を考える。この場合、初期化タスク指示部702には中断タスク125の該当ビットに1が設定される(T3)。
【0129】
そして、割込み処理タスクR22の処理が終わると、再び割り込みタスク制御処理部107に処理が移行するが、この際、多重割り込み制御部109により、割り込み処理タスクを呼び出す前にTSKINF_SHLTregに退避しておいた実行タスク制御部701の情報(T2)と初期化タスク指示部702に格納されている初期化するタスクの情報(T3)を用いて、タスク管理制御部704が比較を行う。
【0130】
タスク管理制御部704では比較したタスクが同じタスクを指示している場合には、初期化タスク管理部703の対応するタスクの初期化処理を行うタスクの呼出しアドレスを用いて中断タスクの初期化タスクの処理を行う。
【0131】
例えば、TSKINF_SHLTregに退避される実行タスク制御部701の情報は、割り込み発生時に実行中であったタスクの情報であるため、常に該当する1ビットのみが1に設定されているため、タスク管理制御部704において、T2とT3のAND演算を行い、非0の値となった場合には、比較したタスクが同じタスクを指示していると判断すればよく、この場合は同じタスクとなっている。
【0132】
尚、タスク復帰処理部108で、退避処理部105で退避された割り込み発生時に実行中であったタスクの種々の情報が必要な場合は復帰処理をも行う。
【0133】
このように、実施の形態2の割り込み管理装置700によれば、タスクの初期化処理を行うタスクの呼出しアドレスを格納する初期化タスク管理部703と、実行中のタスクの情報を保持する実行タスク制御部701と、初期化処理が必要となるタスクを設定する初期化タスク指示部702とを有し、実行タスク制御部701と初期化タスク指示部702を用いて中断タスクに復帰する際に中断タスクの初期化処理の要否を判定行い、初期化処理が必要なタスクに復帰する場合には、初期化タスク管理部703に格納されている呼出しアドレスを用いて初期化処理を行うタスクの呼出しをタスク管理制御部704が行う。
【0134】
このため、割り込み処理タスク127において、タスクの処理を初期状態から始めるように制御する場合が発生した場合に、タスクのスタック領域、タスク制御手段などを割り込み処理タスク127が初期化する必要がない。
【0135】
従って、割り込み処理タスク127は、初期化するタスクの処理内容を意識する必要がなく、割り込み処理タスク127内において、初期化を行なう処理手順を割り込み処理タスク127ならびに初期化を必要とするタスクと独立に制御できる機構の構築が可能となる。
【0136】
また、本発明は、ソフトウェアにより実現することも可能であり、このソフトウェアを収めた記録媒体から読み出して本発明を実現することも可能である。
【0137】
また、本発明は、信号処理用プロセッサ(DSP)における割り込み管理機構として組み込むことが可能であり、DSP内での割り込み処理とは独立に割り込み処理を用いたアプリケーションを実現する場合に有効である。
【0138】
また、本発明は、コンピュータ処理のリアルタイム・オペレーションシステムならびにマルチタスク・オペレーションシステムなどのOS内の割り込み処理に組み込むことが可能であり、パーソナルコンピュータ上で実現される種々のアプリケーションシステムの構築においては、タスクの初期化処理がOS内の割り込み機構とは独立した形態で構築することが可能となるため特にその効果を発揮する。
【0139】
(実施の形態3)
図9は、本発明の実施の形態3に係る割り込み管理装置の構成を示す手段図である。但し、この図9に示す実施の形態3において図7の実施の形態2の各部に対応する部分には同一符号を付し、その説明を省略する。
【0140】
この図9に示す実施の形態3の割り込み管理装置900は、実施の形態2の構成要素の他に、タスク制御部901を有するディスパッチ処理部902が設けられたタスクマネージャ903と、割り込みハンドラ101内にタスク中断処理部904とを備えて構成されている。
【0141】
タスクマネージャ903のディスパッチ処理部902は、図7の割り込み管理装置700に対し、処理対象となる処理タスクの判定を行い、処理タスク毎の呼出しアドレスを格納したタスク制御部901と、タスクの初期化処理を行うタスクの呼出しアドレスを格納する初期化タスク管理部703とを用いて、呼び出す処理タスクの切換え処理を行うものである。
【0142】
タスク中断処理部904は、退避処理部105で退避された割り込み発生時に実行中であったタスクの種々の情報の復帰を行わずディスパッチ処理部902を呼び出すものである。
【0143】
また、タスク管理制御部704が実行タスク制御部701と初期化タスク指示部702を用いて中断タスクに復帰する際に中断タスクの初期化処理の要否を判定行い、初期化処理が必要なタスクに復帰する場合には、タスク中断処理部904を呼び出し、処理化処理が不要な場合はタスク復帰処理部108を呼び出す構成となっている。
【0144】
このように構成された実施の形態3の割り込み管理装置900の動作を説明する。
【0145】
図7の割り込み管理装置700の割り込みハンドラ101でのタスク復帰処理部108の中断タスク125への復帰処理に対して、図9の割り込みハンドラ101の復帰処理においては、実行タスク制御部701と初期化タスク指示部702を用いて、第2の実施例でのタスク管理制御部704と同様の処理を行う。
【0146】
即ち、多重割り込み制御部109により、割り込み処理タスクを呼び出す前にTSKINF_SHLTregに退避しておいた実行タスク制御部701の情報(T2)と初期化タスク指示部702に格納されている初期化するタスクの情報(T3)を用いた比較処理を行う。
【0147】
これにより、中断タスクに復帰する際に中断タスクの初期化処理の要否を判定を行い、初期化処理が必要なタスクに復帰する場合、退避処理部105で退避された割り込み発生時に実行中であったタスクの種々の情報の退避を行うタスク復帰処理部108ではなく、タスク中断処理部904が呼び出される。
【0148】
初期化処理が不要な場合は、退避処理部105で退避された割り込み発生時に実行中であったタスクの種々の情報の退避を行うタスク復帰処理部108が呼び出され、中断タスクの処理が再開される。
【0149】
そして、タスクマネージャ903のディスパッチ処理部902で呼び出す処理タスクの切換え処理を行う際に初期化タスク指示部702で指示された処理タスクとの比較を、タスク管理制御部704での比較処理と同様の方法で行い、呼び出す処理タスクが初期化処理が必要なタスクの場合には、初期化タスク管理部703に格納されている呼出しアドレスを用いて初期化処理を行うタスクの呼出しを行う。
【0150】
このように、実施の形態3の割り込み管理装置900によれば、タスクの初期化が発生した場合に、初期化処理においては、もはや復帰する必要がない退避処理部105で退避された割り込み発生時において、実行中であったタスクの種々の情報の復帰を行うこと無く、さらに初期化処理は、タスクマネージャ903のディスパッチ処理部902で再度そのタスクが指示された際にのみ初期化処理から処理を開始することが可能となる。
【0151】
また、本発明は、ソフトウェアにより実現することも可能であり、このソフトウェアを収めた記録媒体から読み出して本発明を実現することも可能である。
【0152】
また、本発明は、信号処理用プロセッサ(DSP)における割り込み管理機構ならびにタスク管理機構として組み込むことが可能であり、DSP内での割り込み処理ならびにタスクマネージャとは独立に割り込み処理を用いたアプリケーションを実現する場合に有効である。
【0153】
また、本発明は、コンピュータ処理のリアルタイム・オペレーションシステムならびにマルチタスク・オペレーションシステムなどのOS内の割り込み処理ならびにタスクマネージャ処理に組み込むことが可能であり、パーソナルコンピュータ上で実現される種々のアプリケーションシステムに対し初期化処理を伴う場合には、もはや復帰する必要がないタスクの種々の情報の復帰を行うこと無く、さらに初期化処理は、タスクマネージャのディスパッチ処理部で再度そのタスクが指示された際にのみ初期化処理から処理を開始することが可能となるため特にその効果を発揮する。
【0154】
(実施の形態4)
図10は、本発明の実施の形態4に係る割り込み管理装置の構成を示す手段図である。但し、この図10に示す実施の形態4において図9の実施の形態3の各部に対応する部分には同一符号を付し、その説明を省略する。
【0155】
この図10に示す実施の形態4の割り込み管理装置1000は、実施の形態3の構成要素の他に、初期化タスク管理部703を有する初期化制御部1001を備えて構成されている。
【0156】
初期化制御部1001は、図9の割り込み管理装置900におけるタスクマネージャ903を、処理タスク毎の初期化を行う場合のタスクの起動開始アドレスを格納する初期化タスク管理部703を用いてタスクの初期化制御を行うものである。
【0157】
つまり、タスクマネージャ903を、初期化制御部1001と、処理タスク毎の呼出しアドレスを格納するタスク制御部901を用いてタスクの切換え処理を行うディスパッチ処理部902とにより構成したものである。
【0158】
このように構成された実施の形態4の割り込み管理装置1000の動作を説明する。
【0159】
初期化制御部1001は、処理タスク4から呼び出された場合には、対応する処理タスクの初期化タスク管理部703に、処理タスクからの呼出しアドレスを格納し、対応する処理タスクを初期化するタスクの情報として初期化タスク指示部702に格納した上、ディスパッチ処理部902に処理を移す。
【0160】
また、ディスパッチ処理部902から初期化制御部1001が呼び出された場合には、呼び出された際に指示された処理タスクの対応する初期化タスク管理部703に格納されているタスクの起動開始アドレスを用いてタスクの呼出しを行なう。
【0161】
ディスパッチ処理部902は、処理タスク4から呼び出された場合には、対応する処理タスクのタスク制御部901に処理タスクからの呼出しアドレスを格納する。
【0162】
また、タスク中断処理部904もしくは、初期化制御部1001からディスパッチ処理部902が呼び出された場合には、呼び出す処理タスクの切換え処理を行う際に、初期化タスク指示手段55で指示された処理タスクとの比較を行う。
【0163】
呼び出す処理タスクが初期化処理が必要なタスクの場合には、初期化タスク管理部703に格納されている起動開始アドレスを用いてタスクの呼出しを行う。
【0164】
その他の場合にはタスク制御部901から呼び出す処理タスクに対応する呼出しアドレスを用いてタスクの呼出しを行う。
【0165】
初期化制御部1001ならびにディスパッチ処理部902において、格納すべき呼出しアドレスの獲得方法としては、例えば、DSPなどで用いられるCALL命令とPOP命令を用いて実現することができる。
【0166】
CALL命令とはCALL命令を発行したプログラムの次の命令のプログラムカウンタをスタックに格納し、CALL命令で指示されたプログラムカウンタの値に処理を遷移させるものであり、POP命令とはスタックに格納されている値を取り出し命令である。
【0167】
従って、このCALL命令により初期化制御部1001ならびにディスパッチ処理部902の所定の処理に制御を移し、POP命令を用いて呼び出されたタスクの戻り先のプログラムカウンタの値を、初期化タスク管理部703もしくはタスク制御手段61に格納することにより実現できる。
【0168】
このように、実施の形態4の割り込み管理装置1000によれば、タスクマネージャ903での初期化を含むタスクの管理がアドレスの管理ならびに制御方法のみを規定するものであるため、各処理タスクの呼出しアドレスに依存しない処理タスクの切換え制御の構築が可能になる。
【0169】
また、本発明は、ソフトウェアにより実現することも可能であり、このソフトウェアを収めた記録媒体から読み出して本発明を実現することも可能である。
【0170】
また、本発明は、信号処理用プロセッサ(DSP)における割り込み管理機構ならびにタスク管理機構として組み込むことが可能であり、DSP内での割り込み処理ならびにタスクマネージャとは独立に割り込み処理を用いたアプリケーションを実現する場合に有効である。
【0171】
また、本発明は、コンピュータ処理のリアルタイム・オペレーションシステムならびにマルチタスク・オペレーションシステムなどのOS内の割り込み処理ならびにタスクマネージャ処理に組み込むことが可能であり、パーソナルコンピュータ上で実現されるアプリケーションシステムに対してOS内の処理に依存しないタスク切換え処理の構築が可能となるため特にその効果を発揮する。
【0172】
【発明の効果】
以上説明したように、本発明によれば、割り込みタスク内で他の割り込みを受け付けられるようにする場合や、以後ある割り込みを禁止する場合などの、割り込みハンドラの処理を変更することが必要な際に、割り込みハンドラや割り込み処理タスクによる割り込み処理内容の変更を容易に行うことができる。
【0173】
また、OSを用いた割り込み管理方法で、すべての割り込み要因に対してOS内にある割り込みハンドラが一括して割り込みの禁止/許可の処理を行なっている場合においても、ユーザがOS内の割り込みハンドラの割り込み管理状態を意識せず割り込み処理タスクを作成することができる。
【0174】
また、OS内の割り込みハンドラの割り込み管理状態に依存しない割り込み処理の構築、ならびに、割り込み処理タスクにおいて、タスクの処理を初期状態から始めるように制御する場合が発生した場合に、タスクのスタック領域、タスク制御手段などを割り込み処理タスクが初期化する必要がなくなる。
【0175】
従って、割り込み処理タスクは初期化するタスクの処理内容を意識する必要がなく、割り込み処理タスク内において、初期化を行なう処理手順を割り込み処理タスクならびに初期化を必要とするタスクと独立に制御できる機構の構築を行うことができる。
【0176】
ならびに、タスクの初期化が発生した場合に、初期化処理においてはもはや復帰する必要がない退避処理部で退避された割り込み発生時に実行中であったタスクの種々の情報の復帰を行うことが無くなる。
【0177】
さらに初期化処理は、タスクマネージャのディスパッチ処理部で再度そのタスクが指示された際にのみ初期化処理から処理を開始することが可能となり、タスクマネージャでの初期化を含むタスクの管理がアドレスの管理ならびに制御方法のみを規定するものであるため、各処理タスクの呼出しアドレスに依存しない処理タスクの切換え制御をおこなうことができる。
【図面の簡単な説明】
【図1】本発明の実施の形態1に係る割り込み管理装置の構成を示す手段図
【図2】実施の形態1に係る割り込みコントローラの動作図
【図3】実施の形態1に係る割り込み受付可能管理手段に保持されている各割り込み要因の割り込みマスクレジスタの設定状態図
【図4】実施の形態1に係る割り込み要因判定処理手順の説明図
【図5】実施の形態1に係る多重割り込み制御部での処理手順の説明図
【図6】実施の形態1に係る割り込み処理タスクでの処理手順の説明図
【図7】本発明の実施の形態2に係る割り込み管理装置の構成を示す手段図
【図8】実施の形態2に係る実行タスク制御手段に格納される実行中のタスクの情報の状態図
【図9】本発明の実施の形態3に係る割り込み管理装置の構成を示す手段図
【図10】本発明の実施の形態4に係る割り込み管理装置の構成を示す手段図
【符号の説明】
100,700,900,1000 割り込み管理装置
101 割り込みハンドラ
102 割り込みコントローラ
103 割り込み受付可能管理部
104 割り込みマスク解除制御部
105 退避処理部
106 割り込み要因判定処理部
107 割り込みタスク制御処理部
108 タスク復帰処理部
109 多重割り込み制御部
110 割り込みマスク部
121 第1の割り込み要因
122 第Nの割り込み要因
123 処理タスク
124 第1のタスク
125 中断タスク
126 第Nのタスク
127 割り込み処理タスク
128 第1の割り込み処理タスク
129 第Rの割り込み処理タスク
130 第Nの割り込み処理タスク
701 実行タスク制御部
702 初期化タスク指示部
703 初期化タスク管理部
704 タスク管理制御部
901 タスク制御部
902 ディスパッチ処理部
903 タスクマネージャ
904 タスク中断処理部
1001 初期化制御部

Claims (13)

  1. 割り込みハンドラとは独立に、各割り込み要因の割り込みレベルより高い割り込みレベルの割り込み要因のみを割り込み許可とする割り込み受付可能状態を保持する割り込み受付可能管理手段と、
    割り込みハンドラとは独立に、ある割り込み処理中に新たな他の割り込み要因の割り込み許可を制御する割り込みマスク解除制御手段と、
    前記ある割り込みが発生したとき、当該ある割り込み要因に対するマスクを割り込み禁止状態にした割り込みマスクの状態及び前記割り込み受付可能状態を退避すると共に、退避された前記割り込み受付可能状態及び前記割り込みマスク解除手段の制御状態に基づいて、退避された前記割り込みマスクの状態を更新して前記他の割り込み要因についての割り込みマスクを設定する多重割り込み制御手段と、
    を具備することを特徴とする割り込み管理装置。
  2. 割り込みハンドラとは独立に、タスクの初期化処理を行うタスクの呼出しアドレスを格納する初期化タスク管理手段と、
    実行中のタスクの情報を保持する実行タスク制御手段と、
    初期化処理が必要となるタスクを設定する初期化タスク指示手段と、
    前記実行タスク制御手段及び前記初期化タスク指示手段の処理に応じて中断タスクに復帰する際に前記中断タスクの初期化処理の要否判定、初期化処理が必要なタスクに復帰する場合、前記初期化タスク管理手段に格納された初期化処理を行うタスクの呼出しを実行するタスク管理制御手段と、
    を具備することを特徴とする請求項1記載の割り込み管理装置。
  3. 処理対象となる処理タスクの判定を行い、処理タスク毎の呼出しアドレスを格納したタスク制御手段と、初期化タスク管理手段の処理に応じて呼び出す処理タスクの切換え処理を行うディスパッチ処理手段とを有するタスクマネージャと、
    退避された割り込み発生時に実行中のタスクの情報の復帰を行わず、前記ディスパッチ処理手段を呼び出すタスク中断処理手段と
    を具備し、
    前記タスク管理制御手段は、前記実行タスク制御手段及び前記初期化タスク指示手段の処理に応じて中断タスクに復帰する際に中断タスクの初期化処理の要否を判定、初期化処理が必要なタスクに復帰する場合は前記タスク中断処理手段を呼び出し、初期化処理が不要な場合は前記タスク復帰処理手段を呼び出す
    ことを特徴とする請求項2記載の割り込み管理装置。
  4. 前記タスクマネージャは、前記初期タスク管理手段の処理に応じてタスクの初期化制御を行う初期化制御手段を具備することを特徴とする請求項3記載の割り込み管理装置。
  5. 割り込みハンドラとは独立に、各割り込み要因の割り込みレベルより高い割り込みレベルの割り込み要因のみを割り込み許可とする割り込み受付可能状態を保持し、
    割り込みハンドラとは独立に、ある割り込み処理中に新たな他の割り込み要因の割り込み許可を制御し、
    前記ある割り込みが発生したとき、当該ある割り込み要因に対するマスクを割り込み禁止状態にした割り込みマスクの状態及び前記割り込み受付可能状態を退避すると共に、退避された前記割り込み受付可能状態及び前記割り込み許可制御状態に基づいて、退避された前記割り込みマスクの状態を更新して前記他の割り込み要因についての割り込みマスクを設定する
    ことを特徴とする割り込み管理方法。
  6. 割り込みハンドラとは独立に、タスクの初期化処理を行うタスクの呼出しアドレスを格納する初期化タスク管理情報と、実行中のタスクの情報と、初期化処理が必要となるタスクを設定する初期化タスク指示情報とを保持し、
    前記実行タスク制御情報及び前記初期化タスク指示情報に応じて中断タスクに復帰する際に、中断タスクの初期化処理の要否を判定行い、
    初期化処理が必要なタスクに復帰する場合に、前記初期化タスク管理情報に格納されている初期化処理を行うタスクの呼出しを行う
    ことを特徴とする請求項5記載の割り込み管理方法。
  7. 処理対象となる処理タスクの判定を行い、
    処理タスク毎の呼出しアドレスを格納した実行タスク制御情報及び初期化タスク管理情報に応じて、呼び出す処理タスクの切換え処理を行い、
    退避された割り込み発生時に実行中のタスクの情報の復帰を行わず前記切換え処理を行い、
    前記実行タスク制御情報及び前記初期化タスク指示情報に応じて中断タスクに復帰する際に、中断タスクの初期化処理の要否を判定行い、
    初期化処理が必要なタスクに復帰する場合に、前記タスク中断処理を行い、
    初期化処理が不要な場合はタスク復帰処理を行う
    ことを特徴とする請求項6記載の割り込み管理方法。
  8. 初期化タスク管理情報を用いてタスクの初期化制御を行い、
    実行タスク制御情報を用いてタスクの切換え処理を行う
    ことを特徴とする請求項7記載の割り込み管理方法。
  9. 請求項5から請求項8いずれかに記載の割り込み管理方法を実行するプログラムが記録されたことを特徴とする記録媒体。
  10. 請求項5から請求項8いずれかに記載の割り込み管理方法に応じた処理機能を具備することを特徴とするオペレーティングシステム。
  11. 請求項5から請求項8いずれかに記載の割り込み管理方法に応じた処理機能を具備することを特徴とする信号処理用プロセッサ。
  12. 請求項1から請求項4いずれかに記載の割り込み管理装置を具備することを特徴とする画像端末装置。
  13. 請求項12記載の画像端末装置を具備することを特徴とする移動体通信システム。
JP34729499A 1999-12-07 1999-12-07 割り込み管理装置及び割り込み管理方法 Expired - Fee Related JP3600095B2 (ja)

Priority Applications (7)

Application Number Priority Date Filing Date Title
JP34729499A JP3600095B2 (ja) 1999-12-07 1999-12-07 割り込み管理装置及び割り込み管理方法
CNB008038368A CN1162777C (zh) 1999-12-07 2000-12-07 中断管理装置和中断管理方法
EP00979973A EP1189137A4 (en) 1999-12-07 2000-12-07 METHOD AND DEVICE FOR INTERRUPTION MANAGEMENT
AU17333/01A AU1733301A (en) 1999-12-07 2000-12-07 Interruption managing device and interruption managing method
PCT/JP2000/008661 WO2001042918A1 (fr) 1999-12-07 2000-12-07 Procede et dispositif de gestion d'interruption
KR10-2001-7009918A KR100408351B1 (ko) 1999-12-07 2000-12-07 인터럽트 관리 장치, 인터럽트 관리 방법, 기록 매체, 오퍼레이팅 시스템, 신호 처리용 프로세서, 화상 단말 장치 및 이동체 통신 시스템
US09/890,940 US6820155B1 (en) 1999-12-07 2000-12-07 Interruption managing device and interruption managing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP34729499A JP3600095B2 (ja) 1999-12-07 1999-12-07 割り込み管理装置及び割り込み管理方法

Publications (2)

Publication Number Publication Date
JP2001166950A JP2001166950A (ja) 2001-06-22
JP3600095B2 true JP3600095B2 (ja) 2004-12-08

Family

ID=18389246

Family Applications (1)

Application Number Title Priority Date Filing Date
JP34729499A Expired - Fee Related JP3600095B2 (ja) 1999-12-07 1999-12-07 割り込み管理装置及び割り込み管理方法

Country Status (7)

Country Link
US (1) US6820155B1 (ja)
EP (1) EP1189137A4 (ja)
JP (1) JP3600095B2 (ja)
KR (1) KR100408351B1 (ja)
CN (1) CN1162777C (ja)
AU (1) AU1733301A (ja)
WO (1) WO2001042918A1 (ja)

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3672634B2 (ja) * 1994-09-09 2005-07-20 株式会社ルネサステクノロジ データ処理装置
GB2381891B (en) * 2001-11-12 2003-10-29 Mentor Graphics Testing the interrupt priority levels in a microprocessor
GB2381890B (en) * 2001-11-12 2003-10-29 Mentor Graphics Testing the interrupt sources of a microprocessor
CN100444594C (zh) * 2001-12-13 2008-12-17 松下电器产业株式会社 用于执行接收处理的通信装置和方法
US20030204655A1 (en) * 2002-04-24 2003-10-30 Schmisseur Mark A. Prioritizing vector generation in interrupt controllers
JP2004102324A (ja) * 2002-09-04 2004-04-02 Oki Electric Ind Co Ltd 割り込みプログラムモジュール、該モジュールを記録した記録媒体およびモニタのための割り込み処理が可能のコンピュータ
US7937691B2 (en) 2003-09-30 2011-05-03 International Business Machines Corporation Method and apparatus for counting execution of specific instructions and accesses to specific data locations
US20050071610A1 (en) * 2003-09-30 2005-03-31 International Business Machines Corporation Method and apparatus for debug support for individual instructions and memory locations
US7395527B2 (en) 2003-09-30 2008-07-01 International Business Machines Corporation Method and apparatus for counting instruction execution and data accesses
US20050071612A1 (en) * 2003-09-30 2005-03-31 International Business Machines Corporation Method and apparatus for generating interrupts upon execution of marked instructions and upon access to marked memory locations
US7373637B2 (en) 2003-09-30 2008-05-13 International Business Machines Corporation Method and apparatus for counting instruction and memory location ranges
US20050071516A1 (en) * 2003-09-30 2005-03-31 International Business Machines Corporation Method and apparatus to autonomically profile applications
US8381037B2 (en) 2003-10-09 2013-02-19 International Business Machines Corporation Method and system for autonomic execution path selection in an application
US7421681B2 (en) 2003-10-09 2008-09-02 International Business Machines Corporation Method and system for autonomic monitoring of semaphore operation in an application
US7526757B2 (en) 2004-01-14 2009-04-28 International Business Machines Corporation Method and apparatus for maintaining performance monitoring structures in a page table for use in monitoring performance of a computer program
US7895382B2 (en) * 2004-01-14 2011-02-22 International Business Machines Corporation Method and apparatus for qualifying collection of performance monitoring events by types of interrupt when interrupt occurs
US7415705B2 (en) 2004-01-14 2008-08-19 International Business Machines Corporation Autonomic method and apparatus for hardware assist for patching code
US7197586B2 (en) * 2004-01-14 2007-03-27 International Business Machines Corporation Method and system for recording events of an interrupt using pre-interrupt handler and post-interrupt handler
US7421684B2 (en) 2004-03-22 2008-09-02 International Business Machines Corporation Method and apparatus for autonomic test case feedback using hardware assistance for data coverage
JP4241462B2 (ja) * 2004-03-26 2009-03-18 株式会社デンソー 制御ユニットおよびマイクロコンピュータ
US7080179B1 (en) * 2004-03-26 2006-07-18 Foundry Networks, Inc. Multi-level interrupts
DE102006036107A1 (de) * 2006-04-11 2007-10-18 Siemens Ag Verfahren zur Ermittlung einer Aufgabenerlaubnis
DE102008062692B4 (de) * 2008-12-17 2013-11-14 Texas Instruments Deutschland Gmbh Eingebettetes Mikrocontrollersystem und Verfahren zur Konfiguration eines eingebetteten Mikrocontrollersystems mit gesteuertem Schaltmodus
JP2010204874A (ja) * 2009-03-03 2010-09-16 Nec Corp スレッド制御システム、方法及びプログラム
WO2012086288A1 (ja) * 2010-12-20 2012-06-28 インターナショナル・ビジネス・マシーンズ・コーポレーション 例外の制御方法、システムおよびプログラム
US9710270B2 (en) 2010-12-20 2017-07-18 International Business Machines Corporation Exception control method, system, and program
US9104561B2 (en) 2012-09-13 2015-08-11 Microsoft Technology Licensing, Llc Failure mode identification and reporting
JP6902948B2 (ja) * 2017-07-13 2021-07-14 日立Astemo株式会社 車両制御装置
EP3462312B1 (en) * 2017-09-29 2022-08-17 ARM Limited Permitting unaborted processing of transaction after exception mask update instruction
CN110399324A (zh) * 2019-06-28 2019-11-01 苏州浪潮智能科技有限公司 中断转换器及中断转换方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1397438A (en) * 1971-10-27 1975-06-11 Ibm Data processing system
JPS60128535A (ja) 1983-12-16 1985-07-09 Nec Corp 割り込み処理装置
JPS63310029A (ja) 1987-06-11 1988-12-19 Mitsubishi Electric Corp 割込み処理システム
JPH0341520A (ja) 1989-07-10 1991-02-22 Nec Corp 割り込み制御方式
JPH05113887A (ja) 1991-10-22 1993-05-07 Nec Corp コンピユータシステム
JP3209560B2 (ja) 1992-02-12 2001-09-17 富士通コミュニケーション・システムズ株式会社 マイクロプロセッサ・システムの割込管理方法
JP2856681B2 (ja) 1994-01-27 1999-02-10 インターナショナル・ビジネス・マシーンズ・コーポレイション 外部事象を処理する方法およびシステム
JPH08297581A (ja) 1995-02-28 1996-11-12 Nec Corp リアルタイム・オペレーティングシステムにおける割り込み管理方式
US5768599A (en) * 1995-02-28 1998-06-16 Nec Corporation Interrupt managing system for real-time operating system
DE19535546B4 (de) * 1995-09-25 2004-04-08 Siemens Ag Verfahren zum Betreiben eines durch ein Realzeit-Betriebssystem gesteuerten Realzeit-Computersystems
US5995745A (en) * 1996-12-23 1999-11-30 Yodaiken; Victor J. Adding real-time support to general purpose operating systems
US6499078B1 (en) * 1999-07-19 2002-12-24 Microsoft Corporation Interrupt handler with prioritized interrupt vector generator
US6633942B1 (en) * 1999-08-12 2003-10-14 Rockwell Automation Technologies, Inc. Distributed real-time operating system providing integrated interrupt management

Also Published As

Publication number Publication date
EP1189137A1 (en) 2002-03-20
KR100408351B1 (ko) 2003-12-03
KR20010103761A (ko) 2001-11-23
CN1340171A (zh) 2002-03-13
CN1162777C (zh) 2004-08-18
WO2001042918A1 (fr) 2001-06-14
EP1189137A4 (en) 2006-12-13
US6820155B1 (en) 2004-11-16
AU1733301A (en) 2001-06-18
JP2001166950A (ja) 2001-06-22

Similar Documents

Publication Publication Date Title
JP3600095B2 (ja) 割り込み管理装置及び割り込み管理方法
KR100848603B1 (ko) 데이터 처리장치와 복귀상태의 저장방법
US20060259675A1 (en) Method for delivering interrupts to user mode drivers
US6499078B1 (en) Interrupt handler with prioritized interrupt vector generator
US7523229B2 (en) Memory protection during direct memory access
JP3093293B2 (ja) 情報処理装置の割り込み方式
JPH1115675A (ja) 割込みコントローラ及び制御システム
JP3970609B2 (ja) プロセッサシステム
JP2001117786A (ja) プロセススケジューリング装置およびプロセススケジューリング方法
JP2004078683A (ja) コンピュータシステムおよび共有メモリ制御方法
JP4057769B2 (ja) 割り込み管理装置及び割り込み管理方法
JP2003058381A (ja) プログラムによる例外処理設定を可能にしたプロセッサ
JPH0895798A (ja) データ処理装置
JPS6290728A (ja) 割込処理方法
JPH11272632A (ja) マルチプロセッサシステム
JPH05324569A (ja) 割り込み制御方式
JPH04241032A (ja) システムコール実行装置
JPH0728544A (ja) コンピュータシステム
JP2001229038A (ja) マルチオペレーテング計算機システム
JPH0496167A (ja) マルチプロセッサシステムの割込み方式
JP2871171B2 (ja) マイクロコンピュータ
JPH05108374A (ja) マルチタスク実行装置
JPH10247161A (ja) メモリ管理方式
CN116361079A (zh) 堆栈切换方法、堆栈切换装置、处理器以及存储介质
JPH1074148A (ja) 割り込み処理装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040302

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040430

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040915

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20080924

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20080924

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20090924

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20090924

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20100924

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20110924

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20120924

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20130924

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees