JP5177299B2 - 情報処理装置のオンラインデバッグシステム及びオンラインデバッグ方法 - Google Patents
情報処理装置のオンラインデバッグシステム及びオンラインデバッグ方法 Download PDFInfo
- Publication number
- JP5177299B2 JP5177299B2 JP2011535829A JP2011535829A JP5177299B2 JP 5177299 B2 JP5177299 B2 JP 5177299B2 JP 2011535829 A JP2011535829 A JP 2011535829A JP 2011535829 A JP2011535829 A JP 2011535829A JP 5177299 B2 JP5177299 B2 JP 5177299B2
- Authority
- JP
- Japan
- Prior art keywords
- information processing
- connection terminal
- processing apparatus
- storage device
- debugging
- 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.)
- Expired - Fee Related
Links
- 230000010365 information processing Effects 0.000 title claims description 134
- 238000000034 method Methods 0.000 title claims description 29
- 238000004891 communication Methods 0.000 claims description 173
- 238000011161 development Methods 0.000 claims description 15
- 238000012545 processing Methods 0.000 claims description 4
- 230000015654 memory Effects 0.000 description 61
- 238000010586 diagram Methods 0.000 description 17
- 238000012360 testing method Methods 0.000 description 12
- 230000002093 peripheral effect Effects 0.000 description 11
- 230000006870 function Effects 0.000 description 6
- 238000003745 diagnosis Methods 0.000 description 5
- 238000007726 management method Methods 0.000 description 4
- 238000012217 deletion Methods 0.000 description 3
- 230000037430 deletion Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 230000002457 bidirectional effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000009434 installation Methods 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/26—Functional testing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3664—Environments for testing or debugging software
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/0736—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function
- G06F11/0739—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function in a data processing system embedded in automotive or aircraft systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/0748—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a remote unit communicating with a single-box computer node experiencing an error/fault
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0766—Error or fault reporting or storing
- G06F11/0775—Content or structure details of the error report, e.g. specific table structure, specific error fields
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Description
本発明は、例えば車両等に搭載される情報処理装置のオンラインデバッグシステム、及びオンラインデバッグ方法に関する。
一般に、上記情報処理装置の実行状態等を試験するに際して、試験用の機器が情報処理装置に外部接続される。例えば、特許文献1に記載の車両故障診断装置には、当該車両故障診断装置を有する情報処理装置の機能試験を車両故障診断装置が行うに際し、通信経路(外部通信路)を介して試験用の機器(外部処理装置)が接続される。そしてこの試験用の機器には、情報処理装置から当該情報処理装置の故障情報の分析結果等が送出され、逆に試験用の機器から情報処理装置には、情報処理装置の故障原因を特定するためのツリー理論に基づく故障原因特定手段の追加や、この追加した故障原因特定手段を情報処理装置から削除することや、あるいは情報処理装置をテストモードに転換設定することなどが指示される。これにより、必要に応じて試験用の機器によって指示された試験が、情報処理装置により可能になるとともに、試験が不要なときには、情報処理装置から試験用の機器を取り外しておくことができるようにもなる。
また、情報処理装置などの開発時にあっては、同装置においてソフトウェアを実行させつつ、そのソフトウェアの実行状態をリアルタイムで監視するとともに、実行中のソフトウェアを必要に応じて修正可能なオンラインデバッグが欠かせない。このようなオンラインデバッグは、特許文献1に記載の車両故障診断装置と同様に、情報処理装置に試験用の機器、この場合いわゆるデバッグ用の機器を外部接続して行う。すなわち、情報処理装置とは各別に設けられたオンラインデバッグ用のデバッグ装置を、デバッグ用通信経路を介して情報処理装置に接続する。
例えば車載情報処理装置の一つであるナビゲーションシステムのデバッグに際して、図12(a)に示すように、開発時、当該ナビゲーションシステム60Aにデバッグ機能を提供するソフトウェアであるデバッグデーモン61が、車両外部のデバッグ装置50に通信可能に接続される。そしてナビゲーションシステム60Aにおいてデバッグデーモン61とデバッグ装置50との間には、イーサーネットドライバ63により使用可能にされたイーサーネットインタフェース64等を介してTCP/IP62により生成されるプロトコルに基づく通信が可能な通信経路が確保される。
ところで近年、開発用のデバッグ用通信経路などは、製品の小型化や低価格化を図るため、開発終了後に情報処理装置から取り除くことも多くなってきている。すなわち図12(b)に示すように、開発終了後のナビゲーションシステム60Bは、小型化や低価格化等のためにイーサーネットインタフェース64が削除され、デバッグ装置50とは接続できない状態で出荷される。このため、デバッグ装置50に接続できないナビゲーションシステム60Bは、そのソフトウェアのデバッグが出荷後は不可能となり、車両等において利用される際のナビゲーションシステム60Bの動作状態の把握等が困難となっている。
なお、ナビゲーションシステム等の車載情報処理装置に限らず、製品の小型化や低価格化を図るべく、開発終了後にデバッグ用の通信経路が取り除かれる情報処理装置は、こうした課題も概ね共通したものとなっている。
本発明は、このような実情に鑑みてなされたものであり、その目的は、情報処理装置自体の製品としての最低限の機能を維持しつつ、オンラインデバッグのためのデバッグ装置を容易に接続可能にする情報処理装置のオンラインデバッグシステム、及びオンラインデバッグ方法を提供することにある。
以下、上記課題を解決するための手段及びその作用効果を記載する。
上記課題を解決するために本発明は、情報処理装置と、前記情報処理装置を外部からオンラインでデバッグするデバッグ装置とを有するオンラインデバッグシステムであって、前記情報処理装置は、記憶装置が記憶するデータを取得するために前記記憶装置に接続される接続端子を有し、前記情報処理装置は、該情報処理装置で実行されるソフトウェアを外部からの指示に基づいてデバッグするデバッグ実行部と、前記記憶装置から読み込んだ前記データを有効化させるデータ展開部とを有し、前記記憶装置が記憶する前記データは、前記デバッグ実行部に前記接続端子を介して外部と通信させるための通信ドライバ群を有し、前記接続端子に接続された前記記憶装置から前記データ展開部が前記通信ドライバ群を読み出して有効化すると、有効化された前記通信ドライバ群は、前記接続端子に接続されて前記情報処理装置の外部から指示を伝達する前記デバッグ装置を、前記デバッグ実行部と通信可能にする。
上記課題を解決するために本発明は、情報処理装置と、前記情報処理装置を外部からオンラインでデバッグするデバッグ装置とを有するオンラインデバッグシステムであって、前記情報処理装置は、記憶装置が記憶するデータを取得するために前記記憶装置に接続される接続端子を有し、前記情報処理装置は、該情報処理装置で実行されるソフトウェアを外部からの指示に基づいてデバッグするデバッグ実行部と、前記記憶装置から読み込んだ前記データを有効化させるデータ展開部とを有し、前記記憶装置が記憶する前記データは、前記デバッグ実行部に前記接続端子を介して外部と通信させるための通信ドライバ群を有し、前記接続端子に接続された前記記憶装置から前記データ展開部が前記通信ドライバ群を読み出して有効化すると、有効化された前記通信ドライバ群は、前記接続端子に接続されて前記情報処理装置の外部から指示を伝達する前記デバッグ装置を、前記デバッグ実行部と通信可能にする。
また上記課題を解決するために本発明は、情報処理装置を、外部のデバッグ装置から伝達する指示によってオンラインでデバッグすることを可能とする、情報処理装置のオンラインデバッグ方法を提供し、前記情報処理装置は、記憶装置が記憶するデータを取得するために前記記憶装置に接続される接続端子を有し、前記情報処理装置に、該情報処理装置で実行されるソフトウェアを外部からの指示に基づいてデバッグするデバッグ実行部と、前記記憶装置から読み込んだ前記データを有効化させるデータ展開部とを設けておくとともに、前記記憶装置には、前記デバッグ実行部に前記接続端子を介して外部と通信させるための通信ドライバ群を記憶しておくことと、前記接続端子に接続された前記記憶装置から前記データ展開部が読み出した前記通信ドライバ群を有効化させることと、前記有効化させた通信ドライバ群によって前記デバッグ装置を前記デバッグ実行部と通信可能とすることとを備える。
このような構成や方法によれば、記憶装置に記憶されている通信用ドライバ群は、情報処理装置がデバッグ装置に接続するために有する接続端子を介して、デバッグ装置が利用される際に記憶装置から情報処理装置に読み出され有効化される。すなわち情報処理装置が通信用ドライバ群を実行するために要する領域は、デバッグ装置が利用される時にのみ、デバッグ用通信経路として確保されるようになる。これにより、製品として情報処理装置が出荷されるために開発用のデバッグ用通信経路などが取り除かれた状態の情報処理装置であっても、情報処理装置が実行するソフトウェアのデバッグを出荷後でも可能にすることができる。また出荷後の情報処理装置そのものからは、デバッグ装置を情報処理装置に接続するのに要する通信経路を含めたインタフェース等を割愛することができるようになる。
好ましいオンラインデバッグシステムとしては、前記記憶装置が記憶する前記データは、前記情報処理装置に対応する前記通信ドライバ群を示すリストと、同リストに登録されている前記通信ドライバ群とを有し、前記データ展開部は、前記情報処理装置に対応するものとして指定されている前記通信ドライバ群を前記リストを参照して選択し、この選択した前記通信ドライバ群を前記記憶装置から読み込み有効化する。
好ましいオンラインデバッグ方法としては、前記記憶装置には、前記情報処理装置に対応する前記通信ドライバ群を示すリストと、同リストに登録されている前記通信ドライバ群とを記憶させておき、前記データ展開部には、前記情報処理装置に対応するものとして指定されている前記通信ドライバ群を前記リストを参照して選択させ、この選択した前記通信ドライバ群を前記記憶装置から読み込み有効化させる。
このような構成や方法によれば、情報処理装置毎に適用される通信ドライバ群が互いに異なる場合でも、情報処理装置は適切な通信ドライバ群を選択して、接続端子をデバッグ装置と通信可能にすることができるようになる。
好ましいオンラインデバッグシステムとしては、前記接続端子は、同時使用の可能な第1接続端子と第2接続端子からなり、前記第1接続端子に前記記憶装置が接続されることにより、前記記憶装置から前記情報処理装置に読み込まれた前記通信ドライバ群が前記第2接続端子に対して有効化され、この前記第2接続端子に前記デバッグ装置が接続される。
好ましいオンラインデバッグ方法としては、前記接続端子として第1の接続端子と第2の接続端子とを用意し、前記第1の接続端子に前記記憶装置を接続させることにより、前記記憶装置から前記情報処理装置に読み込まれた前記通信ドライバ群を前記第2の接続端子に対して有効化させ、この前記第2の接続端子に前記デバッグ装置を接続させる。
このような構成や方法によれば、情報処理装置の複数の接続端子をそれぞれ用いることにより、情報処理装置と記憶装置の間の接続状態から、情報処理装置とデバッグ装置の間の接続状態への接続切換等の手間が省かれる。よってこのようなデバッグ装置を情報処理装置に接続するのが容易とされるようになる。
好ましくは、前記接続端子には、同接続端子を拡張させた第1の接続端子と第2の接続端子とが設けられ、前記第1の接続端子に前記記憶装置が接続されることにより、前記記憶装置から前記情報処理装置に読み込まれた前記通信ドライバ群が前記第2の接続端子に対して有効化され、この前記第2の接続端子に前記デバッグ装置が接続される。
このように情報処理装置の接続端子を複数に拡張できるような場合、複数ある接続端子をそれぞれ用いることにより、情報処理装置と記憶装置の間の接続状態から、情報処理装置とデバッグ装置の間の接続状態への接続切換等の手間が省かれる。よってこのようなデバッグ装置を情報処理装置に接続するのが容易とされるようになる。
好ましくは、前記記憶装置が前記第1の接続端子から取り外されることにより、前記第2の接続端子に接続されている前記デバッグ装置と、前記デバッグ実行部との間の通信は解除され、且つ前記通信ドライバ群が前記第2の接続端子に対して無効化される。
好ましくは、前記記憶装置を前記第1の接続端子から取り外すことにより、前記第2の接続端子に接続されている前記デバッグ装置と、前記デバッグ実行部との間の通信を解除させ、且つ前記通信ドライバ群を前記第2の接続端子に対して無効化させる。
このような構成や方法によれば、デバッグ端末を情報処理装置に接続させるために第1接続端子に記憶装置を接続することによって開始された第2の接続端子に対する通信ドライバ群の有効化は、第1の接続端子から記憶装置を取り外すことによって終了される。これにより、デバッグ端末を利用することによる情報処理装置のオンラインデバッグが、情報処理装置の一方の接続端子への記憶装置の着脱により確実に管理できるようになる。よってこのような情報処理システムにおけるオンラインデバッグの実行管理が容易かつ確実になされるようになる。
好ましくは、前記記憶装置と前記デバッグ装置は、前記接続端子に接続される端子を共有する一体の装置として構成されている。
このような構成によれば、記憶装置とデバッグ装置との管理を容易にすることができるようになる。
このような構成によれば、記憶装置とデバッグ装置との管理を容易にすることができるようになる。
好ましくは、前記接続端子の規格は、シリアルバス規格である。
このような構成によれば、一般的な規格に基づいた通信経路により、情報処理装置と記憶装置とデバッグ装置の間の通信がなされるようになるので、情報処理装置に接続可能なデバッグ装置の制約が少なくなる。これにより、このような情報処理装置のオンラインデバッグシステムの利用価値が高められる。
このような構成によれば、一般的な規格に基づいた通信経路により、情報処理装置と記憶装置とデバッグ装置の間の通信がなされるようになるので、情報処理装置に接続可能なデバッグ装置の制約が少なくなる。これにより、このような情報処理装置のオンラインデバッグシステムの利用価値が高められる。
好ましくは、前記情報処理装置の前記接続端子の規格はUSB規格であり、この前記接続端子に接続されたUSBハブに、前記第1の接続端子と前記第2の接続端子が設けられている。
このような構成によれば、情報処理装置と記憶装置とデバッグ装置の間の通信経路に、情報処理装置の接続端子を複数に拡張することのできるハブを利用できる。さらに、拡張された接続端子に対して、それぞれ各別の通信ドライバ群を適用可能なUSB規格のオンラインデバッグシステムを適用することが容易になる。これにより、情報処理装置のオンラインデバッグシステムの利用可能性や適用範囲が拡張される。
好ましくは、前記情報処理装置は、車両に搭載された車載情報処理装置である。
このような構成によれば、オンラインデバッグシステムを、車両に搭載されるナビゲーションシステムなどの車載情報処理装置をオンラインデバッグするように適用することができる。よって、カーディーラなどによって、ナビゲーションシステムをオンラインデバッグなどすることが可能にもなる。これにより、ユーザの感じる情報処理装置の違和感などに迅速に対応することが可能となり、情報処理装置のオンラインデバッグシステムの利便性の向上などが図られるようになる。
このような構成によれば、オンラインデバッグシステムを、車両に搭載されるナビゲーションシステムなどの車載情報処理装置をオンラインデバッグするように適用することができる。よって、カーディーラなどによって、ナビゲーションシステムをオンラインデバッグなどすることが可能にもなる。これにより、ユーザの感じる情報処理装置の違和感などに迅速に対応することが可能となり、情報処理装置のオンラインデバッグシステムの利便性の向上などが図られるようになる。
(第1の実施形態)
本発明にかかる情報処理装置のオンラインデバッグシステムの構成について図1〜図4に従って説明する。
本発明にかかる情報処理装置のオンラインデバッグシステムの構成について図1〜図4に従って説明する。
図1に示すように、情報処理装置のオンラインデバッグシステムは、車両10に搭載されている情報処理装置としてのナビゲーションシステム20と、ナビゲーションシステム20に通信可能に外部接続されることによってナビゲーションシステム20をオンラインデバッグすることに関する操作を可能にするデバッグ装置50とによって構成されている。また、ナビゲーションシステム20には、ナビゲーションシステム20との間でのソフトウェアやデータの入出力に用いられる外部記憶装置としてのUSBメモリ40が、読み書き(アクセス)可能な態様で接続される。
車両10は、自動車などの移動体からなり、車両制御に関する各種の制御装置としての車両ECU11や、車両状況などを測定するセンサ12や、前記ナビゲーションシステム20などを搭載し、それら車両ECU11、センサ12、およびナビゲーションシステム20は車載ネットワークなどによって相互に情報通信可能に接続されている。ナビゲーションシステム20は、車載ネットワークを介して車両ECU11などから、車両IDや、車種や、車両10の仕向け地など各種車両情報を取得できる。
また、車両10は、ナビゲーションシステム20に接続されるとともにナビゲーションシステム20からの出力情報を受信する表示画面15及びスピーカ16を搭載している。表示画面15は、ナビゲーションシステム20から文字情報や画像情報などの出力情報を受けて、それらを文字や画像として表示するとともに、スピーカ16は、ナビゲーションシステム20からの音声情報などの出力情報を受けて、それらを音声として出力する。このようにしてナビゲーションシステム20からの出力情報は、表示画面15やスピーカ16を介して運転者等へ提供される。
ナビゲーションシステム20は、図示しない全地球測位システム(GPS:Global Positioning System)等を利用することによって、車両10の車両状態の一つとしての車両10の現在位置を検出する。そしてナビゲーションシステム20は、検出した車両10の現在位置に基づいて予め記憶された地図情報を参照することにより、走行目的地までの車両10の走行経路等の案内等を、表示画面15の画像やスピーカ16からの音声として運転者等に提供する。
ナビゲーションシステム20には、走行経路等の案内などを行う演算を処理するため、マイクロコンピュータを中心に構成される演算装置(図示略)が設けられている。すなわち演算装置には、各種演算処理を実行するCPU、各種制御プログラムを格納するROM、データ格納やプログラム実行のためのワークエリアとして利用されるRAM、その他のメモリ(不揮発性メモリを含む)等が設けられている。また、ナビゲーションシステム20には、ハードディスクなどの公知の記憶装置が設けられており、これにナビゲーションシステム20のOSなどの基本ソフトウェアや、経路案内用のソフトウェアや、オンラインデバッグ用のソフトウェアや、それらソフトウェアに関連する各種のソフトウェアやドライバなどが記憶されている。すなわち、上記演算装置は、起動されるとまず記憶装置から基本ソフトウェアを読み込み実行処理し、その後、必要に応じて、記憶装置から走行経路等の案内に関するソフトウェアやオンラインデバッグ用のソフトウェアを読み込みそれぞれ実行処理する。例えば、ナビゲーションシステム20の基本機能は、基本ソフトウェアが実行されることで整えられ、走行経路等の案内に関するソフトウェアが実行されることでナビゲーションシステム20による走行経路等の案内が実施される。
また、図2に示すように、ナビゲーションシステム20には、ナビゲーションシステム20をオンラインデバッグするためのソフトウェアであるデバッグ実行部としてのデバッグデーモン21と、デバッグデーモン21とデバッグ装置50との間のデータ通信用のプロトコルを提供するTCP/IP22とが設けられる。デバッグデーモン21は、ナビゲーションシステム20の演算装置にて実行されるソフトウェア(例えば、経路案内用のソフトウェア)をオンラインデバッグするためのソフトウェアである。デバッグデーモン21は、デバッグ対象のソフトウェアからデバッグに関する情報を取得するとともに、その取得結果をリアルタイムでデバッグ装置50に向けて出力することができる。逆に、デバッグデーモン21には、デバッグ装置50からオンラインデバッグに関する指示がその操作の都度逐次に入力設定される。
さらに、ナビゲーションシステム20には、外部インタフェースとしてUSB(Universal Serial Bus: ユニバーサル・シリアル・バス)が設けられている。USBインタフェースには、接続端子としてUSB規格の接続端子(Aプラグ)からなるUSBプラグ27が設けられており、そのUSBプラグ27に外部記憶装置としてのUSBメモリ40や、後述するUSBハブ30などのUSB周辺機器が接続されるようになっている。USBプラグ27に接続されるUSB周辺機器とのUSBインタフェースの接続経路は、ナビゲーションシステム20が有するUSBホスト26(ホストコントローラ)により管理されており、USBホスト26は、USBプラグ27に接続されたUSB周辺機器との間にデータの相互転送が可能な接続経路を確保する。すなわち、USBホスト26は、USBプラグ27にUSB周辺機器が装着されたことを検出して接続経路を確保するとともに、逆にUSBプラグ27からUSB周辺機器が取り外されたことを検出して接続経路を解放する。これに加えて、USBホスト26は、確保された接続経路を介してナビゲーションシステム20の演算装置に、USBプラグ27に接続されたUSB周辺機器との間のデータの相互転送を可能とする通信経路を提供する。
これによりナビゲーションシステム20は、USBホスト26を中継するかたちで、USBプラグ27に接続されるUSB周辺機器、例えばUSBメモリ40との間の相互のデータ通信が可能とされる。このデータ通信によりナビゲーションシステム20は、USBメモリ40を、外部接続される記憶装置(マスストレージクラス)と認識し、これを記憶装置として取り扱うための記憶装置用ドライバ25を特定する。これによりナビゲーションシステム20は、記憶装置用ドライバ25を用いることで、USBプラグ27に接続されるUSBメモリ40を読み書き(アクセス)可能な記憶装置としての取り扱うことができる。なお本実施形態では、ナビゲーションシステム20には、USBメモリ40などを記憶装置として取り扱うための記憶装置用ドライバ25が標準で用意されている。
ところで図2に示すようにUSBプラグ27には、USBハブ30が接続されている。USBハブ30は、USBプラグ27の数を拡張する機能を有し、USBプラグ27に同USBプラグ27と同等の機能を有する接続端子(Aプラグ)を複数供給する。このようにUSBハブ30は、ナビゲーションシステム20のUSBプラグ27の接続端子(Aプラグ)に接続可能なUSB規格の接続端子(Bプラグ)を有するとともに、USBプラグ27と同様の接続端子(Aプラグ)をも複数有している。このようなUSBハブ30の複数のAプラグのうちの1つを第1の接続端子30Aと称し、別の1つを第2の接続端子30Bと称することにする。USBホスト26は、USBハブ30の各接続端子(Aプラグ)のそれぞれに接続された各USB周辺機器の接続経路のそれぞれを、それらUSB周辺機器がUSBプラグ27に直接に接続された場合と同様に管理し、USBハブ30の各接続端子(Aプラグ)に接続された各USB周辺機器とUSBプラグ27との間にデータの相互転送を可能な接続経路をそれぞれ確保する。また、USBホスト26は、ナビゲーションシステム20の演算装置に対して、前記各USB周辺機器とUSBプラグ27との間の相互のデータ通信を可能とする各別の通信経路をそれぞれ提供する。これによりナビゲーションシステム20は、記憶装置用ドライバ25を用いることで、USBハブ30に接続されるUSBメモリ40の記憶領域に読み書き可能になる。
さらに、USBハブ30には、USB−シリアル変換器31を介してデバッグ装置50が接続されている。USB−シリアル変換器31は、USB規格で送受されるデータを、シリアル通信ポートで受信もしくは送信できるデータに変換するものである。デバッグ装置50は、例えばパーソナルコンピュータからなり、デバッグ装置50が有するシリアル通信ポートはUSB−シリアル変換器31に接続される。またデバッグ装置50は、ナビゲーションシステム20に搭載されているデバッグデーモン21との間のデータ通信によりデバッグに関する情報を得て、デバッグ装置50の画面に表示するとともに、デバッグデーモン21にはデバッグに関する指示を与えることができる。
なお、デバッグデーモン21とデバッグ装置50との間のデータ通信のためには、ナビゲーションシステム20においてTCP/IP22とUSBホスト26との間に、シリアル通信ドライバ23が必要とされる。しかしながら本実施形態では、出荷時のナビゲーションシステム20に搭載される基本ソフトウェアからは、シリアル通信ドライバ23の搭載が割愛されている(図2ではシリアル通信ドライバ23は破線で示している)。すなわち本実施形態ではシリアル通信ドライバ23は、ナビゲーションシステム20の実行中に必要に応じて動的にナビゲーションシステム20に組み込まれ(ダイナミックリンクされ)有効化されるようになっている。このためナビゲーションシステム20の通常の使用時などにおいて、USB−シリアル変換器31をUSBハブ30及びUSBプラグ27を介してUSBホスト26に接続しても、つまりUSBホスト26とUSB−シリアル変換器31との間に接続経路を確保したとしても、ナビゲーションシステム20にはシリアル通信ドライバ23が存在しないため、デバッグ装置50はデバッグデーモン21との間でデータ通信を行うことができない。
ところで、図3(a)及び図3(b)に示すように、USBメモリ40には、ナビゲーションシステム20に必要とされるシリアル通信ドライバ23の複数種が通信ドライバ群として登録されたリストとしての検索テーブル41や、シリアル通信ドライバ23を構成するPPP42やCDC_ACM43などが記憶されている。検索テーブル41や、PPP42や、CDC_ACM43などは、ナビゲーションシステム20の開発時などに用意され、それらが必要に応じてカーディーラなどによってUSBメモリ40に記憶される。
検索テーブル41は、ナビゲーションシステム20の種類に応じてナビゲーションシステム20とデバッグ装置50との間の接続に利用される通信インタフェースと、同通信インタフェースの利用に必要とされる通信ドライバ群とを互いに関連付けて登録したテーブルである。図3(a)に示すように、具体的には検索テーブル41には、ナビゲーションシステム20の種類の判定に用いられる基本ソフトウェアなどのソフトウェア品番と、車種と、車両10の仕向け地と、利用可能な通信インタフェースと、通信ドライバ群などの項目が登録される。例えば、検索テーブル41には、ソフトウェア品番として「123_456」、車種として「xxx」、車両10の仕向け地として「北米」、利用可能な通信インタフェースとして「USB」、通信ドライバ群として「PPP/CDC_ACM」がそれぞれ登録されている。PPP42は、2点間を接続してデータ通信を行うための通信プロトコルを提供する。CDC_ACM43は、USBホスト26を介する双方向のシリアル通信を可能とする。
このことから、USBメモリ40に記憶されているシリアル通信ドライバ23が、ナビゲーションシステム20に動的に組み込まれることにより、デバッグデーモン21とデバッグ装置50とは、TCP/IPプロトコルによるデータ通信を、それら2点間で、USBホスト26を介する双方向のシリアル通信として行えるように通信経路が確保される。
このような通信経路を確保するため、ナビゲーションシステム20には、USBメモリ40に記憶されているシリアル通信ドライバ23(PPP42とCDC_ACM43)を読み込んでナビゲーションシステム20に動的に組み込ませるデータ展開部24が設けられている。データ展開部24は、USBプラグ27に接続されたUSBメモリ40に、記憶装置用ドライバ25を介してアクセスし、USBメモリ40から検索テーブル41を取得するとともに、図4に示すように、ナビゲーションシステム20からソフトウェア品番111や、車種112、仕向け地113などの車両情報も取得する。例えば、本実施形態では、データ展開部24は、ナビゲーションシステム20などから、ソフトウェア品番として「123_456」を、車種として「xxx」を、仕向け地として「北米」をそれぞれ取得さする。そして、取得した車両情報に基づいて検索テーブル41内を検索することにより、車両10に必要な通信ドライバ群115を特定する。そしてデータ展開部24は、特定した通信ドライバ群115、ここではPPP42とCDC_ACM43とをUSBメモリ40から取得して、ナビゲーションシステム20に動的に組み込ませる。これによりナビゲーションシステム20には、車両10に対応するPPP42とCDC_ACM43が動的に組み込まれ、これらがシリアル通信ドライバ23として有効化される。
次に、このように構成される情報処理装置のオンラインデバッグシステムの作用について図5〜7を参照して説明する。
図5のフローチャートに示すように、ナビゲーションシステム20は、USBプラグ27にUSBメモリ40が挿入されたことをUSBホスト26により検出すると(図5のステップS10)、データ展開部24によりUSBメモリ40から検索テーブル41を取得する(図5のステップS11)。このとき、図6の通信経路図に示すように、ナビゲーションシステム20とUSBメモリ40との間では、記憶装置用ドライバ25、USBホスト26、及びUSBハブ30の第1の接続端子30A(Aプラグ)とによって構成される第1通信経路40Rにより、データ通信が可能となる。
図5のフローチャートに示すように、ナビゲーションシステム20は、USBプラグ27にUSBメモリ40が挿入されたことをUSBホスト26により検出すると(図5のステップS10)、データ展開部24によりUSBメモリ40から検索テーブル41を取得する(図5のステップS11)。このとき、図6の通信経路図に示すように、ナビゲーションシステム20とUSBメモリ40との間では、記憶装置用ドライバ25、USBホスト26、及びUSBハブ30の第1の接続端子30A(Aプラグ)とによって構成される第1通信経路40Rにより、データ通信が可能となる。
そして検索テーブル41が取得されると、データ展開部24は、検索テーブル41を検索することによってナビゲーションシステム20に適した通信ドライバ群115を特定する(図5のステップS12)とともに、特定された通信ドライバ群115(PPP42とCDC_ACM43)をUSBメモリ40から取得する(図5のステップS13)。PPP42やCDC_ACM43が取得されると、データ展開部24は、その取得した通信ドライバ群115をナビゲーションシステム20に動的に組み込み(ダイナミックリンクし)有効化させる(図5のステップS14)。通信ドライバ群115の動的組み込みの終了後、データ展開部24は、デバッグデーモン21の起動命令を出し(図5のステップS15)、ナビゲーションシステム20においてデバッグデーモン21を起動させる(図5のステップS16)。そして起動されたデバッグデーモン21は、デバッグ装置50との間の通信経路を確立する(図5のステップS17)。この通信経路の確立によって、図6に示すように、デバッグデーモン21とデバッグ装置50との間では、シリアル通信ドライバ23、USBホスト26、及びUSBハブ30の第2の接続端子30B(Aプラグ)とによって構成された第2通信経路50Rにより、データ通信が可能となる。そして、この確立された第2通信経路50Rを介して、デバッグデーモン21とデバッグ装置50との間でオンラインデバッグに必要なデータ通信が行われて、デバッグ装置50によるナビゲーションシステム20のオンラインデバッグ(リアルタイムでバッグ。図5のステップS18)が実行可能になる。
逆に、図7のフローチャートに示すように、ナビゲーションシステム20は、USBプラグ27からUSBメモリ40が取り外されると(図7のステップS20)、そのUSBメモリ40が取り外されたことをUSBホスト26により検出する(図7のステップS21)。USBメモリ40の取り外しが検出されると、ナビゲーションシステム20は、オンラインデバッグの終了処理を行い、同処理にてデバッグデーモン21によるオンラインデバッグ処理を終了させる(図7のステップS22)。またナビゲーションシステム20は、デバッグ装置50に前記処理によるデバッグデーモン21におけるオンラインデバッグの終了を通知して、デバッグ装置50にもオンラインデバッグの終了処理をさせる(図7のステップS23)。デバッグデーモン21のオンラインデバッグの処理が終了されると、ナビゲーションシステム20は、デバッグデーモン21とデバッグ装置50との間の通信経路を切断して(図7のステップS24)から、シリアル通信ドライバ23の削除処理を開始する(図7のステップS25)。シリアル通信ドライバ23の削除処理は、ナビゲーションシステム20を、シリアル通信ドライバ23が組み込まれていない状態に復帰させるための処理である。具体的には、ナビゲーションシステム20を再起動させることにより、シリアル通信ドライバ23がもともと割愛されていた基本ソフトウェアを読み込ませることで、該ナビゲーションシステム20をシリアル通信ドライバ23の組み込まれていない状態に復帰させる。すなわち、シリアル通信ドライバ23の削除処理では、ナビゲーションシステム20の再起動の準備が行われ、準備が整うとナビゲーションシステム20が再起動される(図7のステップS26)。これにより、ナビゲーションシステム20は、シリアル通信ドライバ23が割愛された状態で起動され、通常のナビゲーション動作が可能な状態になる。
以上説明したように、本実施形態に係る情報処理装置のオンラインデバッグシステムは、以下に列記する効果を有する。
(1)ナビゲーションシステム20は、デバッグ装置50との接続に用いられる端子であるUSBプラグ27を利用して、デバッグ装置50の利用時にUSBメモリ40から通信ドライバ群115を読み出し有効化する。すなわち、ナビゲーションシステム20が通信ドライバ群115の実行に要する領域は、デバッグ装置50の利用時にのみ、デバッグ用通信経路(第1通信経路40Rと第2通信経路50R)として確保されるようになる。これにより、ナビゲーション動作を行う製品として出荷時や通常使用時には開発用のデバッグ用通信経路などが取り除かれたナビゲーションシステム20にあっても、ナビゲーションシステム20で実行するソフトウェアのデバッグを必要に応じて随時可能とする。つまりナビゲーションシステムそのものとしては、デバッグ装置50の接続に要する通信経路を含めたインタフェース等を普段はナビゲーションシステム20から割愛することができるようになる。
(1)ナビゲーションシステム20は、デバッグ装置50との接続に用いられる端子であるUSBプラグ27を利用して、デバッグ装置50の利用時にUSBメモリ40から通信ドライバ群115を読み出し有効化する。すなわち、ナビゲーションシステム20が通信ドライバ群115の実行に要する領域は、デバッグ装置50の利用時にのみ、デバッグ用通信経路(第1通信経路40Rと第2通信経路50R)として確保されるようになる。これにより、ナビゲーション動作を行う製品として出荷時や通常使用時には開発用のデバッグ用通信経路などが取り除かれたナビゲーションシステム20にあっても、ナビゲーションシステム20で実行するソフトウェアのデバッグを必要に応じて随時可能とする。つまりナビゲーションシステムそのものとしては、デバッグ装置50の接続に要する通信経路を含めたインタフェース等を普段はナビゲーションシステム20から割愛することができるようになる。
(2)ナビゲーションシステム20毎に適用される通信ドライバ群115が異なるとしても、USBメモリ40が検索テーブル41を記憶しているため、ナビゲーションシステム20は適切な通信ドライバ群115をUSBメモリ40から選択できる。つまりナビゲーションシステム20は、接続端子つまりUSBプラグ27と第2の接続端子30Bを、デバッグ装置50と通信可能に好適に設定することができるようになる。
(3)USBハブ30の2つのAプラグの接続端子(第1の接続端子30Aと第2の接続端子30B)を用いる。つまり第1の接続端子30AにUSBメモリ40を接続した状態と、第2の接続端子30Bにデバッグ装置50を接続した状態とを両立できる。よってナビゲーションシステム20へのUSBメモリ40の接続状態と、ナビゲーションシステム20へのデバッグ装置50の接続状態との接続切換等の手間が省かれる。このようなデバッグ装置50のナビゲーションシステム20への接続が容易とされるようになる。
(4)USBハブ30の第2の接続端子30Bは、第1の接続端子30AにUSBメモリ40が接続されることによって、デバッグ装置50に接続されるべくナビゲーションシステム20によって有効化されるが、USBメモリ40が第1の接続端子30Aから取り外しされることによって第2の接続端子30Bは無効化される。これにより、デバッグ装置50を利用してのナビゲーションシステム20のオンラインデバッグが、第1の接続端子30AへのUSBメモリ40の着脱により確実に管理できるようになる。つまりUSBメモリ40が第1の接続端子30Aから抜脱された状態では、デバッグ装置50が第2の接続端子30Bに接続されていても、デバッグ装置50はナビゲーションシステム20をデバッグすることが不能である。よってこのような情報処理装置のオンラインデバッグシステムにおけるオンラインデバッグの実行管理が容易かつ確実になされるようになる。
(5)ナビゲーションシステム20とUSBメモリ40とデバッグ装置50の間では、第1通信経路40Rと第2通信経路50Rのように、一般的なUSB規格に基づいた通信経路によりデバッグ用のデータ通信がなされるようになる。よってナビゲーションシステム20に接続可能なデバッグ装置50の制約が少なくなる。これにより、このような情報処理装置のオンラインデバッグシステムの利用価値が高められる。
(6)ナビゲーションシステム20とUSBメモリ40の間の通信経路として、USBインタフェースを用いることにより、接続端子を複数に拡張することのできるUSBハブ30を利用でき、かつ拡張された接続端子に対してそれぞれ各別の通信ドライバ群115を適用可能とすることができる。これにより情報処理装置のオンラインデバッグシステムを構成することが容易になり、その利用可能性や適用範囲が拡張される。
(7)オンラインデバッグは、車両10に搭載されるナビゲーションシステム20に適用される。よってカーディーラなどが、同ナビゲーションシステム20をオンラインデバッグなどすることも可能になる。これにより、ユーザ(運転者)の感じるナビゲーションシステム20の違和感などにカーディーラが迅速に対応することが可能となり、ナビゲーションシステム20すなわち情報処理装置をオンラインデバッグするオンラインデバッグシステムの利便性の向上などが図られるようになる。
(その他の実施形態)
なお上記各実施形態は、以下の態様で実施することもできる。
・上記実施形態では、USBメモリ40とデバッグ装置50とでUSBホスト26を共用する場合について例示した。しかしこれに限らず、USBメモリとデバッグ装置とにそれぞれ各別のUSBホストでナビゲーションシステム20が対応するように構成してもよい。例えば、図8に示すように、ナビゲーションシステム20が、USBメモリ40に接続される第1USBインタフェース27Aと、デバッグ装置50に接続される第2USBインタフェース27Bとを有してもよい。この場合に第1USBインタフェース27Aは、USBメモリ40と記憶装置用ドライバ25の間を中継し、第2USBインタフェース27Bは、デバッグ装置50とシリアル通信ドライバ23の間を中継する。この場合にはナビゲーションシステム20は、USBメモリ40から取得した通信ドライバ群を、第2USBインタフェース27Bに対して有効化させればよい。またナビゲーションシステム20は、USBメモリ40が第1USBインタフェース27Aから取り外しされたことを検出すると、第2USBインタフェース27Bを介した通信経路を切断することもできる。これにより、情報処理装置のオンラインデバッグシステムの構成の自由度が高められる。
なお上記各実施形態は、以下の態様で実施することもできる。
・上記実施形態では、USBメモリ40とデバッグ装置50とでUSBホスト26を共用する場合について例示した。しかしこれに限らず、USBメモリとデバッグ装置とにそれぞれ各別のUSBホストでナビゲーションシステム20が対応するように構成してもよい。例えば、図8に示すように、ナビゲーションシステム20が、USBメモリ40に接続される第1USBインタフェース27Aと、デバッグ装置50に接続される第2USBインタフェース27Bとを有してもよい。この場合に第1USBインタフェース27Aは、USBメモリ40と記憶装置用ドライバ25の間を中継し、第2USBインタフェース27Bは、デバッグ装置50とシリアル通信ドライバ23の間を中継する。この場合にはナビゲーションシステム20は、USBメモリ40から取得した通信ドライバ群を、第2USBインタフェース27Bに対して有効化させればよい。またナビゲーションシステム20は、USBメモリ40が第1USBインタフェース27Aから取り外しされたことを検出すると、第2USBインタフェース27Bを介した通信経路を切断することもできる。これにより、情報処理装置のオンラインデバッグシステムの構成の自由度が高められる。
・上記実施形態では、シリアル通信ドライバ23を取り外した場合にナビゲーションシステム20を再起動することを例示したが、シリアル通信ドライバ23を取り外しする方法は、これに限らない。シリアル通信ドライバ23を動的に取り外してもよい。ナビゲーションシステムを、オンラインデバッグの終了後に再起動の不要な構成としてもよい。
・上記実施形態では、外部インタフェースがUSBである場合について例示した。しかしこれに限らず、外部インタフェースはCAN(Controller Area Network)、シリアルポート、イーサーネット(登録商標)、フレックスレイ(登録商標)などその他の規格のインタフェースであってもよい。これにより、情報処理装置のオンラインデバッグシステムの構成の自由度が高められる。
・上記実施形態では、ナビゲーションシステム20の第1の接続端子30Aと第2の接続端子30BがいずれもUSB規格である場合について例示した。しかしこれに限らず、第1の接続端子と第2の接続端子が互いに異なる規格であってもよい。例えば、図9に示すように、ナビゲーションシステム20が第1の接続端子としてUSBインタフェース27Aを有し、第2の接続端子としてCANインタフェース27Cを有してもよい。例えばUSBメモリ40はUSBインタフェース27Aに接続され、デバッグ装置50がCANインタフェース27Cに接続される。ナビゲーションシステム20は、CANインタフェース27C用のシリアル通信ドライバ23CをUSBメモリ40から取得し、オンラインデバッグの際、取得したシリアル通信ドライバ23Cを有効化するようにしてもよい。これにより、ナビゲーションシステム20とUSBメモリ40とデバッグ装置50の間の通信経路の多様性が確保されるようになり、ナビゲーションシステムに接続可能なデバッグ装置の制約が少なくなるため、情報処理装置のオンラインデバッグシステムの構成の自由度や利用価値が高められる。
・上記実施形態では、USBメモリ40をナビゲーションシステム20の第1の接続端子30Aに接続し、デバッグ装置50をナビゲーションシステム20の第2の接続端子30Bに接続する場合について例示した。しかしこれに限らず、ナビゲーションシステム20の一つの接続端子を、USBメモリとデバッグ装置とで共用するようにしてもよい。例えば、図10(a)に示すように、ナビゲーションシステム20は、当初、USBインタフェース27Aに対して有効化された記憶装置用ドライバ25を介して、USBメモリ40からシリアル通信ドライバ23を取得する。それからUSBメモリ40をUSBインタフェース27Aから取り外し、図10(b)に示すようにデバッグ装置50をUSBインタフェース27Aに接続する。ナビゲーションシステム20は、記憶装置用ドライバ25に代えてシリアル通信ドライバ23を、USBインタフェース27Aに対して有効化することによって、デバッグデーモン21とデバッグ装置50との間のデータ通信を可能にしてもよい。図10(b)では、USBインタフェース27Aとデバッグ装置50の間のUSB−シリアル変換器31を図示省略しており、実際には図10(a)と図10(b)の間ではUSBインタフェース27Aに接続するものとして、USBメモリ40とUSB−シリアル変換器31との差し換えが生じる。しかし、USBインタフェース27AからUSBメモリ40を取り外したときにデバッグデーモン21とデバッグ装置50との間の通信経路を切断する処理をしないようにナビゲーションシステム20を設定しておけば、デバッグデーモン21とデバッグ装置50との間の通信経路が適切に確保される。これにより、ナビゲーションシステム20が有する接続端子がひとつでも、USBメモリ40とデバッグ装置50をナビゲーションシステム20に支障なく接続できるためオンラインデバッグシステムを適用することができるようになる。よって、情報処理装置のオンラインデバッグシステムの構成の自由度や利用価値が高められる。
・上記実施形態では、USBメモリ40とデバッグ装置50とが各別の装置である場合について例示した。しかしこれに限らず、USBメモリとデバッグ装置とが、ナビゲーションシステム20の接続端子に接続される端子を共有する一体の装置として構成されていてもよい。例えば、図11(a)及び図11(b)に示すように、一体型装置51がUSBメモリ部40Aとデバッグ装置部50Aを有し、この一体型装置51が有する共用端子51aを、ナビゲーションシステム20のUSBインタフェース27Aに接続させてもよい。まず図11(a)のように、ナビゲーションシステム20の記憶装置用ドライバ25は、USBメモリ部40Aから共用端子51aを介して、シリアル通信ドライバ23を取得する。その後、ナビゲーションシステム20は、シリアル通信ドライバ23を有効化して、一体型装置51にて共用端子51aを介した接続先をUSBメモリ部40Aからデバッグ装置部50Aに切換えて、デバッグデーモン21はデバッグ装置部50Aとの間でデータ通信を可能にするようにしてもよい。共用端子51aを介した接続先がUSBメモリ40からデバッグ装置部50Aに切り換えられる際にも、ナビゲーションシステム20はUSBメモリ40の取り外しを検出するが、このときデバッグデーモン21とデバッグ装置部50Aとの間の通信経路を切断する処理をしないようにナビゲーションシステム20を設定しておけば、デバッグデーモン21とデバッグ装置部50Aとの間の通信経路が適切に確保される。これにより、ナビゲーションシステム20の接続端子がひとつでも、USBメモリ部40Aとデバッグ装置部50Aとをそれぞれ必要なときにナビゲーションシステム20に支障なく接続できるため、オンラインデバッグシステムを適用することができるようになる。さらに、一体型装置51つまり一箇所にまとめられた記憶装置とデバッグ装置との管理を容易にすることができるようになるため、情報処理装置のオンラインデバッグシステムの構成の自由度や利用価値が高められる。
・上記実施形態では、情報処理装置がナビゲーションシステム20である場合について例示した。しかしこれに限らず、情報処理装置としては、車両に備えられている各種の車両制御装置や、音響製品などを制御する制御装置などでもよい。これにより、このオンラインデバッグシステムを、車載機器に対して広く適用することができるようになる。
・また、この情報処理装置のオンラインデバッグシステムを、ナビゲーションシステム等の車載情報処理装置に限らず、情報処理装置自体の製品としての小型化や低価格化を図るべく、開発終了後にデバッグ用の通信経路が取り除かれる情報処理装置に適用することができる。
10…車両、11…車両ECU、12…センサ、15…表示画面、16…スピーカ、20…ナビゲーションシステム、21…デバッグデーモン、22…TCP/IP、23,23C…シリアル通信ドライバ、24…データ展開部、25…記憶装置用ドライバ、26…USBホスト、27…USBプラグ、27A,27B…USBインタフェース、27C…CANインタフェース、30…USBハブ、30A…第1の接続端子、30B…第2の接続端子、40…USBメモリ、40A…USBメモリ部、40R…通信経路、41…検索テーブル、42…PPP、43…CDCACM、50…デバッグ装置、50A…デバッグ装置部、50R…通信経路、51…一体型装置、60A,60B…ナビゲーションシステム、61…デバッグデーモン、62…TCP/IP、63…イーサーネットドライバ、64…イーサーネットインタフェース、115…通信ドライバ群。
Claims (13)
- 情報処理装置と、前記情報処理装置を外部からオンラインでデバッグするデバッグ装置とを有するオンラインデバッグシステムであって、前記情報処理装置は、記憶装置が記憶するデータを取得するために前記記憶装置に接続される接続端子を有し、
前記情報処理装置は、該情報処理装置で実行されるソフトウェアを外部からの指示に基づいてデバッグするデバッグ実行部と、前記記憶装置から読み込んだ前記データを有効化させるデータ展開部とを有し、
前記記憶装置が記憶する前記データは、前記デバッグ実行部に前記接続端子を介して外部と通信させるための通信ドライバ群を有し、
前記接続端子に接続された前記記憶装置から前記データ展開部が前記通信ドライバ群を読み出して有効化すると、有効化された前記通信ドライバ群は、前記接続端子に接続されて前記情報処理装置の外部から指示を伝達する前記デバッグ装置を、前記デバッグ実行部と通信可能にする
ことを特徴とする情報処理装置のオンラインデバッグシステム。 - 前記記憶装置が記憶する前記データは、前記情報処理装置に対応する前記通信ドライバ群を示すリストと、同リストに登録されている前記通信ドライバ群とを有し、
前記データ展開部は、前記情報処理装置に対応するものとして指定されている前記通信ドライバ群を前記リストを参照して選択し、この選択した前記通信ドライバ群を前記記憶装置から読み込み有効化する
請求項1に記載の情報処理装置のオンラインデバッグシステム。 - 前記接続端子は、同時使用の可能な第1接続端子と第2接続端子からなり、前記第1接続端子に前記記憶装置が接続されることにより、前記記憶装置から前記情報処理装置に読み込まれた前記通信ドライバ群が前記第2接続端子に対して有効化され、この前記第2接続端子に前記デバッグ装置が接続される
請求項1又は2に記載の情報処理装置のオンラインデバッグシステム。 - 前記接続端子には、同接続端子を拡張させた第1の接続端子と第2の接続端子とが設けられ、前記第1の接続端子に前記記憶装置が接続されることにより、前記記憶装置から前記情報処理装置に読み込まれた前記通信ドライバ群が前記第2の接続端子に対して有効化され、この前記第2の接続端子に前記デバッグ装置が接続される
請求項1又は2に記載の情報処理装置のオンラインデバッグシステム。 - 前記記憶装置が前記第1の接続端子から取り外されることにより、前記第2の接続端子に接続されている前記デバッグ装置と、前記デバッグ実行部との間の通信は解除され、且つ前記通信ドライバ群が前記第2の接続端子に対して無効化される
請求項3又は4に記載の情報処理装置のオンラインデバッグシステム。 - 前記記憶装置と前記デバッグ装置は、前記接続端子に接続される端子を共有する一体の装置として構成されている
請求項1又は2に記載の情報処理装置のオンラインデバッグシステム。 - 前記接続端子の規格は、シリアルバス規格である
請求項1〜6のいずれか一項に記載の情報処理装置のオンラインデバッグシステム。 - 前記情報処理装置の前記接続端子の規格はUSB規格であり、この前記接続端子に接続されたUSBハブに、前記第1の接続端子と前記第2の接続端子が設けられている
請求項4に記載の情報処理装置のオンラインデバッグシステム。 - 前記情報処理装置は、車両に搭載された車載情報処理装置である
請求項1〜8のいずれか一項に記載の情報処理装置のオンラインデバッグシステム。 - 情報処理装置を、外部のデバッグ装置から伝達する指示によってオンラインでデバッグすることを可能とする、情報処理装置のオンラインデバッグ方法であって、前記情報処理装置は、記憶装置が記憶するデータを取得するために前記記憶装置に接続される接続端子を有し、
前記情報処理装置に、該情報処理装置で実行されるソフトウェアを外部からの指示に基づいてデバッグするデバッグ実行部と、前記記憶装置から読み込んだ前記データを有効化させるデータ展開部とを設けておくとともに、前記記憶装置には、前記デバッグ実行部に前記接続端子を介して外部と通信させるための通信ドライバ群を記憶しておくことと、
前記接続端子に接続された前記記憶装置から前記データ展開部が読み出した前記通信ドライバ群を有効化させることと、
前記有効化させた通信ドライバ群によって前記デバッグ装置を前記デバッグ実行部と通信可能とすることと
を特徴とする情報処理装置のオンラインデバッグ方法。 - 前記記憶装置には、前記情報処理装置に対応する前記通信ドライバ群を示すリストと、同リストに登録されている前記通信ドライバ群とを記憶させておき、
前記データ展開部には、前記情報処理装置に対応するものとして指定されている前記通信ドライバ群を前記リストを参照して選択させ、この選択した前記通信ドライバ群を前記記憶装置から読み込み有効化させる
請求項10に記載の情報処理装置のオンラインデバッグ方法。 - 前記接続端子として第1の接続端子と第2の接続端子とを用意し、
前記第1の接続端子に前記記憶装置を接続させることにより、前記記憶装置から前記情報処理装置に読み込まれた前記通信ドライバ群を前記第2の接続端子に対して有効化させ、
この前記第2の接続端子に前記デバッグ装置を接続させる
請求項10又は11に記載の情報処理装置のオンラインデバッグ方法。 - 前記記憶装置を前記第1の接続端子から取り外すことにより、前記第2の接続端子に接続されている前記デバッグ装置と、前記デバッグ実行部との間の通信を解除させ、且つ前記通信ドライバ群を前記第2の接続端子に対して無効化させる
請求項12に記載の情報処理装置のオンラインデバッグ方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2011/050361 WO2012095960A1 (ja) | 2011-01-12 | 2011-01-12 | 情報処理装置のオンラインデバッグシステム及びオンラインデバッグ方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP5177299B2 true JP5177299B2 (ja) | 2013-04-03 |
JPWO2012095960A1 JPWO2012095960A1 (ja) | 2014-06-09 |
Family
ID=46506883
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011535829A Expired - Fee Related JP5177299B2 (ja) | 2011-01-12 | 2011-01-12 | 情報処理装置のオンラインデバッグシステム及びオンラインデバッグ方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US8904235B2 (ja) |
JP (1) | JP5177299B2 (ja) |
CN (1) | CN102713858B (ja) |
DE (1) | DE112011104709B4 (ja) |
WO (1) | WO2012095960A1 (ja) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150160990A1 (en) * | 2013-12-05 | 2015-06-11 | Karim Massoud | Virtual Computer Technical Support Agent |
TW201627862A (zh) * | 2015-01-26 | 2016-08-01 | 鴻海精密工業股份有限公司 | 除錯電路、除錯請求電路及除錯系統 |
CN104765669B (zh) * | 2015-04-24 | 2018-10-12 | 昆明船舶设备集团有限公司 | 同步复制aftn报文的新机场信息系统并行测试方法 |
WO2017139932A1 (zh) * | 2016-02-17 | 2017-08-24 | 吴伟民 | 车辆电子设备的调试方法及系统 |
CN106970878B (zh) * | 2017-03-27 | 2019-11-12 | 北京深思数盾科技股份有限公司 | 一种调试事件监测方法以及调试事件监测系统 |
CN107977313B (zh) * | 2017-11-28 | 2021-04-20 | 苏州佳世达电通有限公司 | 一种调试接口的调用方法和装置 |
CN109709922A (zh) * | 2018-12-27 | 2019-05-03 | 珠海格力电器股份有限公司 | 向导式调试方法、调试设备 |
JP7334688B2 (ja) | 2020-07-07 | 2023-08-29 | トヨタ自動車株式会社 | 車載装置及び車両 |
CN114281667A (zh) * | 2020-09-28 | 2022-04-05 | 宝能汽车集团有限公司 | 车辆数字仪表的调试方法与系统、存储介质、多媒体设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10301803A (ja) * | 1997-04-23 | 1998-11-13 | Seiko Epson Corp | デバッグ装置、情報処理装置及び情報記憶媒体 |
JPH11102308A (ja) * | 1997-09-25 | 1999-04-13 | Nec Ic Microcomput Syst Ltd | デバッガ |
JP2005275949A (ja) * | 2004-03-25 | 2005-10-06 | Nec Electronics Corp | デバッグ用切換器、デバッグ方法 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100242422B1 (ko) * | 1996-05-21 | 2000-02-01 | 윤종용 | 온라인 진단 방법 |
JP2002007162A (ja) | 2000-06-27 | 2002-01-11 | Suzuka Fuji Xerox Co Ltd | プリント実装基板のデバッグ方法およびプリント実装基板 |
GB0025592D0 (en) * | 2000-10-18 | 2000-12-06 | Sgs Thomson Microelectronics | Interface device |
US7660412B1 (en) * | 2005-12-09 | 2010-02-09 | Trend Micro Incorporated | Generation of debug information for debugging a network security appliance |
JP4222370B2 (ja) * | 2006-01-11 | 2009-02-12 | セイコーエプソン株式会社 | デバッグ支援装置及びデバッグ処理方法をコンピュータに実行させるためのプログラム |
JP2007322377A (ja) | 2006-06-05 | 2007-12-13 | Hino Motors Ltd | 車載故障診断装置およびその試験方法 |
JP2008035233A (ja) | 2006-07-28 | 2008-02-14 | Oki Electric Ind Co Ltd | 狭帯域通信システムのフレーム同期回路 |
CN101183330B (zh) * | 2007-12-13 | 2010-05-19 | 东信和平智能卡股份有限公司 | 嵌入式系统的在线调试系统及其调试方法 |
JP2009266117A (ja) | 2008-04-28 | 2009-11-12 | Hitachi Software Eng Co Ltd | Usbメモリ装置、及び、それを用いたプラグインアプリケーションシステム |
JP2010086318A (ja) | 2008-09-30 | 2010-04-15 | Digital Electronics Corp | デバッグシステム |
JP5414292B2 (ja) * | 2009-01-29 | 2014-02-12 | ルネサスエレクトロニクス株式会社 | 不良解析装置と方法及びプログラム |
-
2011
- 2011-01-12 DE DE112011104709.6T patent/DE112011104709B4/de not_active Expired - Fee Related
- 2011-01-12 WO PCT/JP2011/050361 patent/WO2012095960A1/ja active Application Filing
- 2011-01-12 CN CN201180002879.8A patent/CN102713858B/zh not_active Expired - Fee Related
- 2011-01-12 JP JP2011535829A patent/JP5177299B2/ja not_active Expired - Fee Related
- 2011-01-12 US US13/520,047 patent/US8904235B2/en not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10301803A (ja) * | 1997-04-23 | 1998-11-13 | Seiko Epson Corp | デバッグ装置、情報処理装置及び情報記憶媒体 |
JPH11102308A (ja) * | 1997-09-25 | 1999-04-13 | Nec Ic Microcomput Syst Ltd | デバッガ |
JP2005275949A (ja) * | 2004-03-25 | 2005-10-06 | Nec Electronics Corp | デバッグ用切換器、デバッグ方法 |
Also Published As
Publication number | Publication date |
---|---|
DE112011104709T5 (de) | 2013-10-24 |
JPWO2012095960A1 (ja) | 2014-06-09 |
CN102713858A (zh) | 2012-10-03 |
CN102713858B (zh) | 2015-11-25 |
WO2012095960A1 (ja) | 2012-07-19 |
DE112011104709B4 (de) | 2017-05-18 |
US20130139001A1 (en) | 2013-05-30 |
US8904235B2 (en) | 2014-12-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5177299B2 (ja) | 情報処理装置のオンラインデバッグシステム及びオンラインデバッグ方法 | |
JP4586089B2 (ja) | 通信システム、ホスト装置及び端末装置 | |
EP3297880A1 (en) | System and method for transferring diagnostic commands to a vehicle | |
JP2017161760A (ja) | 車両用画像表示システム | |
JP4466507B2 (ja) | 画像表示システム,画像表示方法および画像データ処理装置 | |
CN113133041B (zh) | 动态间隔列控车载中车车通信功能的测试方法及装置 | |
US20240036856A1 (en) | Vehicle system | |
JP5641181B2 (ja) | 二重化処理装置 | |
JP2009265823A (ja) | 情報端末装置及びログデータ取得プログラム | |
JP4897331B2 (ja) | 通信制御装置、通信制御プログラム、通信ドライバ登録方法 | |
JP2010118766A (ja) | 通信システムおよびその故障診断方法 | |
WO2010010765A1 (ja) | 仮想計算機装置、仮想計算機システム、仮想計算機プログラム、および、制御方法 | |
CN109753061A (zh) | 自动驾驶系统的启动方法、装置、设备和计算机存储介质 | |
JP5061872B2 (ja) | 地図データ利用装置、地図データ利用装置用のプログラム、および外部記憶媒体用データ | |
US11526414B2 (en) | Running computer diagnostics using downloaded disk images and USB hub | |
US20240037999A1 (en) | Vehicle system | |
US20230406236A1 (en) | Vehicle device | |
US20230215226A1 (en) | Method for vehicle diagnostics, diagnostic connector, and diagnostic device | |
JP2007188135A (ja) | データアクセスシステム | |
JP5040694B2 (ja) | 通信支援プログラム及び通信支援方法 | |
CN108170463B (zh) | 一种安卓设备的出厂设置方法和装置 | |
JP2005122350A (ja) | 情報処理装置、プログラム中断方法、レジスタダンプ方法、レジスタ書換え方法、メモリダンプ方法、メモリ書換え方法、アドレストレース方法及びターゲット用プログラムのステップ実行方法 | |
JP3094932B2 (ja) | 装置間データ試験方式 | |
JP2007052630A (ja) | デバイスドライバ適用方法及びこれを用いたホスト装置 | |
JP4610210B2 (ja) | データ転送装置、データ転送装置の制御方法、制御プログラム及び記録媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20121211 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20121224 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20160118 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |