(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-10-28
(45)【発行日】2024-11-06
(54)【発明の名称】情報処理装置および方法
(51)【国際特許分類】
G06F 11/07 20060101AFI20241029BHJP
【FI】
G06F11/07 184
G06F11/07 140Q
(21)【出願番号】P 2020199237
(22)【出願日】2020-11-30
【審査請求日】2023-09-13
(73)【特許権者】
【識別番号】000006747
【氏名又は名称】株式会社リコー
(74)【代理人】
【識別番号】100089118
【氏名又は名称】酒井 宏明
(72)【発明者】
【氏名】吉田 文幸
【審査官】松平 英
(56)【参考文献】
【文献】特開2006-313406(JP,A)
【文献】特開2011-070655(JP,A)
【文献】特開2020-135240(JP,A)
【文献】米国特許出願公開第2017/0168537(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 9/455-9/54
11/07
11/28-11/36
(57)【特許請求の範囲】
【請求項1】
第1のCPUの動作で通常機能を提供する機能提供部と、
第2のCPUの動作で
、前記第1のCPUの前記機能提供部から通知される障害情報
のメモリ領域のアドレスを収集する障害情報収集部と、
前記機能提供部
における障害の発生を
前記第2のCPUの前記障害情報収集部に通知する通知部
としてのWatch Dogと、
を有し、
前記Watch Dogは、前記第1のCPUにより定周期に行われる前記Watch Dogに対してのRefresh動作が一定期間行われない場合に前記第2のCPUに対して割込み信号を通知することで、前記機能提供部における障害の発生を前記障害情報収集部に通知し、
前記障害情報収集部は、前記
Watch Dogによる前記割込み信号により前記
機能提供部における障害の発生が通知されると前記機能提供部に対応する
前記メモリ領域から
前記障害情報を示す前記アドレスのデータを読み出して保存部に保存する、
情報処理装置。
【請求項2】
前記障害情報収集部は、ネットワークを経由して外部の保存部へ前記データを保存する、
請求項1に記載の情報処理装置。
【請求項3】
前記障害情報収集部は、起動後に前記機能提供部から通知された前記メモリ領域であるOS領域のアドレスから前記データを読み出す、
請求項1または2に記載の情報処理装置。
【請求項4】
前記第1のCPUはプリンタ組込みシステムのCPUであり、
前記機能提供部は印刷機能を提供する、
請求項1乃至3のうちの何れか一項に記載の情報処理装置。
【請求項5】
組込みシステム
が通常機能の障害情報を
収集して保存する方法であって、
第1のCPUの動作で前記通常機能を提供し、
第2のCPUの動作で
、前記第1のCPUから通知される前記障害情報のメモリ領域のアドレスを収集し、
前記第1のCPUからWatch Dogに対して定周期にRefresh動作を行い、
前記Refresh動作が前記第1のCPUから一定期間行われない場合に前記Watch Dogから前記第2のCPUに対して割込み信号を通知し、
前記Watch Dogによる前記割込み信号が通知されると、前記第2のCPUの動作で、前記通常機能の障害の発生時の割込処理として前記通常機能に対応する
前記メモリ領域から
前記障害情報を示す前記アドレスのデータを読み出し
て保存部に保存する、
方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置および方法に関する。
【背景技術】
【0002】
従来、組み込みシステムの障害解析は手間がかかり時間がかかる。例えば障害の一つにオペレーティングシステムのストール(ハングアップ)がある。この障害が発生すると、デバッグを目的としたコマンドの実行も行えず、またオペレーティングシステムが提供するデバッグ機能も利用することができないため、障害解析が難しくなる。
【0003】
特許文献1には、機能を提供するメイン処理部と、障害検知と情報収集を行う障害検出部/監視制御部とについて開示されている。メイン処理部が通常の動作時に障害検出部/監視制御部に所定の信号を定期的に送出し、最後の情報送出から一定時間以上経過したとき、障害検出部/監視制御部障害がメイン制御部で障害発生とみなす。
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、従来技術において障害の原因を正しく判断するには、定期的に機器状態を障害検出部/監視制御部障害に送出しなければならないため、その動作にCPUリソースを割く必要がある。組み込みシステムでは一般的なPCよりもCPUの性能が低い場合が多く、この方式を用いると製品性能を劣化させるリスクが極めて高いという問題がある。
【0005】
本発明は、上記問題に鑑みてなされたものであって、組込みシステムの処理能力が限られている環境でも障害発生時の情報を収集することが可能な情報処理装置および方法を提供することを目的とする。
【課題を解決するための手段】
【0006】
上述した課題を解決し、目的を達成するために、本発明の情報処理装置は、第1のCPUの動作で通常機能を提供する機能提供部と、第2のCPUの動作で、前記第1のCPUの前記機能提供部から通知される障害情報のメモリ領域のアドレスを収集する障害情報収集部と、前記機能提供部における障害の発生を前記第2のCPUの前記障害情報収集部に通知する通知部としてのWatch Dogと、を有し、前記Watch Dogは、前記第1のCPUにより定周期に行われる前記Watch Dogに対してのRefresh動作が一定期間行われない場合に前記第2のCPUに対して割込み信号を通知することで、前記機能提供部における障害の発生を前記障害情報収集部に通知し、前記障害情報収集部は、前記Watch Dogによる前記割込み信号により前記機能提供部における障害の発生が通知されると前記機能提供部に対応する前記メモリ領域から前記障害情報を示す前記アドレスのデータを読み出して保存部に保存することを特徴とする。
【発明の効果】
【0007】
本発明によれば、組込みシステムの処理能力が限られている環境でも障害発生時の情報を収集することができるという効果を奏する。
【図面の簡単な説明】
【0008】
【
図1】
図1は、実施の形態にかかる情報処理装置の構成の一例を示す図である。
【
図2】
図2は、第1のCPUから第2のCPUへ機能提供部の割り当て領域を通知する処理フローの一例を示す図である。
【発明を実施するための形態】
【0009】
以下に添付図面を参照して、情報処理装置および方法の実施の形態について詳細に説明する。
【0010】
(実施の形態)
図1は、実施の形態にかかる情報処理装置の構成の一例を示す図である。
図1にはプリンタ等の組込みシステムの情報処理装置の構成を示している。情報処理装置1は、CPU(Central Processing Unit)、揮発性メモリであるRAM(Random Access Memory)13、不揮発性メモリ23、およびネットワークデバイス24などのハードウェア構成を有する。上記CPUは、複数のCPU、一例として第1のCPU11と第2のCPU21である。また、タイマ12やWatch Dog14をハードウェアとして備える。タイマ12は、第1のCPU11が利用する。
【0011】
情報処理装置1は、
図1に示すように機能提供手段10と障害情報収集手段20とを備える。機能提供手段10は、第1のCPU11により動作する例えばOS151や各種アプリケーション等のソフトウェア機能部(「機能提供部」に相当)15により、通常の機能を提供する。また、障害情報収集手段20は、第2のCPU21により動作する情報収取モジュール252等のソフトウェア機能部(「障害情報収集部」に相当)25により、障害情報を収集する機能を提供する。ここで、OS151は、組込みシステムに組み込まれる汎用OS(Operating System)/リアルタイムOSを指す。
【0012】
機能提供手段10は、例えばプリンタの組込みシステムであれば印刷機能を提供する演算処理回路に相当する。障害情報収集手段20は、機能提供手段10における障害発生時に情報を収集して保存するための各種構成を有する。
【0013】
この構成において、第1のCPU11は機能提供部15が使用するRAM13の割り当て領域を第2のCPU21に通知する。まず第1のCPU11から第2のCPU21へ機能提供部15の割り当て領域を通知する処理について説明する。
【0014】
図2は、第1のCPU11から第2のCPU21へ機能提供部15の割り当て領域を通知する処理フローの一例を示す図である。
図2に示すように、第1のCPU11は、OSを起動すると(S11)、RAM13上にログ領域を割り当て(S12)、第2のCPU21にログ領域のアドレスd1を通知し(S13)、さらにOS領域のアドレスd2を通知する(S14)。
【0015】
第2のCPU21は、情報収集モジュール252を起動し(S21)、第1のCPU11から送信されてくるログ領域のアドレスd1を受信して情報収集モジュール252に設定し(S22)、さらに第1のCPU11から送信されてくるOS領域のアドレスd2を受信して情報収集モジュール252に設定する(S23)。情報収集モジュール252は、機能提供手段10で障害が起きた際に上記の設定アドレスからOS等のデータを読み出す。
【0016】
図1に戻り、障害発生時のデータ収集方法について説明する。機能提供部15は、タイマハンドラ152により、タイマ12から定周期の信号を読み、そのタイミングでWatch Dog14のリフレッシュ(Watch Dog Reflesh)を行う。
【0017】
ここで、Watch Dog14は、システムの暴走を検知するためのハードウェアであり、一定期間経過したとき、NMI(マスク不能割り込み)をあげる。大抵の場合、この割り込みを検知したときにシステムを再起動する。Watch Dog14は割込みを第2のCPU21に入れるため、第2のCPU21と同じASIC上に実装するか、あるいは、それとは別に実装して、第2のCPU21の割込み端子に信号線を接続する構成でもよい。
【0018】
機能提供部15は、一定期間経過ごとにWatch Dog14に対して「リフレッシュ」という動作を行う。機能提供部15が致命的な異常状態に陥った場合、「リフレッシュ」が行われずに一定時間が経過することになる。リフレッシュの動作が一定時間行われずに経過すると、Watch Dog14が「通知部」として第2のCPU21に信号(割込み信号)を通知する。
【0019】
第2のCPU21は割込み信号により障害発生を監視する。第2のCPU21は、割込み信号を検出すると、NMI割込みハンドラ251により情報収集モジュール252の割込み処理を行う。情報収集モジュール252は、割込み処理としてRAM13の設定アドレス(ログ領域やOS領域)からメモリデータを読み出す。例えば、情報収集モジュール252はRAM13のOS領域のアドレスからメモリデータM1を読み出す。さらに、情報収集モジュール252は、読み出したメモリデータをネットワークデバイス24に出力し、ネットワークデバイス24から、接続しているネットワークを経由して、そのメモリデータを外部のサーバやクラウドストレージなどの保存部に送信する。なお、メモリデータは、情報処理装置1の外部の保存先に限らず、情報処理装置1の内部に設けた不揮発性メモリ23等の保存部に保存してもよい。
【0020】
その後は、例えばシステムが再起動され、解析者は保存部のデータを利用して障害発生原因を解析する。
【0021】
このように、本実施の形態では、OSやアプリケーション等の通常の機能を提供する機能提供手段と障害情報を収集する障害情報収集手段との個別のCPUを実装した形態を示した。OSが不正なメモリ空間にアクセスしたりストールと呼ばれる状態に陥ると「ハングアップ」と呼ばれる状態になるが、この構成は障害発生時のみデバッグ機能が動作してRAM13上のデータのうちの機能提供部15に対応する領域を読み出す構成のため、製品が提供する通常の機能と直接関係がない動作にCPUリソースを割かなくて済む。よって、製品の性能を劣化させるリスクが極めて低い。
【0022】
また、障害発生時に読み出しの対象となるデータをOS等の領域に限定すれば障害情報収集にかかる時間を短くすることができる。通常のユーザプロセス(コマンド)が不正なメモリ空間にアクセスした場合、OSはこれを検知して該当プロセスを強制的に終了させる仕組みがある。よって、ユーザプロセス自体がストール系の障害に陥ることは稀である。一方でOSは、ハードウェアのレジスタなど、誤ったアクセスが致命的な結果となる領域へのアクセスが可能である。つまり、ストールのような致命的な障害に陥るソフトウェアはOSであることが多い。よって、障害解析に必要な情報の読み出しをする際、範囲をOS領域等に限定することで、障害情報収集にかかる時間を減らすことが可能になる。
【0023】
また、読みだしたデータを保存部に保存するため、このデータを設計者は後に原因解析のために用いることができる。また、OSの領域のデータを読み取れば、障害の原因を正しく判断することができる。
【0024】
また、大規模組込みシステムで障害が発生した場合でも、障害解析期間を短縮化することができる。
【0025】
以上により、組込みシステムの処理能力が限られている環境でも障害発生時の情報を収集することが可能である。
【0026】
なお、上記には、実施の形態を説明したが、上記実施の形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施の形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施の形態は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0027】
1 情報処理装置
10 機能提供手段
11 第1のCPU
12 タイマ
13 RAM
14 Watch Dog
15 ソフトウェア機能部(「機能提供部」に相当)
20 障害情報収集手段
21 第2のCPU
23 不揮発性メモリ
24 ネットワークデバイス
25 ソフトウェア機能部(「障害情報収集部」に相当)
151 OS
152 タイマハンドラ
251 NMI割込みハンドラ
252 情報収取モジュール
M1 メモリデータ
【先行技術文献】
【特許文献】
【0028】