JP2009282987A - 割込みスケジューリング方法 - Google Patents

割込みスケジューリング方法 Download PDF

Info

Publication number
JP2009282987A
JP2009282987A JP2009123423A JP2009123423A JP2009282987A JP 2009282987 A JP2009282987 A JP 2009282987A JP 2009123423 A JP2009123423 A JP 2009123423A JP 2009123423 A JP2009123423 A JP 2009123423A JP 2009282987 A JP2009282987 A JP 2009282987A
Authority
JP
Japan
Prior art keywords
interrupt
priority
target process
current process
target
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2009123423A
Other languages
English (en)
Inventor
Kyu-Ho Park
パク,キュホ
Ju-Pyung Lee
リ,ジュピョン
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.)
Korea Advanced Institute of Science and Technology KAIST
Original Assignee
Korea Advanced Institute of Science and Technology KAIST
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 Korea Advanced Institute of Science and Technology KAIST filed Critical Korea Advanced Institute of Science and Technology KAIST
Publication of JP2009282987A publication Critical patent/JP2009282987A/ja
Pending legal-status Critical Current

Links

Classifications

    • 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
    • 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/22Microcontrol or microprogram 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
    • 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
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues

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)

Abstract

【課題】本発明は割込みスケジューリング方法に関する。
【解決手段】本発明による割込みスケジューリング方法は、割込み発生時、ウェイクアップされるターゲットプロセスを実行可能待ち行列に進入させないで、ウェイクアップされたターゲットプロセスと割込み発生以前に行った現在プロセスとの優先順位を直接比較して、その比較結果によって再スケジューリングを設定する段階及び再スケジューリングが設定されたか否かによって現在プロセスからターゲットプロセスへ直接コンテキストスイッチングをする段階を含む。本発明の割込みスケジューリング方法によれば、ウェイクアップされたターゲットプロセスを実行可能待ち行列に進入させる過程と、実行可能待ち行列で優先順位が一番高いプロセスを選択する過程を省略することにより、コンピュータシステムのオペレーティングシステムで割込みによって発生される先取り延期時間を最小化させることができる。
【選択図】図3

Description

