(57)【特許請求の範囲】
【請求項１】
データが書き込まれる第１の記憶手段と、
前記第１の記憶手段に対するデータの書き込み速度よりも遅い速度でデータが書き込まれる第２の記憶手段と、
処理の履歴をそれぞれ表す各履歴データを順次取得し、取得した前記履歴データが、順次取得済みの他の履歴データとにおける時間的な連続性について決められた条件を満たすか否かにより、取得した前記履歴データに連続性があるか否かを判断する連続性判断手段と、
前記連続性判断手段により前記履歴データに連続性がないと判断された場合には、当該履歴データを、前記第１の記憶手段に書き込まずに、タイムスタンプを付加する処理を実行してから前記第２の記憶手段に書き込み、前記連続性判断手段により前記履歴データに連続性があると判断された場合には、当該履歴データを前記第１の記憶手段に書き込んでいき、当該第１の記憶手段に書き込まれた履歴データが決められた量に至るかまたは決められた期間だけ記憶されると、当該履歴データを当該第１の記憶手段から読み出して当該履歴データの全体に対して前記タイムスタンプを付加する処理を実行してから前記第２の記憶手段に書き込む制御手段と
を備えることを特徴とする情報処理装置。
【請求項２】
前記制御手段は、前記履歴データを、前記第２の記憶手段に対する書き込みを行う時期である書込時期とともに前記第２の記憶手段に書き込み、
前記連続性判断手段は、最新の書込時期とともに前記第２の記憶手段に書き込まれている履歴データである第１の旧履歴データと、その１つ前の書込時期とともに前記第２の記憶手段に書き込まれている履歴データである第２の旧履歴データとの書込時期の差異が閾値以内である場合には、前記連続性判断手段が前記第１の旧履歴データの後に取得した履歴データである新履歴データに対して、連続性があると判断する
ことを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記制御手段は、前記履歴データを、前記第１の記憶手段に対する書き込みを行う時期である書込時期とともに前記第１の記憶手段に書き込み、
前記連続性判断手段は、最新の書込時期とともに前記第１の記憶手段に書き込まれている履歴データである第１の旧履歴データと、その１つ前の書込時期とともに前記第１の記憶手段に書き込まれている履歴データである第２の旧履歴データとの書込時期の差異が閾値以内である場合には、前記連続性判断手段が前記第１の旧履歴データの後に取得した履歴データである新履歴データに対して、連続性があると判断する
ことを特徴とする請求項１記載の情報処理装置。
【請求項４】
前記制御手段は、前記履歴データを、前記第２の記憶手段に対する書き込みを行う時期である書込時期とともに前記第２の記憶手段に書き込み、
前記連続性判断手段は、最新の書込時期とともに前記第２の記憶手段に書き込まれている履歴データである旧履歴データの当該書込時期と、前記連続性判断手段が当該旧履歴データの後に取得した履歴データである新履歴データの取得時期との差異が閾値以内である場合には、当該新履歴データに対して連続性があると判断する
ことを特徴とする請求項１記載の情報処理装置。
【請求項５】
前記制御手段は、前記履歴データを、前記第１の記憶手段に対する書き込みを行う時期である書込時期とともに前記第１の記憶手段に書き込み、
前記連続性判断手段は、最新の書込時期とともに前記第１の記憶手段に書き込まれている履歴データである旧履歴データの当該書込時期と、前記連続性判断手段が当該旧履歴データの後に取得した履歴データである新履歴データの取得時期との差異が閾値以内である場合には、当該新履歴データに対して連続性があると判断する
ことを特徴とする請求項１記載の情報処理装置。
【請求項６】
データが書き込まれる第１の記憶手段と、前記第１の記憶手段に対するデータの書き込み速度よりも遅い速度でデータが書き込まれる第２の記憶手段とを備える情報処理装置における情報処理方法であって、
処理の履歴をそれぞれ表す各履歴データを順次取得し、各々の前記履歴データが、当該履歴データどうしの時間的な連続性について決められた条件を満たすか否かにより、取得した前記履歴データに連続性があるか否かを判断するステップと、
履歴データに連続性がないと判断された場合には、当該履歴データを、前記第１の記憶手段に書き込まずに、タイムスタンプを付加する処理を実行してから前記第２の記憶手段に書き込み、前記履歴データに連続性があると判断された場合には、当該履歴データを前記第１の記憶手段に書き込むステップと、
前記第１の記憶手段に書き込まれた履歴データが決められた量に至るかまたは決められた期間だけ記憶されると、当該履歴データを当該第１の記憶手段から読み出して当該履歴データの全体に対して前記タイムスタンプを付加する処理を実行してから前記第２の記憶手段に書き込むステップと
を備えることを特徴とする情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置において処理の履歴を記憶する技術に関する。
【背景技術】
【０００２】
携帯電話機やパーソナルコンピュータなどの各種情報処理装置において処理の履歴を記憶するための各種システムが提案されている。これらのシステムでは、情報処理装置においてなされた処理を監視し、その処理の内容を履歴として記憶する。しかし、しばしば、これらの履歴が膨大な量になったり、履歴の発生が集中してその履歴を取得して記憶するための処理負荷が増大したりといったことが原因で、情報処理装置による他の処理が遅延してユーザの操作に対する応答性が悪化するなど、情報処理装置の利便性が損なわれるといった問題が指摘されている。履歴を記憶しておく技術として、例えば特許文献１には、情報処理装置を構成する各デバイス部品の属性に基づいて履歴の記憶の是非を判定する仕組みが提案されている。また、特許文献２には、履歴の保存先として一次記憶領域と二次記憶領域という２種類のものを用意しておき、一次保存領域に記憶された履歴の中から、異常に関するものだけを二次保存領域に転送するという仕組みが提案されている。また、特許文献３には、履歴の保存先として一次記憶領域と二次記憶領域という２種類のものを用意し、まず一次保存領域に一定量の履歴を保存してから、その一次保存領域内の履歴を二次保存領域に転送するという仕組みが提案されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第３９５０７３６号
【特許文献２】特許第３２５５１０２号
【特許文献３】特開平１１−２４９６７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上述したような履歴を記憶する処理によってその記憶処理以外の処理が遅延してしまうことに対処するためには、そのような遅延が発生しそうなときだけ、それを解消するような工夫を行えば足りる。
【０００５】
そこで、本発明は、履歴を記憶する処理によってその記憶処理以外の処理が遅延する可能性があるときに、その遅延を小さくすることを目的とする。
【課題を解決するための手段】
【０００６】
上述した課題を解決するために、本発明の請求項１記載の情報処理装置は、データが書き込まれる第１の記憶手段と、前記第１の記憶手段に対するデータの書き込み速度よりも遅い速度でデータが書き込まれる第２の記憶手段と、処理の履歴をそれぞれ表す各履歴データを順次取得し、取得した前記履歴データが、順次取得済みの他の履歴データとにおける時間的な連続性について決められた条件を満たすか否かにより、取得した前記履歴データに連続性があるか否かを判断する連続性判断手段と、前記連続性判断手段により前記履歴データに連続性がないと判断された場合には、当該履歴データを、前記第１の記憶手段に書き込まずに、タイムスタンプを付加する処理を実行してから前記第２の記憶手段に書き込み、前記連続性判断手段により前記履歴データに連続性があると判断された場合には、当該履歴データを前記第１の記憶手段に書き込んでいき、当該第１の記憶手段に書き込まれた履歴データが決められた量に至るかまたは決められた期間だけ記憶されると、当該履歴データを当該第１の記憶手段から読み出して当該履歴データの全体に対して前記タイムスタンプを付加する処理を実行してから前記第２の記憶手段に書き込む制御手段とを備えることを特徴とする。
【０００７】
請求項２記載の情報処理装置は、請求項１記載の情報処理装置において、前記制御手段は、前記履歴データを、前記第２の記憶手段に対する書き込みを行う時期である書込時期とともに前記第２の記憶手段に書き込み、前記連続性判断手段は、最新の書込時期とともに前記第２の記憶手段に書き込まれている履歴データである第１の旧履歴データと、その１つ前の書込時期とともに前記第２の記憶手段に書き込まれている履歴データである第２の旧履歴データとの書込時期の差異が閾値以内である場合には、前記連続性判断手段が前記第１の旧履歴データの後に取得した履歴データである新履歴データに対して、連続性があると判断することを特徴とする。
【０００８】
請求項３記載の情報処理装置は、請求項１記載の情報処理装置において、前記制御手段は、前記履歴データを、前記第１の記憶手段に対する書き込みを行う時期である書込時期とともに前記第１の記憶手段に書き込み、前記連続性判断手段は、最新の書込時期とともに前記第１の記憶手段に書き込まれている履歴データである第１の旧履歴データと、その１つ前の書込時期とともに前記第１の記憶手段に書き込まれている履歴データである第２の旧履歴データとの書込時期の差異が閾値以内である場合には、前記連続性判断手段が前記第１の旧履歴データの後に取得した履歴データである新履歴データに対して、連続性があると判断することを特徴とする。
【０００９】
請求項４記載の情報処理装置は、請求項１記載の情報処理装置において、前記制御手段は、前記履歴データを、前記第２の記憶手段に対する書き込みを行う時期である書込時期とともに前記第２の記憶手段に書き込み、前記連続性判断手段は、最新の書込時期とともに前記第２の記憶手段に書き込まれている履歴データである旧履歴データの当該書込時期と、前記連続性判断手段が当該旧履歴データの後に取得した履歴データである新履歴データの取得時期との差異が閾値以内である場合には、当該新履歴データに対して連続性があると判断することを特徴とする。
【００１０】
請求項５記載の情報処理装置は、請求項１記載の情報処理装置において、前記制御手段は、前記履歴データを、前記第１の記憶手段に対する書き込みを行う時期である書込時期とともに前記第１の記憶手段に書き込み、前記連続性判断手段は、最新の書込時期とともに前記第１の記憶手段に書き込まれている履歴データである旧履歴データの当該書込時期と、前記連続性判断手段が当該旧履歴データの後に取得した履歴データである新履歴データの取得時期との差異が閾値以内である場合には、当該新履歴データに対して連続性があると判断することを特徴とする。
【００１１】
請求項６記載の情報処理方法は、データが書き込まれる第１の記憶手段と、前記第１の記憶手段に対するデータの書き込み速度よりも遅い速度でデータが書き込まれる第２の記憶手段とを備える情報処理装置における情報処理方法であって、処理の履歴をそれぞれ表す各履歴データを順次取得し、各々の前記履歴データが、当該履歴データどうしの時間的な連続性について決められた条件を満たすか否かにより、取得した前記履歴データに連続性があるか否かを判断するステップと、履歴データに連続性がないと判断された場合には、当該履歴データを、前記第１の記憶手段に書き込まずに、タイムスタンプを付加する処理を実行してから前記第２の記憶手段に書き込み、前記履歴データに連続性があると判断された場合には、当該履歴データを前記第１の記憶手段に書き込むステップと、前記第１の記憶手段に書き込まれた履歴データが決められた量に至るかまたは決められた期間だけ記憶されると、当該履歴データを当該第１の記憶手段から読み出して当該履歴データの全体に対して前記タイムスタンプを付加する処理を実行してから前記第２の記憶手段に書き込むステップとを備えることを特徴とする。
【発明の効果】
【００１２】
本発明によれば、履歴を記憶する処理によってその記憶処理以外の処理が遅延する可能性があるときに、その遅延を小さくするような仕組みを提供することが可能となる。
【図面の簡単な説明】
【００１３】
【図１】第１実施形態に係る情報処理装置のハードウェア構成を表したブロック図である。
【図２】第１実施形態に係る情報処理装置の機能構成を表したブロック図である。
【図３Ａ】第１実施携帯に係る情報処理装置の動作を示すシーケンス図である。
【図３Ｂ】第１実施携帯に係る情報処理装置の動作を示すシーケンス図である。
【図４Ａ】第２実施形態に係る情報処理装置の動作を示すシーケンス図である。
【図４Ｂ】第２実施形態に係る情報処理装置の動作を示すシーケンス図である。
【図５Ａ】変形例１に係る情報処理装置の動作を示すシーケンス図である。
【図５Ｂ】変形例１に係る情報処理装置の動作を示すシーケンス図である。
【図６Ａ】変形例２に係る情報処理装置の動作を示すシーケンス図である。
【図６Ｂ】変形例２に係る情報処理装置の動作を示すシーケンス図である。
【発明を実施するための形態】
【００１４】
以下、本発明を実施するための形態について、第１実施形態と第２実施形態とに分けて説明する。
（１）第１実施形態
図１は、第１施形態に係る情報処理装置１のハードウェア構成を表したブロック図である。この情報処理装置１は、例えば携帯電話機、無線ＬＡＮ（Local Area Network）端末、ＰＤＡ（Personal Digital Assistants）、またはパーソナルコンピュータのような情報処理を行う情報処理装置であり、図１では携帯電話機の構成を例示している。情報処理装置１は、制御部１０、記憶部１１、表示部１２、操作部１３、無線通信部１４、音声処理部１５及びインターフェース１６を有している。これらの各部がバス１７を介して互いに接続されている。
【００１５】
制御部１０は、ＣＰＵ（Central Processing Unit）、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）及びタイマを有する。ＣＰＵは、ＲＯＭに記憶されている制御プログラムを読み出しＲＡＭにロードして実行することにより、情報処理装置１の各部を制御し、通話機能、通信機能、表示機能などの各種機能を実現する。ＲＡＭは、ＣＰＵが処理を行う際のワークエリアとなるとともに、情報処理装置１における処理の履歴を表すデータ（以下、ログデータという）を一時的に保存する一次保存領域１１１として機能する。このＲＡＭは、情報処理装置１における第１の記憶手段である。記憶部１１は、例えばＥＥＰＲＯＭ（Electrically Erasable and Programmable Read Only Memory）やハードディスクなどの不揮発性の記憶手段であり、ログデータを永続的に保存する二次保存領域１１２として機能する。記憶部１１は、情報処理装置１における第２の記憶手段である。一次保存領域１１１と二次保存領域１１２とを比較すると、一次保存領域１１１が、揮発性の記憶手段であって、データの読み出し及び書き込み速度が高速であるが記憶容量が小さい記憶手段で実現されるのに対し、二次保存領域１１２は、不揮発性の記憶手段であって、データの読み出し及び書き込み速度が低速であるが記憶容量が大きい記憶手段で実現されるという違いがある。
【００１６】
表示部１２は、液晶ディスプレイやＶＲＡＭ（Video Random Access Memory）を備えており、制御部１０による制御の下で各種画像を表示する。操作部１３は、複数のキーを有しており、利用者がこれらのキーを操作するとその操作内容に応じた信号を制御部１０へ供給する。制御部１０は、この信号に基づいて操作内容を判断して処理を行う。利用者は、操作部１３のキーを操作することによって、例えば通話の指示、文字の入力、メニューの選択、各種の設定などの様々な処理を情報処理装置１に対して指示することができるようになっている。無線通信部１４は、制御部１０の制御の下で、図示しない携帯通信網の基地局と無線通信を行う。この無線通信によって、例えば、情報処理装置１の利用者間による通話や、電子メールの送受信、或いは、ネットワーク上のサーバ装置との間における各種情報の送受信が行われる。音声処理部１５は、マイクロフォンなどの収音手段、スピーカなどの放音手段、およびＤＳＰ（Digital Signal Processor）などの音声処理回路を有している。通話が行われる際には、この音声処理部１５は、マイクロフォンによって収音された音声に応じた音声信号を音声処理回路による音声処理を経てスピーカから出力する。インターフェース１６は、情報処理装置以外の外部装置と有線によって接続される接続端子などであって、この外部装置と各種情報を遣り取りする。
【００１７】
図２は、情報処理装置１の機能構成を表したブロック図である。
図に示すように、情報処理装置１の機能は、処理実行部２１、処理内容取得部２２、一次保存制御部２３、連続性判断部２４、二次保存制御部２５、一次保存領域１１１及び二次保存領域１１２を含んでいる。これら機能のうち、処理実行部２１、処理内容取得部２２、一次保存制御部２３、連続性判断部２４及び二次保存制御部２５は、主に、制御部１０のＣＰＵがＲＡＭをワークエリアとし、ＲＯＭに記憶された制御プログラムを実行することによって実現される。ただし、処理実行部２１は、制御部１０のほか、音声処理部や無線通信部などによっても実現される。また、一次保存領域１１１及び二次保存領域１１２は、前述した制御部１０のＲＡＭと、記憶部１１とによってそれぞれ実現される。
【００１８】
処理実行部２１は、制御部１０が直接行う例えばプログラムの実行処理などのほか、制御部１０による制御の下で行われる音声通話処理など、情報処置装置１におけるあらゆる処理を実行するものである。処理内容取得部２２は、処理実行部２１の処理内容を常時監視しており、ログデータを保存すべき処理が行われた際に、その処理内容を処理実行部２１から取得し、取得した処理内容に従ってログデータを生成する。ログデータを保存すべき処理の種別は、処理内容取得部２２によって予め記憶されており、処理内容取得部２２は、自身が記憶している処理の種別と、処理実行部２１の処理の種別とが一致する場合には、ログデータを保存すべき処理が行われたと判断することになる。
【００１９】
連続性判断部２４は、処理内容取得部２２によって生成されたログデータを取得すると、取得したログデータが時間的な連続性のあるものか否かを判断する連続性判断手段である。ここでいう連続性とは、ログデータを保存する処理が連続することによって、処理実行部２１による他の処理が遅延してユーザの操作に対する応答性が悪化し、利便性が損なわれるという虞がある程度に、一定期間内にログデータの保存処理が集中している状態のことを言う。連続性判断部２４は、このログデータどうし（より具体的には、連続性判断部２４が新しく取得したログデータと、既に保存済みのログデータとの間）の時間的な連続性を判断するために予め決められた条件を記憶しており、取得したログデータがこの条件を満たすか否かにより、連続性の有無を判断する。より具体的には、連続性判断部２４は、二次保存領域１１２において、最新の保存日時とともに書き込まれているログデータ（以下、第１の旧ログデータという）と、その１つ前の保存日時とともに書き込まれているログデータ（以下、第２の旧ログデータ）との保存日時の差異が閾値以内である場合には、第１の旧ログデータの後に取得したログデータ（以下、新ログデータという）に対して、第１の旧ログデータ及び第２の旧ログデータに続く連続性があると判断する。ここでいう保存日時とは、二次保存領域１１２にログデータが書き込まれた書込時期を表している。
【００２０】
そして、連続性判断部２４は、新ログデータと第１の旧ログデータ及び第２の旧ログデータとの間に連続性があると判断すると、一次保存制御部２３にその旨を通知する。一次保存制御部２３は、連続性判断部２４からの通知に従い、一次保存領域へのログデータの保存（以下、バッファリングという）を行う。バッファリングが開始されると、一次保存制御部２３は、タイマによる時間計測によって予め決められたバッファリング期間が経過すると、そのバッファリングの終了時と判断する。バッファリングが終了したときには、一次保存制御部２３は、二次保存制御部２５にバッファリングを終了した旨を通知する（以下、この通知をバッファリング終了通知という）。前述したように、一次保存領域１１１は、データの読み出し及び書き込み速度が高速であるから、このログデータのバッファリングも、二次保存領域１１２と比べると、高速になされることになる。
【００２１】
二次保存制御部２５は、一次保存制御部２３からのバッファリング終了通知を受け取ると、一次保存領域１１１に保存されていたログデータを全て読み出し、これらのログデータ全体に対して、保存日時としてのタイムスタンプを付加し、二次保存領域１１２に保存する。前述したように、二次保存領域１１２は、不揮発性の記憶手段であるため、ログデータが永続的に記憶されることになる。また、一次保存領域１１１から読み出されたログデータは消去され、一次保存領域１１１上に新たな記憶領域が確保される。これらの一次保存制御部２３及び二次保存制御部２５がログデータを書き込む制御手段として機能する。なお、図２に示したとおり、二次保存領域１１２は、制御部１０とは異なるコンポーネントであるため、ＲＰＣ（Remote Procedure Call）等のコンポーネント間通信機構を用いて、二次保存領域１１２に対する処理が呼び出されるようになっている。
【００２２】
続いて、情報処理装置１の動作について説明する。なお、以下の説明では、図２に示した各機能を動作の主体として表現するが、そのハードウェアとしての実体は主に図１の制御部１０である。
図３Ａ、図３Ｂは、情報処理装置１の動作を示すシーケンス図である。
図３Ａにおいて、処理内容取得部２２は処理実行部２１の処理内容を常時監視しており、ログデータを保存すべき処理が行われた際に、その処理内容を処理実行部２１から取得する（ステップＳ１）。次に、処理内容取得部２２は、処理実行部２１から取得した処理内容からログデータを生成し、連続性判断部２４へ受け渡す（ステップＳ２）。連続性判断部２４は、ログデータを受け取ると、二次保存領域１１２に保存されている最新の第１の旧ログデータに付加された保存日時（ＴＳ０とする）と、それよりも時間的に１つ前の第２の旧ログデータに付加された保存日時（ＴＳ＃とする）としてのタイムスタンプをそれぞれ比較し、両者の差異が閾値以内に収まるかどうかで、今回新たに取得した新ログデータと過去に保存した旧ログデータとの間の連続性を判断する（ステップＳ３）。ここでは、既に二次保存領域に保存されている第１の旧ログデータと第２の旧ログデータの保存日時が互いに近い場合には、今回新たに取得した新ログデータもこれらの過去の旧ログデータに連続しているとみなす、という考え方を採用している。
【００２３】
ここで、両者の差異が閾値を超えており、連続性判断部２４が、新ログデータと旧ログデータとの間に連続性が無いと判断したと仮定する。連続性判断部２４は、連続性が無いと判断した場合には、新ログデータを二次保存制御部２５へ受け渡す（ステップＳ４）。二次保存制御部２５は、この新ログデータに、保存日時（ＴＳ１とする）を示すタイムスタンプを付加し（ステップＳ５）、この新ログデータを二次保存領域１１２に保存する（ステップＳ６）。
【００２４】
次に、処理実行部２１によって、ログデータを保存する対象となる新たな処理が実行されたとする。処理内容取得部２２は、この処理内容を処理実行部２１から取得し（ステップＳ７）、そのログデータを生成して連続性判断部２４へ受け渡す（ステップＳ８）。連続性判断部２４は、前述と同様にして、二次保存領域１１２に保存されている第１及び第２の旧ログデータに付加された保存日時ＴＳ１、ＴＳ０としてのタイムスタンプを比較し、両者の差異が閾値以内に収まるかどうかで、新ログデータと旧ログデータとの連続性を判断する（ステップＳ９）。ここでは、両者の差異が閾値を超えており、連続性判断部２４が、新ログデータと旧ログデータとの間に連続性が無いと判断したと仮定する。連続性判断部２４は、連続性が無いと判断した場合には、新ログデータを二次保存制御部２５へ受け渡す（ステップＳ１０）。二次保存制御部２５は、この新ログデータに、保存日時（ＴＳ２とする）を示すタイムスタンプを付加し（ステップＳ１１）、この新ログデータを二次保存領域１１２に保存する（ステップＳ１２）。
【００２５】
ここで図３Ｂの説明に移る。さらに、処理実行部２１によって、ログデータを保存する対象となる新た処理が実行されたとする。処理内容取得部２２は、この処理内容を処理実行部２１から取得し（ステップＳ１３）、そのログデータを生成して連続性判断部２４へ受け渡す（ステップＳ１４）。連続性判断部２４は、前述と同様にして、二次保存領域１１２に保存されている第１及び第２の旧ログデータに付加された保存日時ＴＳ２、ＴＳ１としてのタイムスタンプを比較し、両者の差異が閾値以内に収まるかどうかで、新ログデータと旧ログデータとの連続性を判断する（ステップＳ１５）。ここでは、両者の差異が閾値以内に収まり、連続性判断部２４が、新ログデータと旧ログデータとの間に連続性があると判断したと仮定する。この場合、連続性判断部２４は、連続性がある旨を一次保存制御部２３に通知するとともに、新ログデータを一次保存制御部２３に受け渡す（ステップＳ１６）。
【００２６】
一次保存制御部２３は、連続性判断部２４から上記の通知および新ログデータを受け取ると、バッファリングの実行を開始し（ステップＳ１７）、新ログデータを一次保存領域１１１に保存する（ステップＳ１８）。また、一次保存制御部２３はバッファリングを開始した旨を処理内容取得部２２に通知し（ステップＳ１９）、タイマによるバッファリング期間の計時を開始する（ステップＳ２０）。このバッファリング期間は予め決められており、一次保存制御部２３が記憶している。処理内容取得部２２は、上記通知を受け取ると、次に処理実行部２１から受け渡された新ログデータの受渡先を連続性判断部２４から一次保存制御部２３へ変更する。
【００２７】
以降、ログデータを保存すべき処理が処理実行部２１によって行われるたびに、その処理内容が処理内容取得部２２によって取得され（ステップＳ２１）、そのログデータが一次保存制御部２３へ受け渡される（ステップＳ２２）。一次保存制御部２３は受け取ったログデータを一次保存領域１１１に保存する（ステップＳ２３）。バッファリング期間が経過するまで、ログデータはこの一連の流れに沿って一次保存領域１１１に順次保存される。
【００２８】
タイマの計時によるバッファリング期間が満了すると、一次保存制御部２３はバッファリングの実行を終了し（ステップＳ２４）、二次保存制御部２５にログデータを保存することを命じるログデータ保存命令を通知する（ステップＳ２５）。二次保存制御部２５はこのログデータ保存命令を受け取ると、一次保存領域１１１にバッファリングされたログデータを全て読み出し（ステップＳ２６）、このログデータ全体に対して、保存日時としてのタイムスタンプを付加し（ステップＳ２７）、二次保存領域１１２に保存する（ステップＳ２８）。そして、一次保存制御部２３は、バッファリングが終了した旨を処理内容取得部２２へ通知する（ステップＳ２９）。処理内容取得部２２は、この通知を受け取ると、次に処理実行部２１から受け渡されたログデータの受渡先を一次保存制御部２３から連続性判断部２４へ変更する。
【００２９】
なお、ステップＳ２８のログデータ保存処理の後に、さらに、処理実行部２１によって、ログデータを保存する対象となる新たな処理が実行された場合、上記と同様にして、ステップＳ２８で二次保存領域１１２に保存された第１の旧ログデータに付加された保存日時としてのタイムスタンプと、ステップＳ１２で二次保存領域１１２に保存された第２の旧ログデータに付加された保存日時としてのタイムスタンプとが比較され、両者の差異が閾値以内に収まるかどうかで連続性が判断されることになる。
【００３０】
以上説明したように、第１実施形態に係る情報処理装置１は、連続性があるとみなされたログデータを一次保存領域１１１にバッファリングしておき、バッファリング期間が満了すると、一次保存領域１１１に保存されていたログデータを二次保存領域１１２に保存する。このように、情報処理装置１は、ログデータの保存処理によってその保存処理以外の処理が遅延して利便性が損なわれるといった問題が発生しそうなとき、つまりログデータに連続性があり、次々とログデータを保存しなければならない期間中は、書き込み速度が高速である一次保存領域１１１へのデータの書き込みを行うことで、処理に相当の時間を要する二次保存領域へのデータの書き込みを回避する。このようにすれば、処理の遅延により利便性が損なわれるといった問題が発生しづらくなる。もちろん、バッファリング期間が経過した後は、二次保存領域へのデータの書き込み処理が発生するために一定の処理時間を要することになるが、このときの書き込み処理は、既にバッファリングされているログデータの全体についての処理である。よって、例えば随時発生するログデータの各々を異なるタイミングで二次保存領域１１２に書き込む場合と比較すると、例えばタイムスタンプの付加など、ログデータの保存に際しての付随的な処理を省略することができる。よって、情報処理装置１にかかる処理負荷を軽減することができる。
【００３１】
（２）第２実施形態
次に、第２実施形態について説明する。第２実施形態に係る情報処理装置１は、第１実施形態の情報処理装置１と同じ構成であり、その動作が異なるだけである。より具体的には、第１実施形態では、情報処理装置１は、連続性がないログデータを二次保存領域１１２に保存していたのに対し、第２実施形態では、情報処理装置１は、連続性がないログデータをまずは一次保存領域１１１に保存し、付随的に二次保存領域１１２にも保存する。そして、情報処理装置１は、取得したログデータに連続性があるか否か判断する際に、二次保存領域１１２ではなく、一次保存領域１１１において、最新の保存日時とともに書き込まれているログデータ（以下、第１の旧ログデータという）と、その１つ前の保存日時とともに書き込まれているログデータ（以下、第２の旧ログデータ）との保存日時の差異が閾値以内である場合には、第１のログデータの後に取得したログデータ（以下、新ログデータという）に対して、第１の旧ログデータ及び第２の旧ログデータに続く連続性があると判断する。
【００３２】
以下、図４Ａ，図４Ｂのシーケンス図を参照しながら、動作説明を行う。
図４Ａにおいて、処理内容取得部２２は処理実行部２１を監視しており、ログデータを保存すべき処理が行われた際に、処理内容を処理実行部２１から取得する（ステップＳ３０）。処理内容取得部２２は、処理実行部２１から取得した処理内容からログデータを生成し、連続性判断部２４へ受け渡す（ステップＳ３１）。連続性判断部２４は、ログデータを受け取ると、一次保存領域１１１に保存されている最新の第１の旧ログデータに付加された保存日時と、それよりも時間的に１つ前の第２の旧ログデータに付加された保存日時としてのタイムスタンプをそれぞれ比較し、両者の差異が閾値以内に収まるかどうかで、今回新たに取得した新ログデータと過去に保存した旧ログデータとの間の連続性を判断する（ステップＳ３２）。即ち、第１の実施形態との違いは、連続性判断部２４が、二次保存領域１１２ではなく一次保存領域１１１に保存された旧グデータに付加されたタイムスタンプを基にして連続性を判断しているところである。
【００３３】
連続性判断部２４は、連続性が無いと判断した場合、取得したログデータを二次保存制御部２５へ受け渡す（ステップＳ３３）。二次保存制御部２５は、このログデータに保存日時を示すタイムスタンプを付加し（ステップＳ３４）、ログデータを一次保存領域１１１に保存する（ステップＳ３５）。さらに、二次保存制御部２５は、このログデータを二次保存領域１１２にも保存する（ステップＳ３６）。以降の処理において連続性判断部２４は、ステップＳ３２，Ｓ３５，Ｓ３６と同様にして、一次保存領域１１１に保存された旧ログデータに付加されたタイムスタンプを基にして連続性を判断する。そして、連続性が無いと判断された場合には、二次保存制御部２５は、ログデータを一次保存領域１１１及び二次保存領域１１２の双方に保存する。
これ以降の処理（図４Ｂの内容を含む）は、第１の実施形態と同様であるため詳細な説明は省略する。この第２の実施形態に係る情報処理装置によれば、第１実施形態と同様の効果を奏することが可能となる。
【００３４】
（３）変形例
上記の第１及び第２実施形態は次のような変形も可能である。なお、これらの変形は、各々を適宜組み合わせることも可能である。
（３−１）変形例１
連続性判断部２４がログデータの連続性を判断するときの条件は第１及び第２実施形態の内容に限らない。例えば、連続性判断部２４は、処理内容取得部２２によって新たに取得されたログデータ（新ログデータ）の取得日時と、二次保存領域１１２（又は一次保存領域１１１）に保存されている最新のログデータ（旧ログデータ）との保存日時とを比較し、その差異が閾値内に収まるかかどうかで、新ログデータの連続性の有無を判断するようにしてもよい。
図５Ａ，図５Ｂは変形例１における情報処理装置１の動作を示すシーケンス図である。
図５Ａにおいて、処理内容取得部２２は処理実行部２１の処理内容を常時監視しており、ログデータを保存すべき処理が行われた際に、その処理内容を処理実行部２１から取得する（ステップＳ４０）。次に、処理内容取得部２２は、取得した処理内容からログデータを生成し、連続性判断部２４へ受け渡す（ステップＳ４１）。連続性判断部２４は、ログデータを受け取ると、このログデータ（新ログデータ）を受け取った日時と、二次保存領域１１２に保存されている最新の旧ログデータに付加された保存日時としてのタイムスタンプとを比較し、両者の差異が閾値以内に収まるかどうかで、新ログデータと旧ログデータとの間の連続性を判断する（ステップＳ４２）。ここでは、両者の差異が閾値を超えており、連続性判断部２４が、新ログデータと旧ログデータとの間に連続性が無いと判断したと仮定する。連続性判断部２４は、連続性が無いと判断した場合には、新ログデータを二次保存制御部２５へ受け渡す（ステップＳ４３）。二次保存制御部２５は、この新ログデータに、保存日時（ＴＳ１０とする）として示すタイムスタンプを付加し（ステップＳ４４）、この新ログデータを二次保存領域１１２に保存する（ステップＳ４５）。
【００３５】
次に、処理実行部２１により、ログデータを保存する対象となる新たな処理が実行されたとする。処理内容取得部２２は、この処理内容を処理実行部２１から取得し（ステップＳ４６）、そのログデータを連続性判断部２４へ受け渡す（ステップＳ４７）。連続性判断部２４は、前述と同様にして、ログデータ（新ログデータ）を受け取った日時（ＴＳ２０とする）と、二次保存領域１１２に保存されている旧ログデータに付加された保存日時ＴＳ１０としてのタイムスタンプを比較し、両者の差異が閾値以内に収まるかどうかで、新ログデータと旧ログデータとの連続性を判断する（ステップＳ４８）。ここでは、両者の差異が閾値内であり、連続性判断部２４が、新ログデータと旧ログデータとの間に連続性があると判断したとする。この場合、連続性判断部２４は、ＴＳ１０とＴＳ２０との比較により、これらの日時に保存された両ログデータに連続性があると判断すると、連続性判断部２４は、連続性がある旨を一次保存制御部２３に通知するとともに、ログデータを一次保存制御部２３に受け渡す（ステップＳ４９）。
以降の処理におけるその他の動作については、第１実施形態と同様であるため、詳細な説明は省略する。また、上記のような考え方は第２実施形態にも適用可能である。
なお、新ログデータに付加するタイムスタンプは、新ログデータが取得された日時に相当するものであればよい。例えば、上記のように二次保存制御部２５が二次保存領域１１２に新ログデータを保存するときの日時であってもよいし、連続性判断部２４が新ログデータを受け取った日時であってもよいし、或いは、その両者の間の日時であってもよい。また、これら例示した日時以外の日時であっても、新ログデータが取得された日時とみなせる日時であれば、それでもよい。
【００３６】
第１及び第２実施形態では、旧ログデータに付加されたタイムスタンプが２つ必要であったが、この変形例１においては、連続性判断部２４は旧ログデータに付加されたタイムスタンプが１つだけ分かれば良い。よって、第１及び第２実施形態と比較して、連続性判断部２４が二次保存領域１１２または一次保存領域１１１にアクセスする回数を減らすことができ、結果として、制御部１０の処理負荷を軽減することが可能となる。
【００３７】
（３−２）変形例２
バッファリング期間の終了を判断する基準は、第１及び第２実施形態の内容に限らない。例えばタイマによる時間的な基準に加え、もしくはタイマによる時間的な基準には拠らず、予め決められたログデータの量を基準として用いてもよい。ここで、ログデータの量とは、ログデータのデータ量もしくはログデータの件数のいずれか一方または双方を含む。
【００３８】
図６Ａ，図６Ｂは変形例２における情報処理装置１の動作を示すシーケンス図である。
図６Ａおよび図６ＢにおけるステップＳ１からステップＳ１９に至るまでの動作は、第１の実施形態における動作と同様のため、詳細な説明は省略する。以下では、図６Ｂにおける一次保存制御部２３がバッファリングを開始し、処理内容取得部２２に通知を行った後（ステップＳ１９の後）の動作から説明する。
図６Ｂにおいて、一次保存制御部２３はタイマによる計時を開始するとともに、処理内容取得部２２から受け取るログデータの量の監視を開始する（ステップＳ５０）。このログデータの量には、前述のとおり、ログデータのデータ量もしくはログデータの件数のいずれか一方または双方を含む。次に、処理内容取得部２２は処理実行部２１を監視し、ログデータを保存すべき処理が行われた際に、処理内容を処理実行部２１から取得する（ステップＳ５１）。処理内容取得部２２は、一次保存制御部２３からバッファリング開始の通知を受けている場合、ログデータを一次保存制御部２３へ受け渡す（ステップＳ５２）。一次保存制御部２３はログデータを一次保存領域１１１に保存する（ステップＳ５３）。一次保存制御部２３によりバッファリングの実行が終了されるまで、ログデータはこの一連の流れに沿って一次保存領域１１１に保存される。一次保存制御部２３におけるタイマが満了となるか、もしくは一次保存領域１１１に保存されたログデータの量が閾値に達すると、一次保存制御部２３はバッファリングの実行を終了する（ステップＳ５４）。以降の処理については、第１の実施形態における動作と同様のため、詳細な説明は省略する。上記のような考え方は第２実施形態にも適用可能である。また、上記の例はタイマによる時間的な基準に加えてログデータの量を基準として用いていたが、タイマによる時間的な基準に代えてログデータの量を基準として用いてもよい。
【００３９】
変形例２では、ログデータの量という基準でバッファリングの終了を判断しているため、一次保存領域１１１の記憶要領に合わせてバッファリングする量を制限することが可能となる。よって、例えば情報処理装置１にかかる製造コストや物理的なスペースの問題で一次保存領域１１１に低記憶容量の揮発性メモリを使用しなければならないといった、ハードウェアにおける制約条件があったとしても、これに対応することができる。
【符号の説明】
【００４０】
１…情報処理装置、１０…制御部、１１…記憶部、１１１…一次保存領域、１１２…二次保存領域、１２…表示部、１３…操作部、１４…無線通信部、１５…音声処理部、１６…インターフェース、２１…処理実行部、２２…処理内容取得部、２３…一次保存制御部、２４…連続性判断部、２５…二次保存制御部
【図１】
0005620661.tif 000002
【図２】
0005620661.tif 000003
【図３Ａ】
0005620661.tif 000004
【図３Ｂ】
0005620661.tif 000005
【図４Ａ】
0005620661.tif 000006
【図４Ｂ】
0005620661.tif 000007
【図５Ａ】
0005620661.tif 000008
【図５Ｂ】
0005620661.tif 000009
【図６Ａ】
0005620661.tif 000010
【図６Ｂ】
0005620661.tif 000011