(57)【要約】【課題】専用のハードウェア装置の付加や、対象となるプログラムが動作するプロセッサのソフトウェアへの変更を不要として、対象となるプログラムの動作を把握及び解析することを可能とするマルチプロセッサシステム及び情報処理装置を提供すること。【解決手段】共通のシステムバスである共通バス１３に接続された複数のプロセッサであるＣＰＵ１、２と、複数のプロセッサのうちの第１のプロセッサであるＣＰＵ１における例外の発生を、第２のプロセッサであるＣＰＵ２へ通知する例外通知手段である例外通知部２０と、第１のプロセッサにおいて例外が発生した際における第１のプロセッサの状態に関する情報を保持する例外情報保持手段である例外情報保持部３０と、を有し、第２のプロセッサは、例外通知手段による通知に応じて、例外情報保持手段に保持されている情報を取得する。【選択図】      図１
2010015364.tif 000002
【特許請求の範囲】
【請求項１】
共通のシステムバスに接続された複数のプロセッサと、
前記複数のプロセッサのうちの第１のプロセッサにおける例外の発生を、前記複数のプロセッサのうち前記第１のプロセッサ以外の少なくとも一つのプロセッサである第２のプロセッサへ通知する例外通知手段と、
前記第１のプロセッサにおいて例外が発生した際における前記第１のプロセッサの状態に関する情報を保持する例外情報保持手段と、を有し、
前記第２のプロセッサは、前記例外通知手段による通知に応じて、前記例外情報保持手段に保持されている情報を取得することを特徴とするマルチプロセッサシステム。
【請求項２】
前記例外情報保持手段は、
前記第１のプロセッサにおいて発生した例外の要因に関する情報を保持する例外要因保持手段と、
前記第１のプロセッサにおいて例外が発生した命令のアドレスを保持する例外命令アドレス保持手段と、
前記第１のプロセッサにおいて発生した例外の状況に関する情報を保持する例外状況保持手段と、を有することを特徴とする請求項１に記載のマルチプロセッサシステム。
【請求項３】
前記複数のプロセッサへの割込みを制御する割込み制御手段を有し、
前記例外通知手段は、前記割込み制御手段を介して前記第２のプロセッサへ割込み要求を送出することにより、前記第１のプロセッサにおける例外の発生を前記第２のプロセッサへ通知することを特徴とする請求項１又は２に記載のマルチプロセッサシステム。
【請求項４】
前記第１のプロセッサにおいて発生した例外の要因に応じて、前記例外通知手段から送出する前記割込み要求を選択する例外通知選択手段をさらに有することを特徴とする請求項３に記載のマルチプロセッサシステム。
【請求項５】
例外の要因を指定する例外要因指定手段をさらに有し、
前記例外通知手段は、前記第１のプロセッサで発生した例外の要因が前記例外要因指定手段において指定されている場合に限り、前記第１のプロセッサにおける例外の発生を前記第２のプロセッサへ通知することを特徴とする請求項１〜４のいずれか一項に記載のマルチプロセッサシステム。
【請求項６】
共通のシステムバスに接続された複数のプロセッサと、
前記複数のプロセッサのうちの第１のプロセッサにおける例外の発生を、前記複数のプロセッサのうち前記第１のプロセッサ以外の少なくとも一つのプロセッサである第２のプロセッサへ通知する例外通知手段と、
前記第１のプロセッサにおいて例外が発生した際における前記第１のプロセッサの状態に関する情報を保持する例外情報保持手段と、を有し、
前記第２のプロセッサは、前記例外通知手段による通知に応じて、前記例外情報保持手段に保持されている情報を取得することを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マルチプロセッサシステム及び情報処理装置、特に、共通のシステムバスに接続された複数のプロセッサを備えるマルチプロセッサシステムに関する。
【背景技術】
【０００２】
例外処理は、プログラムの実行中にそのプログラムの命令列の実行を中断し、異なる命令列の実行を行う処理であって、プロセッサシステムの内部で行われる。例外処理の契機としては、命令実行により異常が発生した場合の他、例えば、オペレーティングシステムの機能を呼び出すシステムコールのためのトラップ命令実行による場合、メモリ管理機構を操作するためのページフォルトの場合がある。プロセッサにおいて例外が発生した場合、プロセッサで実行中のプログラムは中断され、例外が発生した際におけるプロセッサの状態に関する情報、例えばプログラムカウンタやステータスレジスタをプロセッサシステム内部で退避させる。また、発生した例外の要因ごとに異なる例外処理ハンドラが実行される。例外処理ハンドラは、例外処理が記述されたプログラムであって、一般に、オペレーティングシステムの一部として実装されている。例外処理が完了すると、退避させていた情報に基づいてプロセッサの状態を回復させ、例外が発生した際におけるプログラムの実行が再開される。
【０００３】
従来、マルチプロセッサシステムで実行されるプログラムをデバッグ処理するデバッグ支援装置の技術が提案されている（例えば、特許文献１参照）。特許文献１に提案されている技術では、あるプロセッサにおいてデバッグ例外が発生した場合に他のプロセッサを停止させ、マルチプロセッサシステムのデバッグに利用する。デバッグ支援装置は、オンラインデバッガとＰＣのソフトウェアとによって構成されている。オンラインデバッガは、プロセッサをターゲットとしてプログラムのバグの発見及び修正を支援するソフトウェアである。
【０００４】
【特許文献１】特開２００７−１８８１４７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
プログラムの動作を把握し解析する手段としては、例えばＩＣＥ（In-Circuit  Emulator）のようなハードウェア装置を付加する方法と、特許文献１に提案される技術のようにソフトウェアにより実現する方法とがある。ハードウェア装置を付加する場合、プログラムの動作を把握し解析するための専用の装置を用意する必要があるためコストの低減が困難となる。また、ソフトウェアにより実現する方法では、対象となるプログラムにトレース用の命令を加える等、プログラムの変更が必要となる。プログラム自体を変更する以外には、プログラムが動作するオペレーティングシステムの機能を利用する方法も取り得る。この場合、プログラムの動作を把握するための処理によって、本来のプログラムの動作とは実行タイミングが異なってしまうこととなる。
【０００６】
本発明は、これらの課題を解決するためになされたものであって、専用のハードウェア装置の付加や、対象となるプログラムが動作するプロセッサのソフトウェアへの変更を不要として、対象となるプログラムの動作を把握及び解析することを可能とするマルチプロセッサシステム及び情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上述した課題を解決し、目的を達成するために、本発明は、共通のシステムバスに接続された複数のプロセッサと、複数のプロセッサのうちの第１のプロセッサにおける例外の発生を、複数のプロセッサのうち第１のプロセッサ以外の少なくとも一つのプロセッサである第２のプロセッサへ通知する例外通知手段と、第１のプロセッサにおいて例外が発生した際における第１のプロセッサの状態に関する情報を保持する例外情報保持手段と、を有し、第２のプロセッサは、例外通知手段による通知に応じて、例外情報保持手段に保持されている情報を取得することを特徴とする。
【発明の効果】
【０００８】
本発明によれば、専用のハードウェア装置の付加や、対象となるプログラムが動作するプロセッサのソフトウェアへの変更を不要として、対象となるプログラムの動作を把握及び解析することができるという効果を奏する。
【発明を実施するための最良の形態】
【０００９】
以下、図面に基づいて、本発明に係るマルチプロセッサシステムの実施の形態を詳細に説明する。
【００１０】
実施の形態１．
図１は、本発明の実施の形態１に係るマルチプロセッサシステムを備える情報処理装置のブロック構成を示す。本実施の形態に係るマルチプロセッサシステムは、二つのＣＰＵ（Central  Processing  Unit）１、２、主記憶装置１０、割込みコントローラ１１、ＩＯ装置１２、共通バス１３、例外通知部２０、及び例外情報保持部３０を有する。第１のプロセッサとして機能するＣＰＵ１、及び第２のプロセッサとして機能するＣＰＵ２は、共通のシステムバスである共通バス１３に接続されている。共通バス１３には、二つのＣＰＵ１、２の他、主記憶装置１０、ＩＯ装置１２、例外通知部２０、及び例外情報保持部３０が接続されている。主記憶装置１０は、ＣＰＵ１、２のメモリ空間にアドレス割付され、各ＣＰＵ１、２から全領域をアクセス可能に構成されている。
【００１１】
マルチプロセッサシステムは、実行中のプログラムの処理を切り替える場合、例えば、タスク切り替え、ＩＯ装置１２の処理終了通知等において、割込みを行う。割込みコントローラ１１は、ＣＰＵ１、２への割込みを制御する割込み制御手段として機能する。割込みコントローラ１１は、ＣＰＵ１、２の内部及び外部からの割込み要求を受けることにより、ＣＰＵ１又はＣＰＵ２に対する割込みを発生する。
【００１２】
割込みコントローラ１１は、割込みを発生させる要因ごとに任意のＣＰＵ１、２に対する割込みを発生するように設定可能である。割込みコントローラ１１は、例えば、ＩＯ装置１２からの割込み要求に対してはＣＰＵ１への割込みを発生し、例外通知部２０からの割込み要求に対してはＣＰＵ２への割込みを発生する旨の設定がなされる。かかる設定は、通常、システム起動時の初期化処理において行う。
【００１３】
例外通知部２０は、第１のプロセッサであるＣＰＵ１における例外の発生を、第２のプロセッサであるＣＰＵ２へ通知する例外通知手段として機能する。例外通知部２０は、ＣＰＵ１における例外の発生により、割込みコントローラ１１へ割込み要求を送出する。ＣＰＵ１における例外の発生に対して、例外通知部２０は、ある単一の番号の割込み要求を送出する。或いは、例外通知部２０は、ＣＰＵ１で発生した例外の要因に応じて異なる番号の割込み要求を送出することとしても良い。例外情報保持部３０は、第１のプロセッサであるＣＰＵ１において例外が発生した際におけるＣＰＵ１の状態に関する情報を保持する例外情報保持手段として機能する。
【００１４】
図２は、例外情報保持部３０の構成を説明するものである。例外情報保持部３０は、例外要因保持部３１、例外命令アドレス保持部３２、例外状況保持部３３を有する。例外要因保持部３１、例外命令アドレス保持部３２、例外状況保持部３３は、いずれも共通バス１３に接続されている。例外要因保持部３１は、ＣＰＵ１において発生した例外の要因に関する情報を保持する例外要因保持手段として機能する。例外命令アドレス保持部３２は、ＣＰＵ１において例外が発生した命令のアドレスを保持する例外命令アドレス保持手段として機能する。
【００１５】
例外状況保持部３３は、ＣＰＵ１において発生した例外の状況に関する情報を保持する例外状況保持手段として機能する。例えば、メモリ読み込み命令でのアドレスエラーによる例外が発生した場合、例外状況保持部３３は、メモリへのアクセスによりエラーが発生したアドレスを保持する。トラップ命令の実行による例外が発生した場合、例外状況保持部３３は、トラップ命令のオペランドである番号を保持する。
【００１６】
例外情報保持部３０は、一回の例外についての情報のみを保持するもの、複数回の例外についての情報を保持するもののいずれであっても良い。一回の例外についての情報のみを保持する場合、例外要因保持部３１、例外命令アドレス保持部３２、例外状況保持部３３は、ＣＰＵ１において例外が発生するごとに保持する情報を書き換える。複数回の例外についての情報を保持する場合、例外要因保持部３１、例外命令アドレス保持部３２、例外状況保持部３３は、例えば、ＦＩＦＯ（First  In  First  out）方式の構成とする。
【００１７】
ＣＰＵ１でのプログラムの実行中に例外、例えば、ページフォルト、オーバフロー、アドレスエラー等が発生すると、ＣＰＵ１における処理は、例外処理へ切り替えられる。ＣＰＵ１は、例外が発生すると、例外処理ベクタで示されるメモリアドレスの命令を読み込んで、発生した例外に対応する例外処理ハンドラを実行する。
【００１８】
例外通知部２０は、ＣＰＵ１における例外の発生に対して、割込みコントローラ１１へ割込み要求を送出する。割込みコントローラ１１は、例外通知部２０からの割込み要求を受けることにより、ＣＰＵ２に対する割込みを発生する。割込みを受けたＣＰＵ２は、割込みベクタで示されるメモリアドレスの命令を読み込んで、例外通知部２０から送出された割込み要求に対応する割込みハンドラを実行する。このように、例外通知部２０は、割込みコントローラ１１を介してＣＰＵ２へ割込み要求を送出することにより、ＣＰＵ１における例外の発生をＣＰＵ２へ通知する。
【００１９】
図３は、第２のプロセッサであるＣＰＵ２における割込みハンドラの処理を説明するフローチャートである。ＣＰＵ２では、例外通知部２０からの割込み要求に対応する割込みハンドラが実行される。ＣＰＵ２における割込みハンドラの実行が開始されると、ステップＳ１１において、ＣＰＵ２は、例外要因保持部３１に保持されている例外の要因に関する情報を取得する。ＣＰＵ２は、例外要因保持部３１に保持されている情報を、共通バス１３を介して読み出す。
【００２０】
ステップＳ１２において、ＣＰＵ２は、例外命令アドレス保持部３２に保持されているアドレスを取得する。ＣＰＵ２は、例外命令アドレス保持部３２に保持されている情報を、共通バス１３を介して読み出す。ステップＳ１３において、ＣＰＵ２は、例外状況保持部３３に保持されている例外の状況に関する情報を取得する。ＣＰＵ２は、例外状況保持部３３に保持されている情報を、共通バス１３を介して読み出す。このように、第２のプロセッサであるＣＰＵ２は、例外通知部２０による通知に応じて、例外情報保持部３０に保持されている情報を取得する。なお、ステップＳ１１、Ｓ１２、Ｓ１３は特に順序を定める必要は無く、かかる順序である場合に限られないものとする。
【００２１】
次に、ステップＳ１４において、ＣＰＵ２は、ステップＳ１１において取得した例外の要因に関する情報、ステップＳ１２において取得したアドレス、ステップＳ１３において取得した例外の状況に関する情報を主記憶装置１０上の領域に保存する。ステップＳ１５において、ＣＰＵ２は、例外が発生した際におけるＣＰＵ１の状態に関する情報の取得が完了したことを例外通知部２０へ通知する。かかる通知は、共通バス１３を介してなされる。
【００２２】
例外通知部２０は、情報の取得が完了したことの通知をＣＰＵ２から受けることにより、割込みコントローラ１１に対する割込み要求を解除する。ＣＰＵ２は、例外通知部２０による割込み要求の解除により、割込みハンドラの実行を終了する。ＣＰＵ１は、例外処理ハンドラの実行が完了すると、例外が発生した際における状態に関する情報を主記憶装置１０から読み出す。ＣＰＵ１は、主記憶装置１０から読み出した情報に基づいて、例外の発生時に実行していたプログラムを再開させる。
【００２３】
ＣＰＵ１における例外の発生を例外通知部２０によりＣＰＵ２へ通知するとともに、例外情報保持部３０に保持された情報をＣＰＵ２が取得することにより、ＣＰＵ１で実行しているプログラムの動作を把握及び解析し、ＣＰＵ１で発生した例外を処理する。これにより、専用のハードウェア装置の付加やプログラムの変更を不要とし、対象となるプログラムの動作を把握及び解析することができるという効果を奏する。また、対象のプログラムが動作するＣＰＵ１のソフトウェアには何ら変更を行わないため、本来のプログラムの動作タイミングを変えること無く、対象のプログラムの動作の把握及び解析ができる。
【００２４】
マルチプロセッサシステムは、二つのプロセッサを有する構成に限られず、三つ以上のプロセッサを有する構成であっても良い。マルチプロセッサシステムは、複数のプロセッサのうちの第１のプロセッサにおいて例外が発生した場合に、第１のプロセッサの状態に関する情報を、第１のプロセッサ以外のプロセッサである第２のプロセッサが取得可能であれば良い。
【００２５】
実施の形態２．
図４は、本発明の実施の形態２に係るマルチプロセッサシステムを備える情報処理装置のブロック構成を示す。本実施の形態に係るマルチプロセッサシステムは、例外通知選択部４０を有することを特徴とする。本実施の形態に係るマルチプロセッサシステムは、例外通知選択部４０を有する他は、上記実施の形態１に係るマルチプロセッサシステムと同様の構成を有する。上記実施の形態１と同一の部分には同一の符号を付し、重複する説明を省略する。
【００２６】
例外通知選択部４０は、共通バス１３に接続されている。例外通知選択部４０は、第１のプロセッサであるＣＰＵ１において発生した例外の要因に応じて、例外通知部２０から送出する割込み要求を選択する例外通知選択手段として機能する。ＣＰＵ１において例外が発生すると、例外通知部２０は、例外通知選択部４０を参照し、例外の要因に応じて例外通知選択部４０で選択された割込み要求を送出する。
【００２７】
図５は、例外通知選択部４０において割込み要求を選択する例を説明するものである。ＣＰＵ１において例外要因番号１の例外、又は例外要因番号３の例外が発生した場合、例外通知選択部４０は、割込み要求番号５を選択する。ＣＰＵ１において例外要因番号２の例外が発生した場合、例外通知選択部４０は、割込み要求番号６を選択する。ＣＰＵ１において例外要因番号４の例外が発生した場合、例外通知選択部４０は、割込み要求番号７を選択する。
【００２８】
割込みコントローラ１１は、システム起動時の初期化処理において、例外通知として使用される割込み要求全てに対してＣＰＵ２への割込みを発生する旨の設定がなされている。図５に示す例の場合、割込み要求番号５、割込み要求番号６、及び割込み要求番号７がいずれもＣＰＵ２への割込みとなる。
【００２９】
図６は、割込み要求番号７に対応する割込みハンドラの処理を説明するフローチャートである。ここでは、例外通知選択部４０が割込み要求番号７を選択する例外要因番号４は、命令アドレス例外であるとする。命令アドレス例外の場合、例外の要因に関する情報、及び例外が発生した命令のアドレスを用いることによりＣＰＵ１の状態を把握可能であって、例外の状況に関する情報が不要であるとする。
【００３０】
ＣＰＵ２において割込み要求番号７に対応する割込みハンドラの実行が開始されると、ステップＳ２１において、ＣＰＵ２は、例外要因保持部３１に保持されている例外の要因に関する情報を取得する。ステップＳ２２において、ＣＰＵ２は、例外命令アドレス保持部３２に保持されているアドレスを取得する。ここでは、例外状況保持部３３へのアクセスが省略される。
【００３１】
次に、ステップＳ２３において、ＣＰＵ２は、ステップＳ２１において取得した例外の要因に関する情報、ステップＳ２２において取得したアドレスを主記憶装置１０上の領域に保存する。ステップＳ２４において、ＣＰＵ２は、例外が発生した際におけるＣＰＵ１の状態に関する情報の取得が完了したことを例外通知部２０へ通知する。例外通知部２０は、情報の取得が完了したことの通知をＣＰＵ２から受けることにより、割込みコントローラ１１に対する割込み要求を解除する。
【００３２】
なお、例外要因番号１〜３については、ＣＰＵ１の状態を把握するには、例外の要因に関する情報、例外が発生した命令のアドレス、例外の状況に関する情報のいずれも用いられるとする。例外要因番号１又は３によって選択される割込み要求番号５、例外要因番号２によって選択される割込み要求番号６については、割込みハンドラの処理は、図３に示す実施の形態１の場合と同様となる。
【００３３】
ＣＰＵ１で発生した例外の要因に応じて、例外通知として使用する割込み要求を選択することにより、第２のプロセッサであるＣＰＵ２では、第１のプロセッサであるＣＰＵ１で発生した例外の要因に応じて異なる割り込みハンドラが実行される。これにより、例外が発生した際におけるＣＰＵ１の状態に関する情報の取得を効率的に行うことができるという効果を奏する。
【００３４】
三つ以上のＣＰＵを有する構成とする場合、割込みコントローラ１１は、例外通知選択部４０において選択された割込み要求ごとに、異なるＣＰＵへの割込みを発生する設定をしても良い。これにより、例外が発生した際における第１のプロセッサであるＣＰＵの情報を、第２のプロセッサである複数のＣＰＵにおいて取得する構成にできる。第２のプロセッサは、複数のプロセッサのうち第１のプロセッサ以外の少なくとも一つのプロセッサであれば良く、複数であっても良い。
【００３５】
実施の形態３．
図７は、本発明の実施の形態３に係るマルチプロセッサシステムを備える情報処理装置のブロック構成を示す。本実施の形態に係るマルチプロセッサシステムは、例外要因指定部５０を有することを特徴とする。本実施の形態に係るマルチプロセッサシステムは、例外要因指定部５０を有する他は、上記実施の形態１に係るマルチプロセッサシステムと同様の構成を有する。上記実施の形態１と同一の部分には同一の符号を付し、重複する説明を省略する。
【００３６】
例外要因指定部５０は、共通バス１３に接続されている。例外要因指定部５０は、例外の要因を指定する例外要因指定手段として機能する。例外通知部２０は、ＣＰＵ１において発生した例外の要因が例外要因指定部５０において指定されている場合に限り、例外の発生をＣＰＵ２へ通知する。
【００３７】
図８は、例外要因指定部５０において例外の要因を指定する例を説明するものである。例えば、例外要因指定部５０は、例外要因番号１については例外を通知し、例外要因番号２、３、４については例外を非通知とする旨の設定がなされている。図８に示す例では、例外要因指定部５０は、例外通知部２０によりＣＰＵ２へ例外を通知する要因として、例外要因番号１〜４のうち例外要因番号１のみを指定する。かかる設定は、例えば、ＣＰＵ２上で動作する例外要因指定プログラムが、例外要因指定部５０に対して行う。
【００３８】
図８に示す例では、例外通知部２０は、ＣＰＵ１において発生した例外の要因が例外要因番号１である場合に、割込み要求の送出により例外を通知する。また、例外要因番号２〜４である場合は、例外通知部２０は割込み要求を送出せず、例外の通知を行わない。割込みコントローラ１１は、例外通知部２０からの例外通知を受けることにより、ＣＰＵ２への割込みを発生する。割込みを受けたＣＰＵ２は、例外通知部２０からの割込み要求に対応する割込みハンドラを実行する。
【００３９】
図９は、第２のプロセッサであるＣＰＵ２における割込みハンドラの処理を説明するフローチャートである。ＣＰＵ２において割込みハンドラの実行が開始されると、ステップＳ３１において、ＣＰＵ２は、例外要因保持部３１に保持されている例外の要因に関する情報を取得する。ステップＳ３２では、ＣＰＵ２は、ステップＳ３１で取得した例外の要因が、例外を通知する要因として例外要因指定部５０に指定されている要因に一致するか否かを判断する。ＣＰＵ２は、例外要因指定部５０に保持されている情報を、共通バス１３を介して読み出す。
【００４０】
例外情報保持部３０が複数回の例外についての情報を保持するものである場合、以前に発生した例外についての情報であって、例外要因指定部５０にて指定されていない要因についての情報を参照する可能性がある。ステップＳ３２では、例外要因保持部３１に保持されている例外の要因が例外要因指定部５０で指定されたものか否かの確認を行う。ステップＳ３２において一致しないと判断した場合、ステップＳ３７において、ＣＰＵ２は、例外情報保持部３０に保持された次の例外についての情報を参照する。さらに、ステップＳ３１に戻って、例外要因保持部３１に保持されている例外の要因に関する情報を取得する。なお、例外要因保持部３１に保持されている例外の要因が例外要因指定部５０で指定されたものか否かの確認が不要な場合、例えば、例外情報保持部３０が一回の例外についての情報のみを保持するものである場合は、ステップＳ３２を省略しても良い。
【００４１】
ステップＳ３１で取得した例外の要因と、例外を通知する要因として例外要因指定部５０に指定されている要因とが一致するとステップＳ３２において判断した場合、ＣＰＵ２は、ステップＳ３３において、例外命令アドレス保持部３２に保持されているアドレスを取得する。ステップＳ３４では、ＣＰＵ２は、例外状況保持部３３に保持されている例外の状況に関する情報を取得する。
【００４２】
次に、ステップＳ３５において、ＣＰＵ２は、ステップＳ３１において取得した例外の要因に関する情報、ステップＳ３３において取得したアドレス、ステップＳ３４において取得した例外の状況に関する情報を主記憶装置１０上の領域に保存する。ステップＳ３６において、ＣＰＵ２は、例外が発生した際におけるＣＰＵ１の状態に関する情報の取得が完了したことを例外通知部２０へ通知する。例外通知部２０は、情報の取得が完了したことの通知をＣＰＵ２から受けることにより、割込みコントローラ１１に対する割込み要求を解除する。
【００４３】
ＣＰＵ１で発生した例外の要因が例外要因指定部５０において指定されている場合に限りＣＰＵ２への例外通知を行うことで、ＣＰＵ１で発生した例外の要因ごとにＣＰＵ２への割込みの可否を設定できる。これにより、例外が発生した際におけるＣＰＵ１の状態に関する情報の取得を効率的に行うことができるという効果を奏する。なお、本実施の形態に係るマルチプロセッサシステムは、上記実施の形態２で説明した例外通知選択手段をさらに有する構成としても良い。
【産業上の利用可能性】
【００４４】
以上のように、本発明に係るマルチプロセッサシステムは、情報処理装置に用いる場合に適している。
【図面の簡単な説明】
【００４５】
【図１】実施の形態１に係るマルチプロセッサシステムを備える情報処理装置のブロック構成を示す図である。
【図２】例外情報保持部の構成を説明する図である。
【図３】第２のプロセッサにおける割込みハンドラの処理を説明するフローチャートである。
【図４】実施の形態２に係るマルチプロセッサシステムを備える情報処理装置のブロック構成を示す図である。
【図５】例外通知選択部において割込み要求を選択する例を説明する図である。
【図６】割込み要求番号７に対応する割込みハンドラの処理を説明するフローチャートである。
【図７】実施の形態３に係るマルチプロセッサシステムを備える情報処理装置のブロック構成を示す図である。
【図８】例外要因指定部において例外の要因を指定する例を説明する図である。
【図９】第２のプロセッサにおける割込みハンドラの処理を説明するフローチャートである。
【符号の説明】
【００４６】
１、２  ＣＰＵ
１１  割込みコントローラ
２０  例外通知部
３０  例外情報保持部
４０  例外通知選択部
５０  例外要因指定部
【図１】
2010015364.tif 000003
【図２】
2010015364.tif 000004
【図３】
2010015364.tif 000005
【図４】
2010015364.tif 000006
【図５】
2010015364.tif 000007
【図６】
2010015364.tif 000008
【図７】
2010015364.tif 000009
【図８】
2010015364.tif 000010
【図９】
2010015364.tif 000011