本発明は、割込みスケジューリング方法に関する。
一般的に、コンピュータシステムのオペレーティングシステムで割込みが発生した時、割込みを処理するために呼出される割込みハンドラ関数は、割込み発生時、実行中であったプロセスのコンテキスト(Context)で実行される。割込みハンドラ関数は、場合によって、当該の割込みを待っていたターゲットプロセスをウェイクアップ(wake−up)するルーチン(routine)を含むことができる。割込みハンドラ関数によってウェイクアップされたターゲットプロセスは、オペレーティングシステムスケジューラーによって選択されて、直ちに実行されるように実行可能待ち行列(Ready queue)に進入するようになる。オペレーティングシステムスケジューラーは、割込みハンドラ関数が終わった後、実行可能待ち行列にある一連のプロセスの中、優先順位が一番高いプロセスを選択して実行させる。この時、割込み発生以前に実行中であったプロセスの優先順位が一番高い場合、カーネルはプリエンプション(先取り)しない。しかし、ターゲットプロセスが割込みハンドラ関数によってウェイクアップされる場合、割込み発生以前に実行中であったプロセスはターゲットプロセスにより先取りされる。
以下では、添付された図を参照しながら、従来の割込みスケジューリング方法について説明する。
図1は、従来の割込みスケジューリング方法を概略的に示した流れ図である。
図1を参照すれば、従来の割込みスケジューリング方法は、先にコンピュータオペレーティングシステムで割込みが発生されれば(101)、現在実行中のプロセスの実行をしばらく中断させて、現在実行中のプロセスのコンテキストで割込みハンドラ関数の実行が始まる(103)。
以後、割込みハンドラ関数は当該の割込みを待ちながら、スリップ(Sleep)状態にあるターゲットプロセスをウェイクアップする(105)。
以後、ターゲットプロセスはいつでもオペレーティングシステムスケジューラーによって選択されて直ちに実行されるように、実行可能待ち行列に進入してスケジューラーが選択するのを待つようになる(107)。
以後、カーネル(kernel)はターゲットプロセスの優先順位が現在実行中のプロセスの優先順位より高いかどうかチェックする。ターゲットプロセスの優先順位が現在実行中のプロセスの優先順位より高い場合、再スケジューリングを設定して以後にオペレーティングシステムスケジューラー関数が呼出されることができるようにする(111)。再スケジューリングが設定された後、割込みハンドラ関数の実行が終わる(113)。一方、現在実行中のプロセスの優先順位がターゲットプロセスの優先順位より高い場合、割込みハンドラ関数の実行が直ちに終わる(113)。
割込みハンドラ関数の実行を終了(113)した後、再スケジューリングが設定されたか否かを判別する(115)。ここで、再スケジューリングが設定(111)された場合、再スケジューリングが必要なので、オペレーティングシステムスケジューラー関数を呼び出して実行可能待ち行列で優先順位が一番高いプロセスを選択する(117)。この時、実行可能待ち行列にあるプロセスの中、優先順位が一番高いターゲットプロセスが選択されることができる。その後、オペレーティングシステムスケジューラー関数は、現在実行中のプロセスからターゲットプロセスへコンテキストスイッチングを実行する(119)。一方、再スケジューリングが設定されていない場合、現在実行中のプロセスは割込み発生以前に実行した演算を継続して進行するようになる(121)。
したがって、従来の割込みスケジューリング方法は、ターゲットプロセスがウェイクアップされる時点からターゲットプロセスと現在実行中のプロセスとの優先順位を比べる過程までの大部分の場合、ターゲットプロセスが実行可能待ち行列に進んだ後にオペレーティングシステムスケジューラーによって、次に実行されるプロセスとして選択されて現在実行中のプロセスを先取りするようになる。すなわち、ターゲットプロセスが現在実行中のプロセスを先取りすることが明らかである場合、ウェイクアップされたターゲットプロセスを実行可能待ち行列に進入させてターゲットプロセスを処理するためのオペレーティングシステムスケジューラーの呼出過程さえ不必要になることを分かる。よって、従来の割込みスケジューリング方法は割込みの発生時点からターゲットプロセスの実行までの先取り延期時間を不必要に必要とする問題点を持つ。
このような問題点を解決するための本発明は、割込みの発生時点からターゲットプロセスの実行を始めるまでの先取り遅延時間を最小化させる割込みスケジューリング方法を提供することを目的とする。
また、本発明による割込みスケジューリング方法を実行するためのプログラムが記録された、コンピュータで読み取り可能な記録媒体を提供することを目的とする。
本発明による割込みスケジューリング方法は、割込み発生時、ウェイクアップされるターゲットプロセスを実行可能待ち行列に進入させないで、ウェイクアップされたターゲットプロセスと割込み発生以前に実行されていた現在プロセスとの優先順位を直接比較して、その比較結果によって再スケジューリングを設定する段階及び再スケジューリング設定されたか否かによって現在プロセスからターゲットプロセスへ直接コンテキストスイッチングをする段階を含む。
コンテキストスイッチングをする段階以後、現在プロセスが実行可能待ち行列に進入されたか否かを判別する段階、及び現在プロセスが実行可能待ち行列に進入されている場合、オペレーティングシステムスケジューラーを実行させて、現在プロセスが実行可能待ち行列に進入されていない場合、現在プロセスを実行可能待ち行列に進入させた後、オペレーティングシステムスケジューラーを実行させる段階をさらに含むのが好ましい。
再スケジューリングを設定する段階は、ターゲットプロセスがウェイクアップされたか否かを判別する段階、ターゲットプロセスがウェイクアップされた場合、ウェイクアップされたタケップロセスの優先順位と現在プロセスの優先順位とを直接比較する段階、及びターゲットプロセスの優先順位が現在プロセスの優先順位より高い場合、再スケジューリングを設定した後、割込みハンドラの実行を終了し、ターゲットプロセスの優先順位が現在プロセスの優先順位より低い場合、ターゲットプロセを実行可能待ち行列に進入させた後、割込みハンドラの実行を終了する段階を含むのが好ましい。
コンテキストスイッチングをする段階は、再スケジューリングが設定されたか否かを判別する段階、及び再スケジューリングが設定された場合、現在プロセスからターゲットプロセスへ直接コンテキストスイッチングをし、再スケジューリングが設定されていない場合、現在プロセスの演算を進行する段階を含むのが好ましい。
本発明による割込みスケジューリングの方法は、割込み発生時、ウェイクアップされるターゲットプロセスの実行可能待ち行列に進入させず、ウェイクアップされたターゲットプロセスと割込み発生以前に実行していた現在プロセスとの優先順位を直接比較する段階、及びターゲットプロセスの優先順位が現在プロセスの優先順位より高い場合、現在プロセスからターゲットプロセスへ直接コンテキストスイッチングをして、ターゲットプロセスの優先順位が現在プロセスの優先順位より低い場合、現在プロセスを実行する段階を含む。
コンテキストスイッチングをする場合、現在プロセスが実行可能待ち行列に進入されたか否かを判別する段階、及び現在プロセスが実行可能待ち行列に進入されている場合、オペレーティングシステムスケジューラーを実行させて、現在プロセスが実行可能待ち行列に進入されていない場合、現在プロセスを実行可能待ち行列に進入させた後、オペレーティングシステムスケジューラーを実行させる段階をさらに含むのが好ましい。
ターゲットプロセスの優先順位が現在プロセスの優先順位より低い場合、ターゲットプロセスを実行可能待ち行列に進入させる段階、及び割込みハンドラの実行を終了して、現在プロセスの演算を進行する段階を含むのが好ましい。
本発明による割込みスケジューリング方法を実行するためのプログラムが記録された、コンピュータで読み取り可能な記録媒体を含むのが好ましい。
本発明の割込みスケジューリング方法によれば、ウェイクアップされたターゲットプロセスを実行可能待ち行列に進入させる過程と、実行可能待ち行列で優先順位が一番高いプロセスを選択する過程を省略することによって、コンピュータシステムのオペレーティングシステムで割込みにより発生される先取り延期時間を最小化させることができる。
従来の割込みスケジューリング方法を示す流れ図である。 本発明の一実施例による割込みスケジューリング方法を概略示す図である。 本発明の第一実施例による割込みスケジューリング方法を具体的に示す図である。 本発明の第一実施例による割込みスケジューリング方法を具体的に示す図である。 本発明の第2実施例による割込みスケジューリング方法を概略示す図である。 本発明の第2実施例による割込みスケジューリング方法を具体的に示す図である。
以下には、添付された図を参照しながら、本発明の好ましい第一実施例による割込みスケジューリング方法について説明する。なお、以降で述べる割込みハンドラ(又は、割込みハンドラ関数)およびオペレーティングスケジューラー(又は、オペレーティングスケジューラー関数)は、コンピュータのオペレーティングシステム上で実行するサブルーチンであり、これらの実質的な処理は、コンピュータの演算処理ユニットが行う。また、以降で述べるカーネルの処理も、コンピュータの演算処理ユニットを用いて実質的に実行される。
図2は、本発明の第一実施例による割込みスケジューリング方法を概略的に示した図である。
図2を参照すれば、本発明の第一実施例による割込みスケジューリング方法は、コンピュータシステムオペレーティングシステムで割込み発生時、ウェイクアップされるターゲットプロセスと割込み発生以前に行った現在のプロセスとの優先順位を直接比較して、その比較結果によって再スケジューリングを設定する段階(S21)、再スケジューリング設定されたか否かによって、現在プロセスからターゲットプロセスへ直接コンテキストスイッチングをする段階(S22)を含む。
図3は、図2で示された割込みスケジューリング方法をさらに具体的に示した図である。
図3を参照すれば、先ず、コンピュータシステムのオペレーティングシステムで割込みが発生(300)すると、現在実行中のプロセスの実行がしばらく中断され、現在プロセスのコンテキストで割込みハンドラ関数による実行が始まる(301)。この時、割込みハンドラ関数は当該割込みを待ちながらスリープ(Sleep)状態にあるターゲットプロセスをウェイクアップする。
次に、割込みハンドラ関数によってターゲットプロセスがウェイクアップされたかを判別する(303)。ターゲットプロセスがウェイクアップされた場合、ターゲットプロセスの優先順位と現在プロセスの優先順位とのうち、どのプロセスの優先順位が高いのかを比較する(305)。この時、ターゲットプロセスを実行可能待ち行列に進入させる過程無しで、ウェイクアップされたターゲットプロセスと現在プロセスとの優先順位を直接比較する。
比較結果、ターゲットプロセスの優先順位が現在プロセスの優先順位より高い場合、割込みハンドラの終了後、再スケジューリングをしなければならなくなること意味するので、再スケジューリングを設定する(307)。再スケジューリングを設定(307)した後、割込みハンドラ関数の実行が終わる(309)。
一方、ターゲットプロセスの優先順位が実行中のプロセスの優先順位より低い場合、ターゲットプロセスは実行可能待ち行列に進入して、以後、割込みハンドラ関数の実行が終わる(309)。
図1に示した既存の割込みスケジューリング方法と比較して見ると、本発明による割込みスケジューリング方法は、割込み発生段階(300)から再スケジューリングが設定される段階(307)までの過程において、割込みハンドラ関数によってウェイクアップされたターゲットプロセスが実行可能待ち行列に進入される過程が省略される。ターゲットプロセスの優先順位が実行可能待ち行列にある現在プロセスの優先順位より高い場合、ターゲットプロセスが先取りされることは明らかである。これによって、ターゲットプロセスの実行が終了されるとき、実行可能待ち行列からスリープ待ち行列(sleep queue)に移動される。したがって、ターゲットプロセスが実行可能待ち行列に進む必要がなくなる。
次に、割込みハンドラ関数の実行終了(309)以後、カーネルは再スケジューリングが設定されたかをチェックする(311)。再スケジューリングが設定された場合、オペレーティングシステムスケジューラー関数を実行して、実行可能待ち行列にあるプロセスのうち、優先順位が一番高いプロセスを選択して、現在プロセスで選択されたプロセスへコンテキストスイッチングを実施するのではなく、オペレ-ションシステムスケジューラーにより実行可能待ち行列で優先順位が一番高いプロセスを選択する過程なしで、現在プロセスからターゲットプロセスへコンテキストスイッチングを直ちに実行する(313)。一方、再スケジューリングの設定がされてない場合、現在実行中のプロセスのコンテキストがそのまま維持され、割込み発生以前に実行しているプロセスの演算は継続して進行する(305)。
図1に示した既存の割込みスケジューリング方法と比較して見ると、本発明による割込みスケジューリング方法において、割込み発生によりウェイクアップされたターゲットプロセスが割込み発生以前に実行中であった現在プロセスを先取りして実行される場合、割込みハンドラ実行が終わる段階(309)からターゲットプロセスへコンテキストスイッチングされる段階(313)までの間において、オペレーティングシステムスケジューラー関数によって実行可能待ち行列で優先順位が一番高いプロセスを選択する過程とオペレ-ションシステムスケジューラー関数を呼び出して実行可能待ち行列から優先順位が一番高いプロセスを選択する過程が省略される。
次に、現在プロセスからターゲットプロセスへコンテキストスイッチングが実行(313)された後、図4に示したように、オペレーティングシステムスケジューラーの実行が始まる場合(400)、現在プロセスが実行可能待ち行列に進入されていない状態で先取りされてしまうと、問題が発生するおそれがある。したがって、実質的なスケジューラー関数の演算が実行される以前に、現在プロセスが実行可能待ち行列に進入されているかを確認する(401)。この時、現在プロセスが実行可能待ち行列に進入されていない場合、現在プロセスを実行可能待ち行列に進入させた後、オペレーティングシステムスケジューラーの実質的な演算が継続して実行されるようにする(405)。また、現在プロセスが実行可能待ち行列に進入されている場合、オペレーティングシステムスケジューラーの演算が直ちに実行されるようにする(405)。
本発明の割込みスケジューリング方法によれば、割込み発生段階とターゲットプロセスへのコンテキストスイッチング段階との間において、ウェイクアップされたターゲットプロセスを実行可能待ち行列に進入させる過程と、実行可能待ち行列で優先順位が一番高いプロセスを選択する過程を省略することで、割込みによって発生する先取り延期時間を最小化させることができる。
すなわち、ターゲットプロセスが現在プロセスの優先順位より高い場合、既存のターゲットプロセスの先取り過程の中、論理的に不必要な過程であるターゲットプロセスの実行可能待ち行列への進入を遅延させることで、ターゲットプロセスの先取り延期時間を減らすことができる。また、ターゲットプロセスが現在プロセスの優先順位より低い場合、すなわち直ちに先取りしなければならないプロセスが無い場合、既存の方法によって実行することでオペレーティングシステムをそのまま実行させることができる。
以下、添付された図を参照しながら本発明の好ましい第2実施例による割込みスケジューリング方法について説明する。
図5は、本発明の第2実施例による割込みスケジューリング方法を概略に示した図である。
図5を参照すると、本発明による割込みスケジューリング方法は、割込み発生時、ウェイクアップされるターゲットプロセスを実行可能待ち行列に進入させないで、ウェイクアップされたターゲットプロセスと割込み発生以前に実行していた現在プロセスとの優先順位を直接比較する段階(S51)、及びターゲットプロセスの優先順位が現在プロセスの優先順位より高い場合、現在プロセスからターゲットプロセスへ直接コンテキストスイッチングをして、ターゲットプロセスの優先順位が現在プロセスの優先順位より低い場合、現在プロセスを実行する段階(S52)を含む。
図6は、本発明の第2実施例による割込みスケジューリング方法をより詳しく説明するために示した図である。
図6を参照すると、本発明の第2実施例による割込みスケジューリング方法は、第1実施例による割込みスケジューリング方法と比較して次のような差異がある。
図3を参照して説明した第1実施例による割込みスケジューリング方法では、ターゲットプロセスの優先順位が現在プロセスの優先順位より高い場合、再スケジューリングを設定したが、第2実施例による割込みスケジューリング方法では、ターゲットプロセスと現在プロセスとの優先順位を比較して(605)、その結果、ターゲットプロセスの優先順位がもっと高ければ、再スケジューリングを設定するのではなく、現在プロセスからターゲットプロセスへコンテキストスイッチングを直ちに実行する(607)。これによって、ターゲットプロセスの先取り延期時間をより效果的に減らすことができるようになる。
上述した差異を除いた方法は、本発明の第1実施例による割込みスケジューリング方法と同一であるので、上述した差異を除いた割込みスケジューリング方法に関する詳細な説明は、第1実施例による割込みスケジューリング方法に関する詳細な明と同様である。
本発明による割込みスケジューリング方法を実行させるためのプログラムが記録された、コンピュータで読み取り可能な記録媒体に関する説明は、本発明の一実施例による割込みスケジューリング方法についての詳細な説明と同様である。

