JP2010224751A - 情報処理装置 - Google Patents
情報処理装置 Download PDFInfo
- Publication number
- JP2010224751A JP2010224751A JP2009069797A JP2009069797A JP2010224751A JP 2010224751 A JP2010224751 A JP 2010224751A JP 2009069797 A JP2009069797 A JP 2009069797A JP 2009069797 A JP2009069797 A JP 2009069797A JP 2010224751 A JP2010224751 A JP 2010224751A
- Authority
- JP
- Japan
- Prior art keywords
- processor
- event
- volatile memory
- log
- information processing
- 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
【課題】マルチプロセッサのイベントのログの前後関係の誤りを抑制することを課題とする。
【解決手段】複数のプロセッサ2A,2B,2Cと、各プロセッサ2A,2B,2Cのイベントのログを保存するデータ保存手段4と、を有する情報処理装置1であって、データ保存手段4よりも短時間でデータを記憶可能な揮発メモリ3を備え、各プロセッサ2A,2B,2Cは、自身にイベントが発生すると、発生したイベントのログを揮発メモリ3に格納し、複数のプロセッサ2A,2B,2Cのうち少なくとも何れかのプロセッサである所定のプロセッサ2A,2B,2Cは、揮発メモリ3に記憶されている各プロセッサ2A,2B,2Cのイベントのログを、所定のタイミングでデータ保存手段4に保存する。
【選択図】図6
【解決手段】複数のプロセッサ2A,2B,2Cと、各プロセッサ2A,2B,2Cのイベントのログを保存するデータ保存手段4と、を有する情報処理装置1であって、データ保存手段4よりも短時間でデータを記憶可能な揮発メモリ3を備え、各プロセッサ2A,2B,2Cは、自身にイベントが発生すると、発生したイベントのログを揮発メモリ3に格納し、複数のプロセッサ2A,2B,2Cのうち少なくとも何れかのプロセッサである所定のプロセッサ2A,2B,2Cは、揮発メモリ3に記憶されている各プロセッサ2A,2B,2Cのイベントのログを、所定のタイミングでデータ保存手段4に保存する。
【選択図】図6
Description
本発明は、情報処理装置に関する。
情報処理技術の発展に伴い、複数のプロセッサを組み合わせて演算処理を行う電子機器が普及している。例えば、映像や音声等のコンテンツを取り扱う映像音響機器の分野においては、コンテンツの再生機能や録画機能といった基本的な機能のみならず、通信機能や著作権管理機能等の多種多様な機能を搭載することが求められてきており、これを実現するため、各機能の実現に適するプロセッサを用いた非対称型のマルチプロセッシングが行われつつある。
ところで、プロセッサを用いた電子機器は、動作の事後的な検証を可能にするため、実行した処理の内容や発生したエラー等のイベントを記録しておくことがある。例えば、特許文献1には、メモリカードの動作中に発生したエラーを特定のブロックに保存し、迅速なエラー解析を可能にする技術が開示されている。また、特許文献2には、バス制御モジュールに障害が生じた旨のエラーログを不揮発性メモリに書き込む技術が開示されている。
各プロセッサのイベントを一元管理する場合、イベントの集中によるログの記録待ちにより、ログに記録された各プロセッサのイベントの前後関係に誤りが生じる場合がある。本発明は、このような課題に鑑みてなされたものであり、マルチプロセッサのイベントのログの前後関係の誤りを抑制することを課題とする。
本発明は、上記課題を解決するため、各プロセッサのイベントのログを揮発メモリに一旦書き込み、書き込まれたログを所定のタイミングで保存することにした。
詳細には、複数のプロセッサと、各プロセッサのイベントのログを保存するデータ保存手段と、を有する情報処理装置であって、前記データ保存手段よりも短時間でデータを記憶可能な揮発メモリを備え、各プロセッサは、自身にイベントが発生すると、発生したイベントのログを前記揮発メモリに格納し、前記複数のプロセッサのうち少なくとも何れかのプロセッサである所定のプロセッサは、前記揮発メモリに記憶されている各プロセッサのイベントのログを、所定のタイミングで前記データ保存手段に保存する。
各プロセッサでは、様々な処理が互いに独立して実行される。このため、各プロセッサの処理を事後的に解析する際、各イベントの前後関係が判るようにするため、上記情報処理装置では、全てのプロセッサで生ずるイベントを一つのログにまとめている。なお、イベントとは、プロセッサが実行、或いはプロセッサで発生した事象を示すものであり、例えば、演算処理中に生じたエラー等である。
ここで、プロセッサが一つであれば、イベントの記憶に時間がかかっても各イベントの前後関係が錯綜することはない。しかし、複数のプロセッサのイベントを一つに纏めている場合、イベントの書き込みに要する時間に比例して、各プロセッサで生じたイベントの書き込みが重なる確率が高まる。そこで、上記情報処理装置では、データの書き込みを短時間で行える揮発メモリに各プロセッサのイベントのログを記録しておき、これを定期的にデータ保存手段に保存する。データ保存手段は、各プロセッサがログを直接書き込む揮発メモリと異なり、例えば、不揮発メモリやハードディスク装置等を適用できる。
ここで、保存処理を実行するプロセッサは、上記情報処理装置が備える全てのプロセッサがそれぞれ実行してもよいし、少なくとも何れかのプロセッサが実行してもよいが、例えば、他のプロセッサよりも演算量が少ないプログラムを実行するプロセッサが保存処理の実行を司れば、上記情報処理装置のリソースを有効に活用できる。
また、メモリに記録されるイベントのログは、例えば、各プロセッサがログを逐次書き込めば、全てのプロセッサのイベントを時系列で記録したものとすることができる。各プロセッサで発生したイベントの情報をこのように処理することで、各プロセッサのイベントのログの前後関係の誤りを抑制することが可能となる。
マルチプロセッサのイベントのログの前後関係の誤りを抑制することが可能となる。
以下、本発明の実施形態について説明する。図1は、本発明に係る映像再生装置の一実施形態であるBDプレーヤ1(BDは、Blu-ray Disc(Blu-rayは登録商標)の略であり
、以下、ブルーレイディスクという)の構成図である。BDプレーヤ1は、自動車等の車両に搭載される車載式の電子機器であり、液晶表示装置であるディスプレイ2に接続されている。BDプレーヤ1は、車両の電源に接続されており、乗員であるユーザが車両のキースイッチを操作してアクセサリー電源をオンにすると電力の供給を受けて作動する。なお、本実施形態では、ディスプレイ2が外部接続される映像再生装置について説明しているが、本発明はこのような実施形態に限定されるものではない。本発明は、例えば、ディスプレイと一体型の映像再生装置としてもよい。また、本実施形態では、ブルーレイディスクについて説明しているが、本発明はこのような実施形態に限定されるものではなく、字幕の表示位置やサイズをユーザが自在に変更可能なあらゆるメディアについて適用可能である。
、以下、ブルーレイディスクという)の構成図である。BDプレーヤ1は、自動車等の車両に搭載される車載式の電子機器であり、液晶表示装置であるディスプレイ2に接続されている。BDプレーヤ1は、車両の電源に接続されており、乗員であるユーザが車両のキースイッチを操作してアクセサリー電源をオンにすると電力の供給を受けて作動する。なお、本実施形態では、ディスプレイ2が外部接続される映像再生装置について説明しているが、本発明はこのような実施形態に限定されるものではない。本発明は、例えば、ディスプレイと一体型の映像再生装置としてもよい。また、本実施形態では、ブルーレイディスクについて説明しているが、本発明はこのような実施形態に限定されるものではなく、字幕の表示位置やサイズをユーザが自在に変更可能なあらゆるメディアについて適用可能である。
BDプレーヤ1は、図1に示すように、CPU2A,2B,2C(Central Processing
Unit)、リングバッファとして使用される共有の揮発メモリ3、不揮発メモリ4、及び
光ディスク装置5で構成されている。CPU2A,2B,2Cは、コンピュータプログラムを実行することにより、光ディスク装置5を制御すると共に、光ディスクに記録された映像や音声等のデータの処理を司る電子回路である。CPU2A,2B,2Cは、ユーザ
が車両のキースイッチをオンにすると、図示しないメモリに記録された基本ソフトウェアであるOS(Operating System)のプログラムを読み込み、光ディスク装置5の制御やコンテンツデータの処理を実行するためのアプリケーションプログラムを実行する環境を構築する。なお、CPU2A,2Bは、ITRONに準拠したOSを読み込む。一方、CPU2Cは、汎用OSであるLinux(登録商標)を読み込む。
Unit)、リングバッファとして使用される共有の揮発メモリ3、不揮発メモリ4、及び
光ディスク装置5で構成されている。CPU2A,2B,2Cは、コンピュータプログラムを実行することにより、光ディスク装置5を制御すると共に、光ディスクに記録された映像や音声等のデータの処理を司る電子回路である。CPU2A,2B,2Cは、ユーザ
が車両のキースイッチをオンにすると、図示しないメモリに記録された基本ソフトウェアであるOS(Operating System)のプログラムを読み込み、光ディスク装置5の制御やコンテンツデータの処理を実行するためのアプリケーションプログラムを実行する環境を構築する。なお、CPU2A,2Bは、ITRONに準拠したOSを読み込む。一方、CPU2Cは、汎用OSであるLinux(登録商標)を読み込む。
ITRONは、タスクを規定の時間内に処理することを主眼とするOSの規格であり、タスクが規定の処理時間を守ることを最優先にするようにスケジューリング規則が定義されている。ITRONはLinuxよりもオペレーティングシステムの構成が簡素であり、起動に要する処理量が少ないことが特徴である。換言すると、起動時間が短いOSといえる。CPU2A,2Bは、ITRONに準拠したOSで動作することにより、CPU2Cよりも信頼性の高い動作を実現する。一方、Linuxは、オープンソースのOSであり、インターネット等において提供されている豊富なコンポーネントプログラムをコンパイルすることにより、様々な機能を実現することが可能である。例えば、BDの規格であるBlu−rayでは、対話型のコンテンツを実現するためBD−J(BD−Java:Javaは登録商標)の実装を義務付けており、Linuxは、このようなプログラムの実行を可能にする。
揮発メモリ3は、常誘電体のキャパシタに電荷を蓄えることにより情報を記憶するSDRAM(Synchronous DRAM)であり、電源の喪失により記憶を失う。一方、不揮発メモリ4は、強誘電体のキャパシタに電荷を蓄えることにより情報を記憶するFRAM(登録商標:Ferroelectric Random Access Memory)であり、電源が喪失しても記憶を失わない。不揮発メモリ4の書き込み速度が100ns/バイトと低速なのに対し、揮発メモリ3の書き込み速度は1.6ns/バイトと高速である。
光ディスク装置5は、記録媒体であるBDやDVD、CD等の光ディスクに記録されたデータを読み取り可能な装置であり、光ディスクを回転させるスピンドルモータや光ピックアップを動かすアクチュエータ等の駆動機構類、光ピックアップで読み取った反射光を電気信号にするAFE(Analog Front End)、AFEのアナログ信号をデジタル信号に変換するDSP(Digital Signal Processor)等で構成される。光ディスク装置5は、CPU2A,2B,2Cによって制御される。
次に、BDプレーヤ1の各CPU2A,2B,2Cで実行される処理フローについて説明する。本処理フローの説明では、説明の便宜上、CPU2Aで実行される場合について説明するが、以下に説明する処理フローは、各CPU2A,2B,2Cで互いに独立して実行されるものである。
まず、各CPUでイベントが発生した際に実行される第一の処理フローについて説明する。図2に示すように、CPU2Aは、自身が実行中のアプリケーションプログラムのタスクでイベントが発生したことを検知すると(S101)、イベントの内容を示す情報を生成する(S102)。図3は、イベントがエラーであった場合にCPU2Aが生成する情報の内容である。CPU2Aは、自身が実行中のアプリケーションプログラムのタスクでエラーが発生すると、図3に示すようなエラーコードを生成する。ここで、“エラーコード”はエラーの種類を特定するIDであり、また、“エラー発生タスク”はエラーが起きたタスクを特定するIDである。これらのIDは、エラーの種類毎、或いはタスク毎に予め割り当てられたものである。また、“エラー内容”は、エラーの内容を示すものであり、エラーコード毎に予め定義された残す必要のあるエラーの内容が示されている。また、“共用カウンタ”は、エラーが発生したタイミングを残すものであり、CPU2Aに内蔵されている図示しないカウンタが、エラー発生時にカウントしていた値が示される。CPU2Aは、図3に示すような情報を生成したら、この情報を揮発メモリ3に書き込む(
S103)。揮発メモリ3は、リングバッファとして使用されており、各CPU2A,2B,2Cでイベントが発生すると、その情報が順次書き込まれる。CPU2Aは、揮発メモリ3への情報の書き込みが終了したら、タスクでイベントが発生したか否かの監視を再開する(S101)。
S103)。揮発メモリ3は、リングバッファとして使用されており、各CPU2A,2B,2Cでイベントが発生すると、その情報が順次書き込まれる。CPU2Aは、揮発メモリ3への情報の書き込みが終了したら、タスクでイベントが発生したか否かの監視を再開する(S101)。
以上が、各CPU2A,2B,2Cで実行される第一の処理フローの説明である。次に、各CPUで定期的に実行される第二の処理フロー(不揮発メモリ書き込みタスク)について説明する。図4に示すように、CPU2Aは、内部クロックにより所定の時間が経過したことを確認したら(S201)、揮発メモリ3のデータを参照する(S202)。そして、CPU2Aは、揮発メモリ3にデータが存在している場合は、揮発メモリ3のデータを不揮発メモリ4に移動させる(S203)。一方、CPU2Aは、揮発メモリ3にデータが存在していない場合は、カウンタによる経過時間の計数を再び始める(S201)。ここで、所定の時間とは、BDプレーヤ1に予め設定されている時間である。
以上が、各CPU2A,2B,2Cで実行される第二の処理フローの説明である。上述の処理フローの説明においては、CPU2Aで実行されることを前提に説明したが、これらの処理フローはCPU2B,2Cでも実行されている。本実施形態に係るBDプレーヤ1において、各CPU2A,2B,2Cでエラーが発生した場合のタイミングチャートを図5に示す。また、図6は、情報伝達の経路を示す図である。CPU2Aでエラーが発生すると、エラーが発生した旨が揮発メモリ3に書き込まれる。揮発メモリ3への書き込みは、速やかに終了する。このため、CPU2BやCPU2Cでエラーが立て続けに発生しても、エラーが発生した旨は揮発メモリ3に正常に書き込まれる。揮発メモリ3に書き込まれたエラーログは、所定のタイミングでCPU2A,2B,2Cの一時バッファに格納された後、不揮発メモリ4に書き込まれる。不揮発メモリ4では、書き込みの終了に時間を要するが、書き込みが終了する前でも揮発メモリ3への書き込みは可能である。このため、不揮発メモリ4への書き込みが終わる前にCPU2Cでエラーが発生しても、その旨が揮発メモリ3に書き込まれる。
図7は、揮発メモリを使わずに、エラーログを各CPUから不揮発メモリに直接書き込む場合のタイミングチャートである。エラーログを各CPUから不揮発メモリに直接書き込む場合、不揮発メモリでは書き込みに時間を要するため、図7に示すように、CPUで発生したエラーが不揮発メモリに書き込まれている間に、他のCPUでエラーが発生すると、このエラーが正常に書き込まれなくなる。このため、CPUで発生したエラーを解析する目的で不揮発メモリに記録されたエラーログを参照する場合に、各CPUで発生したエラーが全て書き込まれていない、或いは各エラーの前後関係が不明であるといった問題が生じ得る。しかし、上述したBDプレーヤ1によれば、データの書き込みを短時間で完了することが可能な揮発メモリを使っているので、このような問題が生じにくくなる。
以上、本発明の一実施形態について説明したが、上記BDプレーヤ1は、上記処理フロー2を何れか1つ或いは2つのCPUが実行するものであってもよい。この場合、リソースが空いている演算量の少ないCPUが上記処理フロー2を実行することが望ましい。また、第二の処理フローは、このようなタイミングで実行されるもののみならず、例えば、揮発メモリ3の容量に基づいて適宜実行されるものであってもよいし、リソースが空いたCPUが適宜実行するものであってもよい。また、CPUは、3つの場合のみならず、2つ或いは4つ以上であってもよい。また、本発明は、車載式のBDプレーヤのみならず、家庭用のBDプレーヤやその他の映像音響機器、或いはパーソナルコンピュータ等に適用することも可能である。
1・・・BDプレーヤ
2A,2B,2C・・・CPU
3・・・揮発メモリ
4・・・不揮発メモリ
5・・・光ディスク装置
2A,2B,2C・・・CPU
3・・・揮発メモリ
4・・・不揮発メモリ
5・・・光ディスク装置
Claims (5)
- 複数のプロセッサと、各プロセッサのイベントのログを保存するデータ保存手段と、を有する情報処理装置であって、
前記データ保存手段よりも短時間でデータを記憶可能な揮発メモリを備え、
各プロセッサは、自身にイベントが発生すると、発生したイベントのログを前記揮発メモリに格納し、
前記複数のプロセッサのうち少なくとも何れかのプロセッサである所定のプロセッサは、前記揮発メモリに記憶されている各プロセッサのイベントのログを、所定のタイミングで前記データ保存手段に保存する、
情報処理装置。 - 前記揮発メモリが記憶するイベントのログは、各プロセッサがログを逐次書き込むことにより、全てのプロセッサのイベントが時系列で記録されたものである、
請求項1に記載の情報処理装置。 - 前記イベントは、エラーに関するものである、
請求項1または請求項2に記載の情報処理装置。 - 前記データ保存手段は、不揮発メモリである、
請求項1から請求項3の何れか一項に記載の情報処理装置。 - 前記所定のプロセッサは、他のプロセッサよりも演算量が少ない、
請求項1から請求項4の何れか一項に記載の情報処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009069797A JP2010224751A (ja) | 2009-03-23 | 2009-03-23 | 情報処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009069797A JP2010224751A (ja) | 2009-03-23 | 2009-03-23 | 情報処理装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2010224751A true JP2010224751A (ja) | 2010-10-07 |
Family
ID=43041887
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009069797A Withdrawn JP2010224751A (ja) | 2009-03-23 | 2009-03-23 | 情報処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2010224751A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012234483A (ja) * | 2011-05-09 | 2012-11-29 | Canon Inc | 情報処理装置、その制御方法、および制御プログラム |
JP2015135556A (ja) * | 2014-01-16 | 2015-07-27 | 株式会社リコー | 情報処理装置、制御方法及び制御プログラム |
JP2017091456A (ja) * | 2015-11-17 | 2017-05-25 | 富士通株式会社 | 制御装置、制御プログラムおよび制御方法 |
-
2009
- 2009-03-23 JP JP2009069797A patent/JP2010224751A/ja not_active Withdrawn
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012234483A (ja) * | 2011-05-09 | 2012-11-29 | Canon Inc | 情報処理装置、その制御方法、および制御プログラム |
US9075752B2 (en) | 2011-05-09 | 2015-07-07 | Canon Kabushiki Kaisha | Information processing apparatus that detects startup error, method of controlling the same, and storage medium |
JP2015135556A (ja) * | 2014-01-16 | 2015-07-27 | 株式会社リコー | 情報処理装置、制御方法及び制御プログラム |
JP2017091456A (ja) * | 2015-11-17 | 2017-05-25 | 富士通株式会社 | 制御装置、制御プログラムおよび制御方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR20190003591A (ko) | 통합 패키지 후 복구 | |
CN111381954B (zh) | 一种音频数据录制方法、系统及终端设备 | |
US9239742B2 (en) | Embedded systems and methods for threads and buffer management thereof | |
WO2015039582A1 (zh) | 一种虚拟资源分配方法及装置 | |
US9372773B2 (en) | User-level hardware branch records | |
Courville et al. | Understanding storage I/O behaviors of mobile applications | |
JP2010224751A (ja) | 情報処理装置 | |
JP2013065953A5 (ja) | ||
JP2007172363A (ja) | I2cバスのデータ伝送装置、及びその方法、並びにi2cバスのデータ伝送プログラム | |
JP5175603B2 (ja) | コンテンツ再生装置、及び電子機器 | |
CN116126581B (zh) | 内存故障处理方法、装置、系统、设备及存储介质 | |
JP2013065089A5 (ja) | ||
KR101505258B1 (ko) | 프로브리스 트레이스 캡처를 갖는 아키텍처 실행의 재생 | |
CN109213449B (zh) | 一种基于国产固件的raid驱动实现系统及设备 | |
GB2581652A (en) | Information processing device, method for controlling information processing device, and program | |
JP2015064770A (ja) | メモリ制御装置、情報処理装置、及び情報処理装置の制御方法 | |
JP2013065088A5 (ja) | ||
TWI707272B (zh) | 可執行指令的電子裝置以及指令執行方法 | |
US8392759B2 (en) | Test method, test program, test apparatus, and test system | |
JP6123931B1 (ja) | 情報処理装置、情報処理方法、およびプログラム | |
JP2009295248A (ja) | 再生装置、集積回路及び再生方法 | |
JP2013058228A (ja) | 保安処理装置 | |
US20220229932A1 (en) | Method for performing multi-system log access management, associated system on chip integrated circuit and non-transitory computer-readable medium | |
JP2007241431A (ja) | トレースデータ記録装置 | |
TW200814010A (en) | Optical storage device and data storage method thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20120220 |
|
A072 | Dismissal of procedure |
Free format text: JAPANESE INTERMEDIATE CODE: A073 Effective date: 20130625 |
|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20130702 |