(57)【要約】【課題】障害対応を容易にする情報処理装置、情報処理システム及び情報処理システムの制御方法を提供する。【解決手段】情報処理装置１は、情報処理装置１の動作情報を取得する動作取得部１０２と、ＵＳＢデバイス２が接続され、ＵＳＢデバイス２に電力を供給する電力供経路を有するＵＳＢコネクタ１６と、電力供給経路における過電流を検出する検出部１０３と、検出部１０３により過電流が検出された場合、動作取得部１０２により取得された動作情報をＨＤＤ１８に移動する移動処理を実行する処理実行部１０１とを備える。また、ＵＳＢデバイス２は、ＵＳＢコネクタ１６に接続された場合、電力供給経路に過電流を発生させる過電流発生部を備える。【選択図】図３
2018156326.tif 000002
【特許請求の範囲】
【請求項１】
情報処理装置及び外部接続装置を有する情報処理システムであって、
前記情報処理装置は、
前記情報処理装置の動作情報を取得する動作取得部と、
前記外部接続装置が接続され、前記外部接続装置に電力を供給する電力供給経路を有する接続部と、
前記電力供給経路における過電流を検出する検出部と、
前記検出部により過電流が検出された場合、前記動作取得部により取得された前記動作情報を所定の記憶部に移動する移動処理を実行する処理実行部とを備え、
前記外部接続装置は、
前記接続部に接続された場合、前記電力供給経路に過電流を発生させる過電流発生部とを備えた
ことを特徴とする情報処理システム。
【請求項２】
前記動作取得部は、取得した前記動作情報を揮発性記憶装置に格納し、
前記処理実行部は、前記揮発性記憶装置に格納された前記動作情報を不揮発積記憶装置である前記所定の記憶部に移動することで前記移動処理を行う
ことを特徴とする請求項１に記載の情報処理システム。
【請求項３】
前記処理実行部は、前記移動処理と異なる演算処理を実行し、移動命令の割り込みを受けた場合、実行中の前記演算処理に優先して前記移動処理を実行し、
前記検出部は、前記過電流を検出した場合、前記移動命令の割り込みを前記処理実行部へ送信する
ことを特徴とする請求項１又は２に記載の情報処理システム。
【請求項４】
前記過電流発生部は、前記電力供給経路を低抵抗の経路に接続させて過電流を発生させることを特徴とする請求項１〜３のいずれか一つに記載の情報処理システム。
【請求項５】
前記処理実行部は、前記接続部に接続された装置が前記外部接続装置か否かを判定し、前記外部接続装置が接続された場合、前記検出部により過電流が検出されると前記移動処理を実行することを特徴とする請求項１〜４のいずれか一つに記載の情報処理システム。
【請求項６】
自装置の動作情報を取得する動作取得部と、
接続された電力供給経路に過電流を発生させる接続機器と、
前記接続機器が接続され、接続された前記接続機器に電力を供給する電力供経路を有する接続部と、
前記電力供給経路における過電流を検出する検出部と、
前記検出部により過電流が検出された場合、前記動作取得部により取得された前記動作情報を所定の記憶部に移動する移動処理を実行する処理実行部と
を備えたことを特徴とする情報処理装置。
【請求項７】
外部接続装置及び前記外部接続装置が接続され前記外部接続装置に電力を供給する電力供給経路を有するインタフェースを備えた情報処理装置を有する情報処理システムの制御方法であって、
前記情報処理装置に動作情報を取得させ、
前記外部接続装置が前記インタフェースに接続された場合、前記外部接続装置により前記電力供給経路に過電流を発生させ、
前記情報処理装置に、前記電力供給経路における過電流を検出させ、過電流が検出された場合、取得した前記動作情報を所定の記憶装置に移動させる
ことを特徴とする情報処理システムの制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理システム及び情報処理システムの制御方法に関する。
【背景技術】
【０００２】
一般的な情報処理装置に搭載されるＣＰＵ（Central  Processing  Unit）では、重大な異常が発生した場合に強制的に割り込み処理を実行させる機能を有する。このような機能は、例えば、ＮＭＩ（Non  Maskable  Interrupt）と呼ばれる。ＮＭＩにより強制的に実行される処理としては、例えば、リセットなどを行うリカバリ処理又は異常時のログの採取などがある。
【０００３】
情報処理装置の中には、ＮＭＩを操作者が強制的に発生させるために、ＮＭＩ専用スイッチが設けられているものがある。そのような情報処理装置は、異常発生時にＮＭＩ専用スイッチが操作者により押されることで、ログの採取などの予めプログラミングされた処理を実行する。例えば、異常が発生しＣＰＵの動作が停止してしまった場合に、ＮＭＩ専用スイッチが押されることで、ＣＰＵは、動作停止の原因である処理に優先して予め決められた処理を実行することができる。これにより、ＣＰＵの動作停止状態が解消する。
【０００４】
また、ＮＭＩ専用スイッチを押す以外にも、ＮＭＩが実行されるためのトリガが存在する。例えば、情報処理装置は周辺装置と通信を行うためのインタフェースを有するが、その中でもＵＳＢ（Universal  Serial  Bus）は一般的なインタフェースである。ＵＳＢインタフェースは、電源供給ライン（ＶＢＵＳ）を有する。情報処理装置は、ＵＳＢインタフェースにＵＳＢデバイスが接続された場合、ＶＢＵＳの電流値を監視する。そして、ＶＢＵＳに規格値を超えた電流が流れた場合、情報処理装置は、異常を検出してＮＭＩを実行して電源供給を停止する処理を行う。
【０００５】
このようなＵＳＢデバイスへの過電流状態を検出し過電流を操作者に通知する従来技術がある。また、ＮＭＩを用いる技術として、マスク不可能割り込み信号を発生させ、プロセッサが実行中のプログラムの走行を停止させた後に、プロセッサがプログラムのリスタートする際にマスク不能割り込み信号を検出しメモリダンプを行う従来技術がある。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００６−４８５９４号公報
【特許文献２】特開昭５８−１１５５６１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、情報処理装置の中には物理的なＮＭＩスイッチを搭載していない装置も存在する。そのような装置では、ＮＭＩを強制的に発生させることが困難であった。そのため、例えば、プログラムの動作不良によりＣＰＵが動作不能に陥った場合に、ＮＭＩを強制的に発生させメモリへのログの移動などといった所定の処理を行わせることが困難であった。そのため、ログの解析に基づく障害対応を実行することが困難であった。
【０００８】
開示の技術は、上記に鑑みてなされたものであって、障害対応を容易にする情報処理装置、情報処理システム及び情報処理システムの制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本願の開示する情報処理装置、情報処理システム及び情報処理システムの制御方法の一つの態様において、情報処理装置及び外部接続装置を有する。前記情報処理装置は、前記情報処理装置の動作情報を取得する動作取得部と、前記外部接続装置が接続され、前記外部接続装置に電力を供給する電力供経路を有する接続部と、前記電力供給経路における過電流を検出する検出部と、前記検出部により過電流が検出された場合、前記動作取得部により取得された前記動作情報を所定の記憶部に移動する移動処理を実行する処理実行部とを備える。前記外部接続装置は、前記接続部に接続された場合、前記電力供給経路に過電流を発生させる過電流発生部とを備える。
【発明の効果】
【００１０】
１つの側面では、本発明は、障害対応を容易にすることができる。
【図面の簡単な説明】
【００１１】
【図１】図１は、情報処理システムのシステム構成図である。
【図２】図２は、実施例１に係るＵＳＢデバイスのハードウェア構成図である。
【図３】図３は、ＭＰＵの機能を表すブロック図である。
【図４】図４は、実施例１に係る情報処理システムにおける動作ログの移動処理のフローチャートである。
【図５】図５は、実施例２に係るＵＳＢデバイスの構成の一例を表す図である。
【図６】図６は、実施例２に係る情報処理システムにおける動作ログの移動処理のフローチャートである。
【発明を実施するための形態】
【００１２】
以下に、本願の開示する情報処理装置、情報処理システム及び情報処理システムの制御方法の実施例を図面に基づいて詳細に説明する。なお、以下の実施例により本願の開示する情報処理装置、情報処理システム及び情報処理システムの制御方法が限定されるものではない。
【実施例１】
【００１３】
図１は、情報処理システムのシステム構成図である。図１に示すように、本実施例に係る情報処理システム１００は、情報処理装置１及びＵＳＢデバイス２を有する。
【００１４】
情報処理装置１は、ＭＰＵ（Micro  Processing  Unit）１０、ＵＳＢコネクタ１６、メモリ１７、ＨＤＤ（Hard  Disk  Drive）１８及び電源１９を有する。
【００１５】
メモリ１７は、揮発性の記憶装置である。メモリ１７は、例えば、ＤＲＡＭ（Dynamic  Random  Access  Memory）である。
【００１６】
ＨＤＤ１８は、不揮発性の記憶装置である。ここで、本実施例では、不揮発性の記憶装置としてＨＤＤ１８を例に説明するが、他の不揮発性記憶装置を用いてもよい。例えば、情報処理装置１は、ＨＤＤ１８の代わりに、ＳＳＤ（Solid  State  Drive）などのフラッシュＲＯＭ（Read  Only  Memory）を搭載してもよい。このＨＤＤ１８が、「所定の記憶部」の一例にあたる。
【００１７】
ＵＳＢコネクタ１６は、外部接続機器であるＵＳＢデバイス２が接続される。ＵＳＢコネクタ１６は、ＵＳＢデバイス２とＵＳＢコントローラ１４との通信インタフェースである。ＵＳＢコネクタ１６は、ＵＳＢデバイス２に対して電力供給を行う電力供給経路を有する。ＵＳＢコネクタ１６は、電源１９から供給された電力を、電力供給経路を介して接続されたＵＳＢデバイス２に供給する。
【００１８】
電源１９は、ＭＰＵ１０、メモリ１７及びＨＤＤ１８にも電力供給を行う。例えば、電源１９は、商用電源から供給された電力を各部へ供給する。また、電源１９は、バッテリであってもよい。
【００１９】
ＭＰＵ１０は、プロセッサコア１１、メモリコントローラ１２、ＩＯコントローラ１３、ＵＳＢコントローラ１４及び割込コントローラ１５を有する。プロセッサコア１１は、メモリコントローラ１２、ＩＯ（Input  Output）コントローラ１３、ＵＳＢコントローラ１４及び割込コントローラ１５とバスで接続される。
【００２０】
プロセッサコア１１は、演算処理部である。プロセッサコア１１は、プログラムを実行して各種処理を行う。プロセッサコア１１は、各種処理を実行した際の動作履歴であるログを、メモリコントローラ１２を用いてメモリ１７に格納する。
【００２１】
メモリコントローラ１２は、プロセッサコア１１からの指示を受けて、メモリ１７に対するデータの書き込み及び読み出しを行う。
【００２２】
ＩＯコントローラ１３は、プロセッサコア１１からの指示を受けて、ＨＤＤ１８に対するデータの書き込み及び読み出しを行う。
【００２３】
ＵＳＢコントローラ１４は、ＵＳＢコネクタ１６を介してＵＳＢコネクタ１６に接続されたＵＳＢデバイス２との通信を行う。特に、ＵＳＢコントローラ１４は、ＵＳＢコネクタ１６を介してＵＳＢデバイス２への電力供給経路へ接続される経路を有する。そして、ＵＳＢコントローラ１４は、ＵＳＢデバイス２への電力供給経路において過電流が発生したか否かを検出し、ＵＳＢデバイス２への電力供給経路において過電流が発生した場合に割込コントローラ１５へ過電流の発生を通知する物理的な回路を有する。例えば、ＵＳＢコントローラ１４は、割込コントローラ１５に接続された過電流を通知する通知用経路を有し、過電流が発生しない場合は通知用経路にＬｏｗの値を有する信号を流し、過電流が発生した場合に通知用経路にＨｉｇｈの値を有する信号を流す。
【００２４】
割込コントローラ１５は、プロセッサコア１１に対して割り込み信号を送信しＮＭＩを実行し、プロセッサコア１１に対して割り込みに応じた処理を実行させる。例えば、割込コントローラ１５は、ＵＳＢコントローラ１４から過電流の発生の通知を受けた場合、割込コントローラ１５は、データ移動処理の割り込み要求をプロセッサコア１１へ出力する。
【００２５】
次に、図２を参照してＵＳＢデバイス２について説明する。図２は、実施例１に係るＵＳＢデバイスのハードウェア構成図である。ＵＳＢデバイス２は、電力供給経路に過電流を発生させ強制的にＮＭＩを発生させるＮＭＩ発生用デバイスである。
【００２６】
ＵＳＢデバイス２は、インタフェース２１、信号線２２及び２３、電力供給経路２４、並びに、抵抗器２５を有する。ＵＳＢデバイス２は、ＵＳＢコネクタ１６に対して着脱可能である。
【００２７】
インタフェース２１は、情報処理装置１のＵＳＢコネクタ１６に接続される。インタフェース２１は、ＵＳＢコントローラ１４との間でのデータの送受信及び情報処理装置１から供給された電力をＵＳＢデバイス２が受けるためのインタフェースである。
【００２８】
信号線２２及び２３は、差動信号を用いた通信を行うデータ経路である。ＵＳＢデバイス２における信号線２２及び２３は、いずれも終端されておりデータの処理を行う回路へは未接続である。すなわち、ＵＳＢデバイス２は、情報処理装置１のＵＳＢコントローラ１４との間でデータの送受信は行わない。
【００２９】
電力供給経路２４は、抵抗器２５を介してグランドに接続される。電力供給経路２４は、ＵＳＢデバイス２のＶＢＵＳである。抵抗器２５は、低抵抗値を有する。電力供給経路２４は、インタフェース２１がＵＳＢコネクタ１６に接続されると情報処理装置１から電力供給を受ける。そして、電力供給経路２４に供給された電気が低抵抗値の抵抗器２５を介してグランドに流れることで、電力供給経路２４に過電流が発生する。ここで、本実施例では、電力供給経路２４は、低抵抗値の抵抗器２５を介してグランドに接続されたが、ＵＳＢデバイス２の構成は電力供給経路２４に過電流が発生する構成であれば他の構成でもよい。例えば、電力供給経路２４は、直接グランドに接続され短絡されてもよい。この電力供給経路２４、抵抗器２５及びグランドが、「過電流発生部」の一例にあたる。
【００３０】
次に、図３を参照して、ＵＳＢデバイス２により過電流が発生した場合の情報処理装置１の動作について詳細に説明する。図３は、ＭＰＵの機能を表すブロック図である。
【００３１】
ＭＰＵ１０は、処理実行部１０１、動作取得部１０２及び検出部１０３を有する。処理実行部１０１及び動作取得部１０２は、例えば、図１におけるプロセッサコア１１で実現される。また、検出部１０３は、例えば、図１におけるＵＳＢコントローラ１４により実現される。図３は、ＵＳＢデバイス２がＵＳＢコネクタ１６に接続された状態を表す。
【００３２】
検出部１０３は、ＵＳＢデバイス２がＵＳＢコネクタ１６に接続され過電流が発生した場合、過電流の発生を検出する。そして、検出部１０３は、処理実行部１０１に対して強制的な割り込み処理要求を送信し、ＮＭＩを実行する。これにより、検出部１０３は、処理実行部１０１のプログラムカウンタを割込ベクタアドレスに遷移させる。
【００３３】
処理実行部１０１は、ＨＤＤ１８に格納されたプログラムを実行するなどして各種処理を行う。そして、処理実行部１０１は、各種処理を実行した際の動作の情報を動作取得部１０２に通知する。
【００３４】
処理実行部１０１の各種処理を実行した際に、例えばプログラムがループするなどして動作異常が発生し他の処理が行えなくなった場合などに、操作者は、ＵＳＢデバイス２をＵＳＢコネクタ１６に接続する。これにより、情報処理装置１で強制的にＮＭＩが発生する。
【００３５】
ＵＳＢデバイス２がＵＳＢコネクタ１６に接続され過電流が発生した場合、処理実行部１０１は、強制的な割込み要求を検出部１０３から受信する。そして、処理実行部１０１が使用するプログラムカウンタが割込ベクタアドレスに遷移する。ここで指定される割り込ベクタには、メモリ１７に格納された動作ログをＨＤＤ１８に移動する移動処理が登録される。処理実行部１０１は、割込ベクタアドレスで指定された割込ベクタを読み出し移動処理を実行する。
【００３６】
具体的には、処理実行部１０１は、動作ログをメモリ１７から取得する。そして、処理実行部１０１は、取得した動作ログをＨＤＤ１８に書き込む。これにより、動作ログが、不揮発性メモリ装置であるＨＤＤ１８に移動される。
【００３７】
その後、処理実行部１０１は、情報処理装置１の再起動などを実行する。ここで、動作ログはＨＤＤ１８に格納されているため、電源１９からの電力供給が止まっても、情報処理装置１は、動作ログを保持し続けることができる。
【００３８】
動作取得部１０２は、各種処理を実行した際の動作の情報を処理実行部１０１から取得する。また、動作取得部１０２は、情報処理装置１のその他の動作の情報を取得する。そして、動作取得部１０２は、取得した動作の情報をまとめてメモリ１７に動作の履歴を表す動作ログとして格納する。
【００３９】
次に、図４を参照して、本実施例に係る情報処理システム１００における動作ログの移動処理の流れについて説明する。図４は、実施例１に係る情報処理システムおける動作ログの移動処理のフローチャートである。
【００４０】
処理実行部１０１において動作異常が発生し他の処理が行えなくなった場合、操作者は、ＵＳＢデバイス２をＵＳＢコネクタ１６に接続する（ステップＳ１０１）。
【００４１】
検出部１０３は、ＵＳＢデバイス２がＵＳＢコネクタ１６に接続されたことを検出する（ステップＳ１０２）。その後、ＵＳＢデバイス２への電力供給が開始され、電力供給経路２４において過電流が発生する。
【００４２】
検出部１０３は、電力供給経路２４における過電流の発生を検出する(ステップＳ１０３)。
【００４３】
検出部１０３は、処理実行部１０１に強制的な割込み要求を送信し、処理実行部１０１にＮＭＩを発生させる（ステップＳ１０４）。
【００４４】
そして、検出部１０３は、プログラムカウンタを割込ベクタアドレスに遷移させる（ステップＳ１０５）。
【００４５】
その後、処理実行部１０１は、プログラムカウンタを読み込み割込ベクタアドレスを取得する。そして、処理実行部１０１は、割込ベクタアドレスで指定された割込ベクタに登録された移動処理を実行する。これにより、処理実行部１０１は、メモリ１７に格納された動作ログをＨＤＤ１８に移動させる（ステップＳ１０６）。
【００４６】
以上に説明したように、本実施例に係る情報処理システムは、ＮＭＩ発生用のＵＳＢデバイスが接続された場合、ＵＳＢデバイスへの電力供給経路において過電流が発生し、移動処理を実行させるＮＭＩが発生する。これにより、メモリに格納された動作ログをＨＤＤに移動させる移動処理を情報処理装置に強制的に行わせることができる。このように、動作ログを不揮発性メモリに移動させることで、電源からの電力停止時にも動作ログは消滅せず、動作ログを用いて障害解析を容易に行うことができる。
【００４７】
また、ＵＳＢデバイスへの電力供給経路において過電流が発生した場合に、ＵＳＢコントローラが過電流の発生を検出し、割込コントローラに通知して、プロセッサコアに対してＮＭＩを発生させるという処理はハードウェアにより行われる。すなわち、プロセッサコアだけでなく、ＵＳＢコントローラがソフトウェア上の問題で動作不能に陥った場合でも、強制的にＮＭＩを発生させることができ、動作ログを確保することができる。
【００４８】
また、本実施例に係る情報処理システムによれば、物理的なＮＭＩスイッチを新たに情報処理装置に追加することなく、ＮＭＩを強制的に発生させることができる。そして、本実施例に係る情報処理システムの機能は、過電流を発生させるＵＳＢデバイスを用意し、且つ、ＮＭＩが発生した場合にプロセッサコアが行う割込み処理に対する処理の変更をファームウェアを書き換えることで実現できる。したがって、複雑なハードウェア変更を行わずに、動作ログの確保ができ、障害解析を容易にすることができる。
【実施例２】
【００４９】
次に、実施例２について説明する。本実施例に係る情報処理システムは、接続されたＵＳＢデバイスがＮＭＩ発生用デバイスか否かを判定することが実施例１と異なる。本実施例に係る情報処理システムも、図１及び３で表される。
【００５０】
図５は、実施例２に係るＵＳＢデバイスの構成の一例を表す図である。図５に示すように、本実施例に係るＵＳＢデバイス２は、インタフェース２１、信号線２２及び２３、電力供給経路２４、抵抗器２５に加えて、デバイスコントローラ２０１、ＣＰＵ２０２、メモリ２０３及びスイッチ２０４を有する。
【００５１】
ＵＳＢデバイス２のインタフェース２１が情報処理装置１のＵＳＢコネクタ１６に接続されると、信号線２２及び２３は、ＵＳＢコントローラ１４に接続される。また、電力供給経路２４は、ＵＳＢコネクタ１６の電力供給用の経路に接続される。
【００５２】
デバイスコントローラ２０１は、ＵＳＢデバイス２がＵＳＢコネクタ１６に挿入されていない状態では、電力供給経路２４がデバイスコントローラ２０１に接続されるようにスイッチ２０４を切り替える。
【００５３】
ＵＳＢデバイス２のインタフェース２１が情報処理装置１のＵＳＢコネクタ１６に接続されると、デバイスコントローラ２０１は、電力供給経路２４から電力供給を受ける。そして、デバイスコントローラ２０１は、ＣＰＵ２０２からの指示を受け、信号線２２及び２３を用いて情報処理装置１のＵＳＢコントローラ１４と通信を行う。ＵＳＢコントローラ１４と通信を行うことで、デバイスコントローラ２０１は、ＵＳＢデバイス２を情報処理装置１に検出させる処理や使用する電圧の決定などを行い、ＵＳＢデバイス２と情報処理装置１との間の通信を確立する。その後、デバイスコントローラ２０１は、通信の確立をＣＰＵ２０２に通知する。
【００５４】
次に、デバイスコントローラ２０１は、ＣＰＵ２０２からベンダＩＤ（Identifier）及びプロダクトＩＤの送信の指示を受ける。デバイスコントローラ２０１は、ＵＳＢデバイス２のベンダＩＤ及びプロダクトＩＤを予め有する。そこで、デバイスコントローラ２０１は、ＣＰＵ２０２からの指示を受けて、自己が有するベンダＩＤ及びプロダクトＩＤをＵＳＢコントローラ１４へ送信する。その後、デバイスコントローラ２０１は、ベンダＩＤ及びプロダクトＩＤの受信応答をＵＳＢコントローラ１４から受信する。そして、デバイスコントローラ２０１は、受信応答をＣＰＵ２０２へ出力する。
【００５５】
その後、デバイスコントローラ２０１は、スイッチ２０４の切り替えの指示をＣＰＵ２０２から受ける。そして、デバイスコントローラ２０１は、スイッチ２０４を切り替えて、抵抗器２５を介してグランドに繋がる経路に電力供給経路２４を接続する。これにより、デバイスコントローラ２０１は、電力供給経路２４に過電流を発生させる。
【００５６】
ＣＰＵ２０２は、インタフェース２１がＵＳＢコネクタ１６に接続され、電力供給が開始されると、ＵＳＢコントローラ１４との通信を行うためのプログラムを含む各種プログラムをメモリ２０３上に展開して実行する。そして、ＣＰＵ２０２は、ＵＳＢコントローラ１４との間で通信を確立するための命令をデバイスコントローラ２０１に出力する。その後、ＣＰＵ２０２は、通信確立の通知をデバイスコントローラ２０１から受ける。そして、ＣＰＵ２０２は、デバイスＩＤ及びプロダクトＩＤの送信をデバイスコントローラ２０１に指示する。
【００５７】
その後、ＣＰＵ２０２は、デバイスコントローラ２０１を介して情報処理装置１から送信されたデバイスＩＤ及びプロダクトＩＤの受信応答を取得する。そして、ＣＰＵ２０２は、スイッチ２０４の切り替えの指示をデバイスコントローラ２０１へ出力する。
【００５８】
ＵＳＢコネクタ１６にＵＳＢデバイス２が接続され、ＵＳＢコントローラ１４とデバイスコントローラ２０１との間で通信が確立した後、検出部１０３は、ベンダＩＤ及びプロダクトＩＤをＵＳＢコネクタ１６を介してデバイスコントローラ２０１から取得する。そして、検出部１０３は、ベンダＩＤ及びプロダクトＩＤを処理実行部１０１へ出力する。
【００５９】
その後、検出部１０３は、ＵＳＢデバイス２がＮＭＩ発生用デバイスである旨の通知を処理実行部１０１から受ける。次に、検出部１０３は、受信応答をＵＳＢコネクタ１６へ出力する。その後、検出部１０３は、ＵＳＢデバイス２の電力供給経路２４の過電流を検出し、処理実行部１０１に対して強制的な割り込み処理要求を送信し、ＮＭＩを実行する。
【００６０】
ここで、検出部１０３は、ＵＳＢコネクタ１６にＮＭＩ発生用デバイスであるＵＳＢデバイス２以外のデバイスが接続された場合、通常ＵＳＢデバイスである旨の通知を処理実行部１０１から受ける。その場合、検出部１０３は、ＵＳＢデバイス２の電力供給経路２４の過電流を検出すると、ＮＭＩ発生用デバイスでない通常ＵＳＢデバイスに対する処理を実行する。例えば、検出部１０３は、電力供給経路２４の過電流を検出すると、通常ＵＳＢデバイスの過電流発生の操作者への通知を行う。
【００６１】
処理実行部１０１は、ＵＳＢコネクタ１６にＵＳＢデバイス２が接続され、ＵＳＢコントローラ１４とデバイスコントローラ２０１との間で通信が確立した後、ＵＳＢデバイス２のベンダＩＤ及びプロダクトＩＤの入力をＵＳＢコネクタ１６を介して検出部１０３から受ける。ここで、処理実行部１０１は、ベンダＩＤ及びプロダクトＩＤからＵＳＢコネクタ１６に接続された機器の種類を判定するための情報を予め有する。そして、処理実行部１０１は、取得したベンダＩＤ及びプロダクトＩＤからＵＳＢコネクタ１６に接続されたＵＳＢデバイス２がＮＭＩ発生用デバイスであることを確認する。その後、処理実行部１０１は、ＵＳＢデバイス２がＮＭＩ発生用デバイスである旨の通知を検出部１０３へ出力する。
【００６２】
この場合、処理実行部１０１は、強制的な割り込み処理要求を受信し、ＮＭＩが実行される。そして、処理実行部１０１は、移動処理を実行する。
【００６３】
これに対して、通常ＵＳＢデバイスが接続された場合、処理実行部１０１は、過電流が発生すると、過電流発生の操作者への通知などの通常ＵＳＢデバイスへの処理を実行する。この場合、処理実行部１０１は、移動処理の強制的な割込み要求は受けないので、動作ログのメモリ１７からＨＤＤ１８への移動は行わない。
【００６４】
次に、図６を参照して、本実施例に係る情報処理システム１００における動作ログの移動処理の流れについて説明する。図６は、実施例２に係る情報処理システムおける動作ログの移動処理のフローチャートである。
【００６５】
操作者は、ＵＳＢデバイス２又は通常ＵＳＢデバイスをＵＳＢコネクタ１６に接続する（ステップＳ２０１）。図６では、ＵＳＢデバイス２又は通常ＵＳＢデバイスをまとめてＵＳＢデバイスと表す。
【００６６】
検出部１０３は、ＵＳＢデバイス２又は通常ＵＳＢデバイスがＵＳＢコネクタ１６に接続されたことを検出する（ステップＳ２０２）。
【００６７】
処理実行部１０１は、ＵＳＢコネクタ１６に接続されたデバイスが送信したベンダＩＤ及びプロダクトＩＤを取得する。そして、処理実行部１０１は、ＵＳＢコネクタ１６に接続されたデバイスがＮＭＩ発生用デバイスであるＵＳＢデバイス２か否かを、取得したベンダＩＤ及びプロダクトＩＤから判定する（ステップＳ２０３）。
【００６８】
ＵＳＢコネクタ１６に接続されたデバイスがＮＭＩ発生用デバイスであるＵＳＢデバイス２の場合（ステップＳ２０３：肯定）、処理実行部１０１は、ＮＭＩ発生用デバイスが接続された旨を検出部１０３に通知する。検出部１０３は、受信応答をＵＳＢデバイス２へ送信する。ＵＳＢデバイス２のＣＰＵ２０２は、デバイスコントローラ２０１を介して受信応答を取得する。その後、デバイスコントローラ２０１は、ＣＰＵ２０２からの指示を受けて、スイッチ２０４を切り替え、電力供給経路２４を低抵抗値の抵抗器２５の経路に接続する（ステップＳ２０４）。
【００６９】
その後、検出部１０３は、電力供給経路２４における過電流の発生を検出する(ステップＳ２０５)。
【００７０】
検出部１０３は、処理実行部１０１に強制的な割込み要求を送信し、処理実行部１０１にＮＭＩを発生させる（ステップＳ２０６）。
【００７１】
そして、検出部１０３は、プログラムカウンタを割込ベクタアドレスに遷移させる（ステップＳ２０７）。
【００７２】
その後、処理実行部１０１は、プログラムカウンタを読み込み割込ベクタアドレスを取得する。そして、処理実行部１０１は、割込ベクタアドレスで指定された割込ベクタに登録された移動処理を実行する。これにより、処理実行部１０１は、メモリ１７に格納された動作ログをＨＤＤ１８に移動させる（ステップＳ２０８）。
【００７３】
これに対して、ＵＳＢコネクタ１６に接続されたデバイスがＮＭＩ発生用デバイスでない場合（ステップＳ２０３：否定）、処理実行部１０１は、通常ＵＳＢデバイスが接続された旨を検出部１０３に通知する。検出部１０３は、受信応答をＵＳＢデバイス２へ送信する。ＵＳＢデバイス２のＣＰＵ２０２は、デバイスコントローラ２０１を介して受信応答を取得する。その後、ＣＰＵ２０２及びデバイスコントローラ２０１は、通常ＵＳＢデバイスとしての処理を行う。この場合、処理実行部１０１及び検出部１０３は、通常ＵＳＢデバイスに対する処理を実行する（ステップＳ２０９）。
【００７４】
以上に説明したように、本実施例に係る情報処理システムは、接続されたデバイスが、ＮＭＩ発生用デバイスかそれ以外かを判定する。そして、ＮＭＩ発生用デバイスが接続された場合、ＵＳＢデバイスへの電力供給経路において過電流が発生し、移動処理を実行させるＮＭＩが発生する。これに対して、ＮＭＩ発生用デバイス以外のデバイスが接続された場合には、その接続されたデバイスに応じた処理を実行する。これにより、ＮＭＩ発生用デバイスか接続された場合に、メモリに格納された動作ログをＨＤＤに移動させる移動処理を情報処理装置に強制的に行わせることができ、動作ログを不揮発性メモリに移動させることができる。したがって、電源からの電力停止時にも動作ログは消滅せず、動作ログを用いて障害解析を容易に行うことができる。また、ＮＭＩ発生用デバイス以外のデバイスが接続された場合には、過電流が発生しても移動処理を強制的に行わせずに、そのデバイスに応じた処理を行うことができる。
【符号の説明】
【００７５】
１  情報処理装置
２  ＵＳＢデバイス
１０  ＭＰＵ
１１  プロセッサコア
１２  メモリコントローラ
１３  ＩＯコントローラ
１４  ＵＳＢコントローラ
１５  割込コントローラ
１６  ＵＳＢコネクタ
１７  メモリ
１８  ＨＤＤ
１９  電源
２１  インタフェース
２２，２３  信号線
２４  電力供給経路
２５  抵抗器
１０１  処理実行部
１０２  動作取得部
１０３  検出部
【図１】
2018156326.tif 000003
【図２】
2018156326.tif 000004
【図３】
2018156326.tif 000005
【図４】
2018156326.tif 000006
【図５】
2018156326.tif 000007
【図６】
2018156326.tif 000008