JP2008171119A - 端末機器の不具合検出システム、その方法およびプログラム - Google Patents
端末機器の不具合検出システム、その方法およびプログラム Download PDFInfo
- Publication number
- JP2008171119A JP2008171119A JP2007002476A JP2007002476A JP2008171119A JP 2008171119 A JP2008171119 A JP 2008171119A JP 2007002476 A JP2007002476 A JP 2007002476A JP 2007002476 A JP2007002476 A JP 2007002476A JP 2008171119 A JP2008171119 A JP 2008171119A
- Authority
- JP
- Japan
- Prior art keywords
- processing
- history storage
- time
- storage table
- executed
- 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.)
- Withdrawn
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
Abstract
【課題】時刻情報を照らし合わせることで、どの処理とどの処理が同時に実行されていたのか把握すること。
【解決手段】マルチタスク対応として並列的に処理を行う処理履歴保存テーブルを有し、処理履歴保存テーブルに各処理の開始時に、各プログラム処理に割り当てられた番号と時刻を保存し、不具合発生のときに実行中のタスク処理履歴を保護してリセットし、処理履歴保存テーブルの時刻情報からどの処理とどの処理が同時に実行されていたのかを把握する。
【選択図】図2
【解決手段】マルチタスク対応として並列的に処理を行う処理履歴保存テーブルを有し、処理履歴保存テーブルに各処理の開始時に、各プログラム処理に割り当てられた番号と時刻を保存し、不具合発生のときに実行中のタスク処理履歴を保護してリセットし、処理履歴保存テーブルの時刻情報からどの処理とどの処理が同時に実行されていたのかを把握する。
【選択図】図2
Description
本発明は、プログラム処理の履歴を把握している端末機器の不具合を検出することができる技術に関する。
近年、端末機器の機能は多様化かつ複雑化している。また、端末機器でも複数の処理を同時に実行するマルチタスクOSが搭載されるようになってきており、不具合発生箇所を特定することがより困難になっている。
不具合検出の方法として、特許文献1には、プログラム処理ごとに番号を割り当て、各処理の実行時に処理番号を保存していくという方法が提案されている。
しかし、従来の方法ではマルチタスクOSを使用した端末機器の不具合検出に課題がある。マルチタスクOSではCPUの処理時間を時分割し、複数の処理を同時に実行しているため、最後に実行した処理が不具合の発生した処理であると特定することはできない。従って、従来の方法のように一つのリングバッファに処理履歴を保存していくだけでは、不具合の発生した処理を特定するのが困難である。
ここで、データ処理装置が、予め定められたタイミングでトラップ設定部動作させ、トラップ検出部がトラップ設定部に設定された事象を検出した際、タスク状態情報収集部はタスク状態テーブルを参照してタスク状態情報を収集し、メール送信部は、メール設定部に設定されたメールアドレスにタスク状態情報を添付してエラー通知を送信することで、予め設定したトラップ条件にあてはまるエラー、障害が発生した場合に、予め設定したメールアドレスにトラップの通知と、データ処理置内のタスク状態情報を収集して送付できるデータ処理装置を提供する技術が開示されている(例えば、特許文献2参照)。
特開2001−125809号公報
特開2006−113839号公報
しかしながら、上述の従来技術では、時刻情報を照らし合わせることで、どの処理とどの処理が同時に実行されていたのか把握することができない。
本発明は、以上説明した問題点を解決するためになされたものである。その目的は、時刻情報を照らし合わせることで、どの処理とどの処理が同時に実行されていたのか把握することである。
本発明は、マルチタスク対応として並列的に処理を行う処理履歴保存テーブルを有し、該処理履歴保存テーブルに各処理の開始時に、各プログラム処理に割り当てられた番号と時刻を保存し、
不具合発生のときに実行中のタスク処理履歴を保護してリセットし、
前記処理履歴保存テーブルの時刻情報からどの処理とどの処理が同時に実行されていたのかを把握する端末機器の不具合検出システムを提供する。
不具合発生のときに実行中のタスク処理履歴を保護してリセットし、
前記処理履歴保存テーブルの時刻情報からどの処理とどの処理が同時に実行されていたのかを把握する端末機器の不具合検出システムを提供する。
また、本発明は、マルチタスク対応として並列的に処理を行う処理履歴保存テーブルに各処理の開始時に、各プログラム処理に割り当てられた番号と時刻を保存するステップと、
不具合発生のときに実行中のタスク処理履歴を保護してリセットするステップと、
前記処理履歴保存テーブルの時刻情報からどの処理とどの処理が同時に実行されていたのかを把握するステップと、
を有する端末機器の不具合検出方法を提供する。
不具合発生のときに実行中のタスク処理履歴を保護してリセットするステップと、
前記処理履歴保存テーブルの時刻情報からどの処理とどの処理が同時に実行されていたのかを把握するステップと、
を有する端末機器の不具合検出方法を提供する。
本発明によれば、時刻情報を照らし合わせることで、どの処理とどの処理が同時に実行されていたのか把握することができる。
以下、本発明の実施の形態について図面を参照して詳細に説明する。
図1を参照すると、本実施の形態における端末機器の不具合検出システムは、最低限の構成部品として、CPU201、ROM(EEPROM)202、RAM203、タイマ204、外部IF205を有する。
各構成部品の主な使用用途は以下の通りである。
CPU201:端末機器の制御全般
ROM(EEPROM)202:プログラムの保存、処理履歴保存テーブルの保存用
RAM203:ワーク領域、処理履歴保存テーブルの保存用
タイマ204:時刻情報用
外部IF205:端末機器の操作、処理履歴保存テーブルの読み出し用
CPU201:端末機器の制御全般
ROM(EEPROM)202:プログラムの保存、処理履歴保存テーブルの保存用
RAM203:ワーク領域、処理履歴保存テーブルの保存用
タイマ204:時刻情報用
外部IF205:端末機器の操作、処理履歴保存テーブルの読み出し用
各部品は一般的なものを使用することができ、現在の構成を変更せずに実施することができる。
本実施の形態における端末機器の不具合検出システムでは、端末機器には処理ごとに番号を割り当てたプログラムが搭載されているものとする。まず、プログラム開始時にマルチタスク数分の処理履歴保存テーブル(リングバッファ)をRAM203上に確保する。その後は各処理を実行するたびに、タスク番号に応じた処理履歴保存テーブルへ処理番号と時刻情報を保存していく。このようにすることで、タスクごとに、CPU201が実行した順番で処理番号が保存される。
端末機器に不具合が生じた場合、不具合発生時の処理履歴保存テーブルの情報を残すために、RAM203上に保存されている処理履歴保存テーブルをROM(EEPROM)202へ書き込む。ROM(EEPROM)202には、複数の処理履歴保存テーブルが保存できるように領域を確保し、処理履歴が上書きされないようにすると好ましい。
ここで想定している不具合は、ハードウェアが検出できるもので、データアボートといった異常時にCPU201へ割り込み信号が発生し、割り込みテーブルへ飛ぶことのできる不具合である。ROM(EEPROM)202への保存処理は割り込み処理で行う。
不具合解析時には、ROM(EEPROM)202に保存された処理履歴保存テーブルを外部IF205から読み出すことにより、タスクごとの処理履歴と最後に実行された処理を確認することができ、不具合の発生した処理は各タスクの最後に実行された処理のいずれかであると特定することができる。
次に、本実施の形態の動作を図3、図4のフローチャートを参照して詳細に説明する。
プログラム開始時、RAM203上にマルチタスク数分の処理履歴テーブルを確保する(ステップ301)。処理履歴テーブルは、図2に示すようにバッファポインタ保存エリアとリングバッファである処理履歴保存エリアで構成されている。リングバッファのサイズは、端末機器の性能などによって適当な大きさに設定する。
各処理の実行時(ステップ302、303)には、図4に示すような処理履歴の保存処理を行う。
まず、処理が行われるタスクのタスク番号とタイマから現在時刻を取得する(ステップ401)。
次に、タスク番号に対応した処理履歴保存テーブルを選択する(ステップ402)。
次に、選択した処理履歴保存テーブルのバッファポインタの値を取得し(ステップ403)、バッファポインタの指し示すアドレスに処理番号と時刻を保存する(ステップ404)。
最後にバッファポインタの値をインクリメントする(ステップ405)。
端末機器が不具合を検出した場合(ステップ304)、不具合発生時の情報が消えないようにRAM203上に保存していた処理履歴保存テーブルをROM(EEPROM)202へ書き込む(ステップ305)。
その後、端末機器のリセットを行う(ステップ306)。
処理履歴の保存処理の具体的な例として図5のような処理が行われた場合の動作を以下に示す。この例では、同時実行可能なタスク数は2個とする。
処理21(ステップ501)を実行する場合、処理21はタスク2で実行されるので、タスク2の処理履歴保存テーブルを参照する(図6参照)。バッファポインタが34を示しているとすると、処理履歴保存エリアのアドレス34に処理番号である21と時刻9:00:00.00を保存するとともに、バッファポインタの値を35に書き換える。
次に、処理12(ステップ502)を実行する場合、処理12はタスク1で実行されるので、タスク1の処理履歴保存テーブルを参照する(図7参照)。バッファポインタが19を示していたとすると、処理履歴保存エリアのアドレス19に処理番号である12と時刻9:00:00.10を保存するとともに、バッファポインタの値を20に書き換える。
次に、処理13(ステップ503)を実行する場合、処理13はタスク1で実行されるので、タスク1の処理履歴保存テーブルを参照する(図8参照)。バッファポインタが示している処理履歴保存エリアのアドレス19に処理番号である13と時刻9:00:00.90を保存するとともに、バッファポインタの値を21に書き換える。
以下同様な動作を繰り返して行う。
次に、不具合検出の実施例を示す。図5中の処理13の途中で不具合が発生し、図9のような処理履歴保存テーブルが保存されたとする。
処理履歴保存テーブルから、タスク1は処理12→処理13、タスク2は処理21→処理22→処理23の順番で実行されたことが分かる。従って、不具合の発生した処理は処理13または処理23のいずれかであると特定することができる。
従来の方法のように処理履歴の保存先が一つしかない場合、図10に示すような処理履歴を得ることができるが、この処理履歴から不具合の発生した処理(処理13)を特定することは困難であり、本発明の優位性が分かる。
また、時刻情報を照らし合わせることで、図9の処理履歴保存テーブルから図5のようなタイミングチャートを描くことができ、どの処理とどの処理が同時に実行されていたのか把握することができる。
上記の本実施の形態によれば、タスクごとの処理履歴を把握できる。処理履歴保存テーブルをマルチタスク数分確保し、タスクごとに保存先を変えることで、タスクごとのプログラム処理の履歴を把握することができる。
また、不具合発生時の処理を特定できる。処理実行時に各処理に割り当てられた番号と実行時の時刻を保存しているため、これらの情報から最後に行われた処理を特定することができる。
また、同時に実行された処理を把握できる。処理履歴保存テーブルの時刻情報からどの処理とどの処理が同時に実行されていたのか把握することができる。
次に、本発明の他の実施の形態について説明する。
処理番号と同時に時刻情報も保存しているため、時刻情報から各処理の処理時間が分かり、処理時間が規定されている処理については、処理時間の妥当性について判断することができる。
すなわち、図9のような処理履歴保存テーブルが残っており、仮に処理11が1.00秒以内に完了しなければならない処理だとする。処理履歴保存テーブルの時刻情報から処理11の処理時間は0.80秒であると分かり、処理時間に問題はないと判断できる。
なお、上述する各実施の形態は、本発明の好適な実施の形態であり、本発明の要旨を逸脱しない範囲内において種々変更実施が可能である。例えば、端末機器の不具合検出システムの機能を実現するためのプログラムをシステムに読込ませて実行することによりシステムの機能を実現する処理を行ってもよい。さらに、そのプログラムは、コンピュータ読み取り可能な記録媒体であるCD−ROMまたは光磁気ディスクなどを介して、または伝送媒体であるインターネット、電話回線などを介して伝送波により他のコンピュータシステムに伝送されてもよい。
本発明は、プログラムを用いて制御を行っている各種の機器に適用可能である。
201 CPU
202 ROM(EEPROM)
203 RAM
204 タイマ
205 外部IF
202 ROM(EEPROM)
203 RAM
204 タイマ
205 外部IF
Claims (6)
- マルチタスク対応として並列的に処理を行う処理履歴保存テーブルを有し、該処理履歴保存テーブルに各処理の開始時に、各プログラム処理に割り当てられた番号と時刻を保存し、
不具合発生のときに実行中のタスク処理履歴を保護してリセットし、
前記処理履歴保存テーブルの時刻情報からどの処理とどの処理が同時に実行されていたのかを把握することを特徴とする端末機器の不具合検出システム。 - 前記処理履歴保存テーブルの時刻情報から各処理の処理時間を算定し、処理時間が規定されている処理について処理時間の妥当性を判断することを特徴とする請求項1記載の端末機器の不具合検出システム。
- マルチタスク対応として並列的に処理を行う処理履歴保存テーブルに各処理の開始時に、各プログラム処理に割り当てられた番号と時刻を保存するステップと、
不具合発生のときに実行中のタスク処理履歴を保護してリセットするステップと、
前記処理履歴保存テーブルの時刻情報からどの処理とどの処理が同時に実行されていたのかを把握するステップと、
を有することを特徴とする端末機器の不具合検出方法。 - 前記処理履歴保存テーブルの時刻情報から各処理の処理時間を算定し、処理時間が規定されている処理について処理時間の妥当性を判断するステップをさらに有することを特徴とする請求項3記載の端末機器の不具合検出方法。
- コンピュータシステムに請求項1記載の機能を実現させることを特徴とするプログラム。
- コンピュータシステムに請求項2記載の機能を実現させることを特徴とするプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007002476A JP2008171119A (ja) | 2007-01-10 | 2007-01-10 | 端末機器の不具合検出システム、その方法およびプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007002476A JP2008171119A (ja) | 2007-01-10 | 2007-01-10 | 端末機器の不具合検出システム、その方法およびプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008171119A true JP2008171119A (ja) | 2008-07-24 |
Family
ID=39699165
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007002476A Withdrawn JP2008171119A (ja) | 2007-01-10 | 2007-01-10 | 端末機器の不具合検出システム、その方法およびプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2008171119A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010186476A (ja) * | 2009-02-12 | 2010-08-26 | Internatl Business Mach Corp <Ibm> | データ構造に対し並列に実行される複数の動作を含む、実行履歴の正しさを検証するためのコンピュータ実装方法、システム及びコンピュータ・プログラム |
WO2017006437A1 (ja) * | 2015-07-07 | 2017-01-12 | 富士機械製造株式会社 | 部品実装機に装備されるコントローラ |
-
2007
- 2007-01-10 JP JP2007002476A patent/JP2008171119A/ja not_active Withdrawn
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010186476A (ja) * | 2009-02-12 | 2010-08-26 | Internatl Business Mach Corp <Ibm> | データ構造に対し並列に実行される複数の動作を含む、実行履歴の正しさを検証するためのコンピュータ実装方法、システム及びコンピュータ・プログラム |
WO2017006437A1 (ja) * | 2015-07-07 | 2017-01-12 | 富士機械製造株式会社 | 部品実装機に装備されるコントローラ |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8250543B2 (en) | Software tracing | |
US7992042B2 (en) | Debug support device, and program for directing computer to perform debugging method | |
CN102521098B (zh) | Cpu死机监控的处理方法和装置 | |
US20130096880A1 (en) | System test method | |
JP2009110156A (ja) | ログ出力装置及びログ出力プログラム | |
JP2007034900A (ja) | 情報処理方法および情報処理装置 | |
US9164846B2 (en) | Restarting a software system | |
US20130036331A1 (en) | Debugging method and debugging device | |
US20210103503A1 (en) | Exception handling in transactions | |
US20170139767A1 (en) | Dynamically detecting and interrupting excessive execution time | |
RU2015151181A (ru) | Режим слежения в устройстве обработки в системах трассировки команд | |
JP5014179B2 (ja) | Os優先度変更装置及びos優先度変更プログラム | |
JP4992740B2 (ja) | マルチプロセッサシステム、障害検出方法および障害検出プログラム | |
CN110597601A (zh) | 一种控制器任务切换方法、装置、设备及可读存储介质 | |
WO2016151964A1 (ja) | 情報処理装置 | |
JP2008171119A (ja) | 端末機器の不具合検出システム、その方法およびプログラム | |
US8156386B2 (en) | Information processing apparatus, and method and computer program for controlling same, for detecting certain failures | |
JPH02294739A (ja) | 障害検出方式 | |
WO2013104964A1 (en) | Thread based dynamic data collection | |
JP6111591B2 (ja) | 情報処理装置、情報処理方法、および、コンピュータ・プログラム | |
JP2007034864A (ja) | 入出力装置の診断方法 | |
JP2007164451A (ja) | 入出力制御方法、入出力制御プログラムおよび磁気ディスク装置 | |
JP2007272581A (ja) | 監視プログラム、監視方法、および、監視装置 | |
JP2008217665A (ja) | マルチプロセッサシステム、タスクスケジューリング方法およびタスクスケジューリングプログラム | |
JP2014164464A (ja) | ログ出力装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20100406 |