Claims (8)

  1. 割込み発生時、ウェイクアップされるターゲットプロセスを実行可能待ち行列(ready queue)に進入させないで、前記ウェイクアップされたターゲットプロセスと前記割込み発生以前に実行されていた現在プロセスとの優先順位を直接比較して、その比較結果によって再スケジューリングを設定する段階と、
    前記再スケジューリングが設定されたか否かによって、前記現在プロセスから前記ターゲットプロセスへ直接コンテキストスイッチング(context switching)をする段階と、
    を含む割込みスケジューリング方法。
  2. 前記コンテキストスイッチングをする段階以後、
    前記現在プロセスが実行可能待ち行列に進入されたか否かを判別する段階と、
    前記現在プロセスが実行可能待ち行列に進入されている場合、オペレーティングシステムスケジューラーを実行させ、前記現在プロセスが前記実行可能待ち行列に進入されていない場合、前記現在プロセスを前記実行可能待ち行列に進入させた後、前記オペレーティングシステムスケジューラーを実行させる段階と、
    をさらに含む請求項1に記載の割込みスケジューリング方法。
  3. 前記再スケジューリングを設定する段階は、
    前記ターゲットプロセスがウェイクアップされたか否かを判別する段階と、
    前記ターゲットプロセスがウェイクアップされた場合、前記ウェイクアップされたターゲットプロセスの優先順位と前記現在プロセスの優先順位とを直接比較する段階と、
    前記ターゲットプロセスの優先順位が前記現在プロセスの優先順位より高い場合、前記再スケジューリングを設定した後、割込みハンドラの実行を終了して、前記ターゲットプロセスの優先順位が前記現在プロセスの優先順位より低い場合、前記ターゲットプロセスを前記実行可能待ち行列に進入させた後、前記割込みハンドラの実行をに終了する段階と、
    を含む請求項1に記載の割込みスケジューリング方法。
  4. 前記コンテキストスイッチングをする段階は、
    前記再スケジューリングが設定されたか否かを判別する段階と、
    前記再スケジューリングが設定された場合、前記現在プロセスから前記ターゲットプロセスへ直接コンテキストスイッチングをし、前記再スケジューリングが設定されていない場合、前記現在プロセスの演算を継続して進行する段階と、
    を含む請求項1に記載の割込みスケジューリング方法。
  5. 割込み発生時、ウェイクアップされるターゲットプロセスを実行可能待ち行列(ready queue)に進入させないで、前記ウェイクアップされたターゲットプロセスと前記割込み発生以前に実行していた現在プロセスとの優先順位を直接比較する段階と、
    前記ターゲットプロセスの優先順位が前記現在プロセスの優先順位より高い場合、前記現在プロセスから前記ターゲットプロセスへ直接コンテキストスイッチング(context switching)して、前記ターゲットプロセスの優先順位が前記現在プロセスの優先順位より低い場合、前記現在プロセスを実行する段階と、
    を含む割り込みスケジューリング方法。
  6. 前記コンテキストスイッチングをする場合,
    前記現在プロセスが実行可能待ち行列に進入されたのか否かを判別する段階と、
    前記現在プロセスが実行可能待ち行列に進入されている場合、オペレーティングシステムスケジューラーを実行させて、前記現在プロセスが前記実行可能待ち行列に進入されていない場合、前記現在プロセスを前記実行可能待ち行列に進入させた後、前記オペレーティングシステムスケジューラーを実行させる段階と、
    をさらに含む請求項5に記載の割込みスケジューリング方法。
  7. 前記ターゲットプロセスの優先順位が前記現在プロセスの優先順位より低い場合、
    前記ターゲットプロセスを前記実行可能待ち行列に進入させる段階と、
    割込みハンドラの実行を終了して、前記現在プロセスの演算を進行する段階と、
    を含む請求項5に記載の割込みスケジューリング方法。
  8. 請求項1乃至4の何れかの割込みスケジューリング方法を実行するためのプログラムが記録されたコンピュータで読み取り可能な記録媒体。
JP2009123423A 2008-05-21 2009-05-21 割込みスケジューリング方法 Pending JP2009282987A (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080047036A KR100959548B1 (ko) 2008-05-21 2008-05-21 인터럽트 스케줄링 방법

Publications (1)

Publication Number Publication Date
JP2009282987A true JP2009282987A (ja) 2009-12-03

Family

ID=41342909

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009123423A Pending JP2009282987A (ja) 2008-05-21 2009-05-21 割込みスケジューリング方法

Country Status (3)

Country Link
US (1) US20090292846A1 (ja)
JP (1) JP2009282987A (ja)
KR (1) KR100959548B1 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9418005B2 (en) 2008-07-15 2016-08-16 International Business Machines Corporation Managing garbage collection in a data processing system
US9176783B2 (en) 2010-05-24 2015-11-03 International Business Machines Corporation Idle transitions sampling with execution context
US8843684B2 (en) 2010-06-11 2014-09-23 International Business Machines Corporation Performing call stack sampling by setting affinity of target thread to a current process to prevent target thread migration
US8799872B2 (en) 2010-06-27 2014-08-05 International Business Machines Corporation Sampling with sample pacing
KR20120065097A (ko) * 2010-12-10 2012-06-20 한국전자통신연구원 단말 가상화 환경에서 사용자 입력 처리 성능 향상을 위한 인터럽트 처리 장치 및 그 방법
US8799904B2 (en) 2011-01-21 2014-08-05 International Business Machines Corporation Scalable system call stack sampling
JP6615726B2 (ja) * 2016-09-16 2019-12-04 株式会社東芝 情報処理装置、情報処理方法及びプログラム
CN110673937B (zh) * 2019-09-19 2022-11-15 惠州志顺电子实业有限公司 单片机及其同步异步控制方法
CN111813531B (zh) * 2020-08-31 2020-11-27 北京国科环宇科技股份有限公司 一种操作系统时钟调度方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0328933A (ja) * 1989-06-26 1991-02-07 Matsushita Electric Ind Co Ltd タスク制御方法
JP2001323840A (ja) * 2000-05-12 2001-11-22 Keihin Corp 自動車用制御ユニット
JP2002318780A (ja) * 2001-04-19 2002-10-31 Toyoda Mach Works Ltd リアルタイム制御システム
JP2007249357A (ja) * 2006-03-14 2007-09-27 Toyota Motor Corp 情報処理装置、分散処理システム及びタスク管理方法

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5414858A (en) * 1992-12-11 1995-05-09 International Business Machines Corporation System and method for dynamically varying between interrupt and polling to service requests of computer peripherals
US5630049A (en) * 1994-11-30 1997-05-13 Digital Equipment Corporation Method and apparatus for testing software on a computer network
US5675800A (en) * 1994-11-30 1997-10-07 Digital Equipment Corporation Method and apparatus for remotely booting a computer system
JP2002014841A (ja) * 2000-06-30 2002-01-18 Esol Co Ltd デバッグカーネルシステム
US7159216B2 (en) * 2001-11-07 2007-01-02 International Business Machines Corporation Method and apparatus for dispatching tasks in a non-uniform memory access (NUMA) computer system
KR20030042069A (ko) * 2001-11-20 2003-05-28 주식회사 하이닉스반도체 인터럽트 제어기 및 인터럽트 제어 방법
US7448036B2 (en) * 2002-05-02 2008-11-04 International Business Machines Corporation System and method for thread scheduling with weak preemption policy
US7003610B2 (en) * 2002-09-20 2006-02-21 Lsi Logic Corporation System and method for handling shared resource writes arriving via non-maskable interrupts (NMI) in single thread non-mission critical systems with limited memory space
KR20050062298A (ko) * 2003-12-20 2005-06-23 엘지전자 주식회사 고속의 인터럽트 처리기 및 처리 방법
JP2005301666A (ja) * 2004-04-12 2005-10-27 Seiko Epson Corp 情報処理装置
US7765547B2 (en) * 2004-11-24 2010-07-27 Maxim Integrated Products, Inc. Hardware multithreading systems with state registers having thread profiling data
JP4387970B2 (ja) * 2005-03-31 2009-12-24 富士通株式会社 データ入出力プログラム,装置,および方法
JP2006309311A (ja) * 2005-04-26 2006-11-09 Oki Electric Ind Co Ltd 割込制御回路
US8527958B2 (en) * 2005-05-16 2013-09-03 Texas Instruments Incorporated Profiling operating context and tracing program on a target processor

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0328933A (ja) * 1989-06-26 1991-02-07 Matsushita Electric Ind Co Ltd タスク制御方法
JP2001323840A (ja) * 2000-05-12 2001-11-22 Keihin Corp 自動車用制御ユニット
JP2002318780A (ja) * 2001-04-19 2002-10-31 Toyoda Mach Works Ltd リアルタイム制御システム
JP2007249357A (ja) * 2006-03-14 2007-09-27 Toyota Motor Corp 情報処理装置、分散処理システム及びタスク管理方法

Also Published As

Publication number Publication date
US20090292846A1 (en) 2009-11-26
KR100959548B1 (ko) 2010-05-27
KR20090120970A (ko) 2009-11-25

Similar Documents

Publication Publication Date Title
JP2009282987A (ja) 割込みスケジューリング方法
US8347296B2 (en) Priority control apparatus and priority control method
US8909962B2 (en) System and method for controlling central processing unit power with guaranteed transient deadlines
CN108595256B (zh) 一种基于risc-v架构芯片采用软件实现中断嵌套的方法
JP5411587B2 (ja) マルチスレッド実行装置、マルチスレッド実行方法
AU2003298240A1 (en) Method and apparatus for switching between processes
JP2009541848A5 (ja)
JP2011508328A (ja) データ・プロセッサのパフォーマンス予測
JP2009163658A (ja) 入出力制御装置およびそのファームウェア更新方法
US20170212852A1 (en) Method and accelerator unit for interrupt handling
JP2001160041A (ja) オンラインシステムのcpu負荷軽減方式
JP2005228300A (ja) 割込み処理制御の方法と装置
JP5195408B2 (ja) マルチコアシステム
JP2006146758A (ja) コンピュータシステム
JP2001236236A (ja) タスク制御装置およびそのタスクスケジューリング方法
KR100930009B1 (ko) 인터럽트 처리방법
JP3830133B2 (ja) 電力制御装置及び方法並びに電力制御プログラム
JP2000172514A (ja) タスク管理装置及びタスクスケジューリング方法
TWI463406B (zh) 具搶占功能的即時中斷處理系統及其方法
JP2011048619A (ja) プロセッサ
JP2003337634A (ja) コンピュータ装置及びプロセッサ制御方法及びプロセッサ制御方法をコンピュータに実行させるためのプログラム及びプロセッサ制御方法をコンピュータに実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体
JPH06149592A (ja) マイクロコンピュータの割り込み処理方式
JPH11249908A (ja) 割込処理方法
KR20140070308A (ko) 병렬 처리를 위한 재구성형 프로세서 및 재구성형 프로세서의 동작 방법
TW202338566A (zh) 降低中央處理單元等待之功耗之方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20111027

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111108

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120206

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120612

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20121106