JP2019168845A - 情報処理装置とその制御方法 - Google Patents

情報処理装置とその制御方法 Download PDF

Info

Publication number
JP2019168845A
JP2019168845A JP2018055105A JP2018055105A JP2019168845A JP 2019168845 A JP2019168845 A JP 2019168845A JP 2018055105 A JP2018055105 A JP 2018055105A JP 2018055105 A JP2018055105 A JP 2018055105A JP 2019168845 A JP2019168845 A JP 2019168845A
Authority
JP
Japan
Prior art keywords
application
access
interval
information processing
processing apparatus
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.)
Pending
Application number
JP2018055105A
Other languages
English (en)
Inventor
史朗 九里
Shiro Kuri
史朗 九里
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2018055105A priority Critical patent/JP2019168845A/ja
Publication of JP2019168845A publication Critical patent/JP2019168845A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

【課題】記憶ユニットの動作時間を増やす要因となるアプリケーションを特定できる情報処理装置とその制御方法を提供する。【解決手段】アプリ管理部201は、画像形成装置で動作するアプリケーション(アプリ)210〜212の起動や停止を管理する。関数ライブラリ部202は、アプリが処理を行うために呼び出す関数の集合である。ファイルドライバ部206は、関数ライブラリ部からの要求により、HDD上のファイルにアクセスするためのドライバである。アクセス監視部203は、アプリからの要求によるHDDへのアクセス実行を監視する。第一のアクセス判定部204は、アクセス監視部の情報を用いて、アプリが定期的にHDDにアクセスする第一のアプリであるかどうかを判定する。第二のアクセス判定部205は、第一のアクセス判定部により判定された第一のアプリが、想定外にHDDへのアクセスを増やす要因となる第二のアプリであるかを判定する。【選択図】図2

Description

本発明は、情報処理装置とその制御方法に関し、特に情報処理装置のハードディスク装置(以下、HDD)の故障検知や回避の技術に関する。
アプリケーション(以下、アプリ)などのソフトウエアによるHDD上にファイルに対する読込みや書込みなどのアクセス要求により、HDDは動作する。このHDDの動作時間の累計時間(以下、累計動作時間)が、HDDメーカーの保証する累積動作時間(以下、限界時間)を越えると、HDDは故障しやすくなる。HDDを組み込んだ情報処理装置は、一般的には装置本体のサポート期間を設けており、HDDも含めてそのサポート期間内の動作を保証している。
特許文献1は、別の情報処理装置から対象の情報処理装置のHDDの累計動作時間を定期的に調べ、累積動作時間からHDDの限界時間までの残時間を算出し、HDDの残時間に基づいて警告を表示する技術である。
特開2008-65744号公報
先行技術の方法により、HDDが限界時間を越えることの予測は可能である。しかし、先行技術のHDDの累計動作時間を確認する方法では、情報処理装置のサポート期間内にHDDが限界時間を越える要因(想定外にHDDアクセスを増やす要因)を特定することが困難であるという課題がある。
本発明な上記従来例に鑑みてなされたもので、記憶ユニットの動作時間を増やす要因となるアプリケーションを特定することができる情報処理装置とその制御方法を提供することを目的とする。
上記目的を達成するために本発明は以下の構成を有する。
すなわち、本発明の一側面によれば、記憶ユニットにアクセスするアプリケーションを実行可能な情報処理装置であって、
前記記憶ユニットに対するアプリケーションごとのアクセスを監視するアクセス監視手段と、
前記アクセス監視手段により監視したアプリケーションごとのアクセスの時間間隔に基づいて、前記記憶ユニットに定期的にアクセスしている定期アクセスアプリケーションを特定する第一のアプリケーションの特定手段と、
前記定期アクセスアプリケーションの数と、前記記憶ユニットに対するアクセスの基準の時間間隔である基準間隔とに基づいて、一つの定期アクセスアプリケーションに許容されるアクセスの時間間隔である許容間隔を決定する決定手段と、
前記定期アクセスアプリケーションのうちから、前記許容間隔よりも短い時間間隔で前記記憶ユニットにアクセスしているアプリケーションを、前記記憶ユニットの動作時間を長くするアプリケーションとして特定する第二のアプリケーションの特定手段と
を有することを特徴とする情報処理装置が提供される。
本発明により、記憶ユニットの動作時間を増やす要因となるアプリケーションをを特定することができる。
画像形成装置100のコントローラユニット119を表すブロック図である。 コントローラユニット119のソフトウエア構成を表すモジュール構成図である。 画像形成装置100の第二のアプリ特定の処理を表すフローチャートである。 アプリごとのファイル構造のイメージ図である。 HDD104へのアクセス実行を記憶したログのイメージ図である。 基準間隔を説明するためのイメージ図である。 画像形成装置100の第二のアプリ特定の処理を表すフローチャート図である。
以下、本発明を実施するための最良の形態について、図面を用いて説明する。
[第1の実施形態]
最初に、アプリを実行可能な情報処理装置の一実施例である画像形成装置のコントローラユニットの説明を行う。
●画像形成装置のコントローラユニットの構成
図1は、本発明の各実施形態に係る画像形成装置100のコントローラユニットの内部構造を示すブロック図である。
コントローラユニット119は、各種制御プログラムを実行するCPU101を有する。CPU101は、ROM103に格納されているブートプログラムに基づきシステムを起動し、このシステム上で記憶ユニットであるHDD(ハードディスク装置)104に格納されている制御プログラムを読み出してRAM102をワークエリアとして所定の処理を実行する。この制御プログラムにより、Java(登録商標)プログラムなどで作成したアプリの所定の制御を実行することが可能である。HDD104には、上記各種制御プログラムが格納されるとともに、後述するネットワーク部107が有するすべての通信手段に関する情報や後述するアプリがアクセス可能なファイルやそれに関する情報を格納する。
CPU101には、RAM102、ROM103、HDD104がシステムバス111を介して接続されている。さらに操作部I/F105、ネットワーク部107、イメージバスI/F110、電源管理部109がシステムバス111を介して接続されている。
操作部I/F105は、操作部(ディスプレイ)106との間のインターフェイス部であり、操作部106に表示する画像データをRAM102から取得して転送する処理や、操作部106で発生した信号をCPU101へ転送する処理などを行う。
操作部106は、ユーザが操作可能なボタンなどの対象物を表示するための表示処理と、表示処理に表示された情報をユーザが操作した信号(入力信号)を検知する入力処理を行う。
電源管理部109は、画像形成装置100の電源OFFと電源ONの管理を行う。なお電源をONにすると、CPU101は、ROM103のブートプログラムに基づきシステムを起動し、このシステム上でHDD104に格納されている制御プログラムを実行することで、画像形成装置100の初期化処理(アプリの初期化も含む)を行う。さらに電源管理部109は、画像形成装置100をスリープ状態(省電力モード)へ移行とスリープ状態から通常状態への復帰の管理も行う。
ネットワーク部107は、LAN108に接続され、LAN108を介した情報の入出力を行う。LAN回線にwebサーバなどのサーバが接続されている場合は、そのサーバからLAN108を介して情報を取得することが可能である。また、LAN回線内のプロキシサーバなどを介して、インターネットに接続し、インターネット上のサーバからアプリを取得することも可能である。
イメージバスI/F110は、システムバス111と、画像バス112とを接続し、データ構造を変換するバスブリッジである。画像バス112は、画像データを高速で転送可能なPCIバスまたはIEEE1394規定に従うバスから構成される。画像バス112には、デバイスI/F114および画像処理部113が接続されている。
デバイスI/F114は、画像入出力デバイスであるスキャナ116やプリンタ118とコントローラユニット119とを接続し、画像データの同期系/非同期系の変換を行う。ここでは、デバイスI/F114とスキャナ116とがケーブル115を介して、デバイスI/F114とプリンタ118とがケーブル117を介してそれぞれ接続されている。
画像処理部113は、多値画像データに対してJPEG、二値画像データに対して、JBEG、MMR、MHなどの圧縮伸張処理を行う。また、入力画像データや出力画面に対して、プリンタの補正や解像度変換などの補正、加工、編集を行う。
このように、コントローラユニット119のCPU101は、各制御プログラムに基づき、システムバス110に接続される各種デバイスとのアクセスを総括的に制御するととともに、アプリの初期化やアプリの動作に関する制御や動作を行う。
●ソフトウエア構成
次に、図2のモジュール構成図を用いて、画像形成装置100のCPU101やHDD104などの各ハードウエア上で動作するソフトウエアのモジュール構成を説明する。なお、これらの各モジュールにおける処理は、CPU101が、ROM103やHDD104に記憶されているプログラムを読み出し、RAM102をワークエリアとして所定の処理を実行することで実現している。また、所定の処理を実行することで生成される全ての情報は、RAM102もしくはHDD104に記憶する。なお、このような各モジュールにおける処理は以降でも同様であるため、以降では記載を省略する。
アプリ管理部201は、画像形成装置100で動作するアプリケーション(アプリ)の起動や停止などのライフサイクルを管理するための処理を行う。このアプリのライフサイクル管理については、一般的にはOSGiなどが知られており、ここでの説明は省略する。また、このアプリ管理部201は、管理しているアプリの種類の判定するための処理も行う。本実施例では、アプリの種類として、システムアプリ、ログインアプリ、後入れアプリがあることとする。ログインアプリは、ユーザが認証を行うためのアプリであり、操作部106でユーザが操作を行う際に最初にログイン画面を表示する。システムアプリは、画像形成装置100にあらかじめ(工場出荷時から)インストールされていたアプリである。システムアプリとログインアプリのように工場でインストールされたアプリをプレインストールされたアプリケーションと呼ぶこともある。
また、後入れアプリは、ユーザが工場出荷後に画像形成装置100にインストールしたアプリである。なお、ユーザが工場出荷後に画像形成装置100にインストールしたアプリが認証を行うアプリである場合、このアプリの種類は、後入れアプリではなく、ログインアプリとする。なお本実施例では、システムアプリとログインアプリは、定期的にHDD104にアクセスしないことを工場出荷前に確認済みのアプリであることとする。近年の画像形成装置では、この後入れアプリのように、ユーザが用途に応じたアプリを画像形成装置にインストールし、動作させることが可能になっている。そのため、これらの後入れアプリの動作も含めて、HDDの限界時間を保証する(画像形成装置のサポート期間内にHDDの限界時間を越えないようにする)必要がある。
アプリ210〜212は、アプリ管理部201で管理され、画像形成装置100で動作するアプリの一例である。ここでは、アプリ210がシステムアプリ、アプリ211とアプリ212が後入れアプリとする。
関数ライブラリ部202は、アプリ管理部210で管理しているアプリが処理を行うために呼び出す関数(メソッド含む)の集合である。具体的な処理としては、HDD104のファイルに対するアクセスやネットワーク通信等である。なおこの関数ライブラリ部202に含まれるHDD104のファイルにアクセスする関数は、後述のファイルドライバ部206を呼び出してHDD104にアクセスする。そしてさらに、後述のアクセス監視部203にHDD104のファイルへのアクセス処理の実行(以降、アクセス実行)を通知する。HDD104へのアクセス実行としては、読込処理のread()関数や書込処理のwrite()関数などがある。
アクセス監視部203は、アプリからの要求によるHDD104へのアクセス実行を監視するための処理を行う。具体的な処理としては、まず、画像形成装置100がアクセスを監視する状態であるかどうかを判定する。そして、アクセスを監視する状態になっている場合は、アプリからのHDD104へのアクセス実行を、アクセス実行結果としてRAM102に記憶する。詳細は図3を参照して後述する。
第一のアクセス判定部204は、アクセス監視部203の情報を用いて、アプリ管理部201のアプリが定期的に(一定間隔で)HDD104にアクセスする第一のアプリであるかどうかを判定するための処理を行う。すなわち、第一のアクセス判定部は、後入れアプリのうちから第一のアプリを特定する。第一のアプリを、定期アクセスアプリケーションと呼ぶこともある。なお第一のアプリとは、HDD104に定期的にアクセスするアプリのことである。第一のアプリを判定するための詳細な処理は後述する。
第二のアクセス判定部205は、第一のアクセス判定部204により判定された第一のアプリが、想定外にHDDへのアクセスを増やす要因となる第二のアプリであるかを判定するための処理を行う。すなわち、第二のアクセス判定部は、第一のアプリのうちから第二のアプリを特定する。なお第二のアプリは、想定外定期アクセスアプリと呼ぶこともある。第二のアプリを判定するための詳細な処理は後述する。
ファイルドライバ部206は、HDD104上のファイルにアクセスするためのドライバであり、関数ライブラリ部202からの要求により、HDD104上のファイルにアクセスするための処理を行う。このドライバの処理は、一般的なLinux(登録商標)に含まれるドライバと同じであるため、詳細は省略する。
スリープ検知部207は、電源管理部109を用いて、画像形成装置100がスリープ状態(すなわち省電力状態)であるかを判定するための処理を行う。なお、スリープ検知部207は、画像形成装置100がスリープ状態から通常状態に復帰したことを判定するための判定も行い、画像形成装置100がスリープ状態であるかどうかの情報をRAM102に記憶する。
以上が、モジュール構成図の説明である。
<第二のアプリを特定するための処理>
続いて、画像形成装置100で動作するアプリ、特に後入れアプリの中から第二のアプリを特定するための処理の説明を、フローチャート図3を用いて説明する。図3のフローは、アクセス監視部203、第一のアクセス判定部204、第二のアクセス判定部205、スリープ検知部207により実行される。またこれらはすべてCPU101により実現される機能ブロックであるから、図3の手順はCPU101により実行されるということもできる。
●アクセス集計結果の作成処理
アプリからのHDDアクセス実行を受信した関数ライブラリ部202は、ファイルドライバ部206にHDDアクセス実行の要求を送信すると共に、アクセス監視部203にアプリによるHDDアクセス実行が行われたことを通知すると、図3の手順が開始される。関数ライブラリ部202からの通知を受信したアクセス監視部203は、画像形成装置100がHDDアクセスを監視する状態になっているかを表す情報をRAM102から取得し、アクセスを監視するかどうかを判定する(ステップ301)。本実施例では、画像形成装置100がアクセスを監視する状態とは、画像形成装置100の操作部106でユーザが操作できない状態(以降、スリープ状態)である。ステップ301では、画像形成装置100がスリープ状態であれば、アクセスを監視すると判断することとする。一方、画像形成装置100がスリープ状態でない場合は、スリープ状態になるまで待つこととする。
画像形成装置100がスリープ状態であるかどうかを表す情報は、スリープ検知部207によりRAM102に記憶されている、スリープ状態であるか否かを示す情報を取得することで判定する。なお、アクセスを監視する状態になっているかは別の方法により判定しても良い。このための別の方法としては、ユーザによる明示的なアクセス監視指示を受けた状態、もしくはアプリ管理部201により1つ以上のアプリが動作を開始した状態であれば、アクセスを監視すると判断しても良い。これにより、画像形成装置100がスリープ状態にならない場合も監視を行うことが可能となる。
アクセス監視部203は、画像形成装置100がHDDアクセスを監視する状態であると判断すると、このアクセスを実行したアプリが後入れアプリであるかどうかを判定する(ステップ302)。ここで、後入れアプリであるかどうかを判定する方法について説明する。本実施例では、アプリ管理部201のアプリがアクセスするHDD104のファイルは、他のアプリからアクセスすることができず、 アクセスするファイルパスから、アプリを一意に特定することができることとする。より詳細には、アプリがアクセスする全てのファイルは、アプリを特定するディレクトリ名の下に配置することで、アクセスするファイルパスからアプリを一意に特定できることとする。そのため、アクセス監視部203は、関数ライブラリ部202からの、アプリによるHDDアクセス実行が行われたことを示す通知にアクセス先のファイルのファイルパスを含めておく。この通知は、関数ライブラリ部202がファイルドライバ部206に送ったHDDアクセス実行の要求と同じものであってもよい。アクセス監視部203は通知に含まれたファイルパスからアプリを特定する。このイメージを図4で表す。
図4では、点線で囲ったディレクトリ名"1234"がアプリ1を表し、ディレクトリ名"1235"がアプリ2を表す。そのため、図4最下行のようにファイル名"Log2.log"に対するアクセスを行った場合、"Log2.log"の ファイルパスのディレクトリ名"1235"から、アプリ2によるファイルアクセスと特定できる。このようにしてHDDアクセスを要求したアプリの識別情報が特定されたなら、それがあらかじめ定めた後入れアプリの識別情報と照合し、一致しなければ後入れアプリと判定してよい。なお、後入れアプリであるかどうかを判定する別の方法としては、関数ライブラリ部202の関数を呼び出すときの引数にアプリの種類情報を付加し、この種類情報を関数ライブラリ部202からアクセス監視部203に送信することとしても良い。このようにしてアプリを特定した後、アクセス監視部203は、特定したアプリが後入れアプリであるかどうかをアプリ管理部201を用いて判定する。
アクセス監視部203は、関数ライブラリ部202からのHDDアクセスの実行を後入れアプリが行ったと判断すると、実行したアクセス処理の内容をRAM102にアクセス結果として記憶する(ステップ303)。実行したアクセス処理の内容は、受信した関数ライブラリ部202から受信した通知に含まれている。なお以降では、このアクセス結果を、アクセス結果ログと呼ぶこととする。ここでアクセス結果ログで記憶する情報としては、ファイル名を含むファイルパス、アクセス関数、アクセス関数を呼び出した時刻を含むこととする。ここでアクセス結果ログの具体例の説明を、図5(A)を用いて行う。
図5(A)は、10時(10:00:00)から10時3分(10:03:00)までのアクセス結果ログのイメージ図である。図5(A)のアクセス結果ログは、8回のアクセスを表している。なお図5(A)では説明の便宜上、8回のアクセス結果にそれぞれNo.1〜No.8の番号を付けている。アクセス結果ログの最初のログ(No.1のログ)は、ファイルパス"/yyyy/y1.log"というファイルに、書込み処理(write関数)を10時に実行したことを表す。なおここでは、"/yyyy/"というディレクトリは、後入れアプリYがアクセスするファイルのあるディレクトリであることとする。また同様に、"/xxxx/"というディレクトリは、後入れアプリXがアクセスするファイルのあるディレクトリであることとする。このようにアクセス結果ログに記録された情報からは、少なくともHDD104にアクセスしたアプリと、その時刻とを特定することができる。
以上がステップ303で記憶するアクセス結果ログの具体例の説明である。なお本実施例では、ステップ302とステップ303で、後入れアプリからのHDDアクセスのみ記憶した。これは、前述のようにシステムアプリとログインアプリはHDD104に定期的にアクセスすることがないためであり、これにより、ステップ303以降の処理を高速に行うことができる。一方、システムアプリもしくはログインアプリが定期的にHDDにアクセスするような場合は、ステップ302の判定処理を行わずに、ステップ303で全てのアプリのHDアクセスを記憶しても良い。
アクセス監視部203は、HDDアクセスを記憶した後、HDD104へのアクセス結果ログを解析するかどうかを判定する(ステップ304)。本実施例では、アクセス結果を解析するかどうかを判定する方法としては、画像形成装置100が通常状態に戻っているかで判断することとする。具体的には、アクセス監視部203は、ステップ304でスリープ検知部207に対して画像形成装置100が通常状態であるかを確認し、スリープ状態から通常状態に戻っていれば、アクセス結果を解析すると判断する。つまり、画像形成装置100がスリープ状態の間のみ、アクセスを記憶することとする。なおアクセス結果ログを解析するかどうかの判定は別の方法でも良い。例えば、ユーザによる明示的なアクセス結果の解析指示を受けた状態もしくは、アクセスを監視してから一定時間経過した場合にアクセス結果を解析すると判断しても良い。解析を行わないと判定した場合には処理を終了する。この場合には、アクセス結果の解析を行う状態(すなわち電源の通常状態)に画像形成装置100が遷移したことをきっかけとしてステップ305から処理が実行されてよい。状態の判定は状態遷移があったときに割り込みを発生させても行ってよいし、電源の状態をポーリングしてもよい。またステップ303でいったん処理を終了させてもよい。
アクセス監視部203は、HDD104へのアクセス結果を解析するとステップ304で判断すると、ステップ303で記憶したアクセス結果ログからアクセス集計結果ログを作成する(ステップ305)。このアクセス集計結果ログは、HDD104へのアクセス結果をわかりやすく表したものであり、後述の第一のアプリの特定に用いる。ここで、アクセス集計結果ログの具体例を、図5(b)を用いて説明する。図5(b)は、1時間にわたってステップ303でアクセスを記憶したアクセス結果ログの内容を集計したアクセス結果集計テーブル(あるいはアクセス結果集計情報)の一例である。このアクセス結果集計テーブルは、アプリ毎に、アクセス回数、最大間隔、平均間隔をまとめたものである。アクセス結果集計テーブルの説明の前に、いくつかの用語の説明を行う。
●用語説明
まず、アクセス間隔について説明する。アクセス間隔とは、HDD104のファイルに対するアクセスとその次のアクセスとの間の時間すなわち時間的に隣接したアクセスの時間間隔のことである。ただし、HDDのハードウエア的な動作の性質上、短時間に複数回のアクセスがあった場合、まとめて1回のアクセスと見なしても、HDDの限界時間には影響しない。そのため本実施例では、最初のアクセスと次のアクセスの間隔が短時間以内であれば、さらに次のアクセスまでのアクセス間隔を確認することで、短時間以内のアクセスをまとめることとする。すなわち、所定時間内に生じた複数のアクセスを一つのアクセスとみなしてよい。例えばこの短時間(所定時間)を15秒とする。図5(A)のNo.2のアクセスは10時30秒に行われ、次のNo.3のアクセスが10時34秒に行われている。この場合、アクセス間隔は4秒<15秒のため、これら二つのアクセスを一つのアクセスとみなし、さらに次のアクセス(No.4)の時刻を確認する。No.4のアクセスは10時50秒に行われているため、No.3とNo.4のアクセスの間隔は16秒>15秒である。そのため、No.4のアクセスは、その直前のアクセスとの時間間隔が、一つにまとめることができる短時間ではないと判断し、アクセス間隔は16秒とする。なおこのような判定を繰り返すと、15秒より短い間隔ですべてのアクセスが行われていると、それら全体で一つのアクセスと判定されることになる。そこで例えば、間隔の基準となるアクセスを、ひとつのアクセスとみなされる複数のアクセスのうちの最先のアクセスとしてもよい。そのようにすれば最先のアクセスから15秒以内のアクセスが一つのアクセスとみなされることになる。
次に、最大間隔について説明する。最大間隔とは、ある1つのアプリがアクセスする全てのファイルに対するアクセスを時系列順に参照し、あるアクセスと次のアクセスのアクセス間隔の中で最大(最長)のアクセス間隔のことである。すなわち最大間隔は、各アプリの最大のアクセス間隔のことである。例えば図5(A)のアプリYの場合、アクセスするファイルは"y1.log"と"y2.dat"である。そしてアクセス間隔は、No.1のアクセスから順に着目して、1分(No.1とNo5のアクセス間隔)、30秒(No.5とNo.6のアクセス間隔)、29秒(No.6とNo.7のアクセス間隔)、1分(No.7とNo.8のアクセス間隔)である。そのため、アプリYの最大間隔はそれらのうちの最大値である1分である。なお、アプリがアクセス可能なファイルに1回しかアクセスが無い場合、例外的にこのアプリのアクセス時間はあらかじめ定めた一定値より大きい値(例えば61分)とみなす。この一定値は、たとえば、後述する図3のステップ306において第一のアプリと判定する条件である。すなわちアクセス可能なファイルに1回しかアクセスが無いアプリについては、それが第一のアプリと判定されることのない属性や条件などを与えておけばよい。
最後に、平均間隔について説明する。平均間隔とは、ステップ301でアクセスの監視を開始してステップ304でアクセス結果の解析を開始するまでの時間を、アプリごとのアクセス回数で除算することで求めたアクセスの平均間隔である。すなわち平均間隔とは、各アプリの平均アクセス間隔のことである。なお、ここで用いたアプリのアクセス回数とは、あるアプリがアクセスする全てのファイルに対するアクセスの合計回数である。以上が、用語の説明である。
ここでは、ステップ305により図5(b)のアクセス結果集計テーブルを作成したこととする。図5(b)は、アプリXのアクセス回数が14回、最大間隔が5分、平均間隔が4.2分であることを表している。さらに図5(b)は、アプリYのアクセス回数が60回、最大間隔が1分、平均間隔が1分であることを表している。
以上が、アクセス集計結果ログ作成の処理の説明である。なお本実施例では、説明をわかりやすくするために、ステップ305でアクセス結果集計テーブルを作成したが、アクセス結果集計テーブルを生成せずに、アクセス集計ログを基に後述のステップ306〜307で第一のアプリを特定してもよい。
続いて、第一のアプリの特定処理の説明を行う。
●第一のアプリ(定期アクセスアプリ)の特定処理
第一のアプリの特定処理は、図3のステップ306、307を、アクセス結果集計テーブルに登録されたアプリのうち、アプリ管理部201で動作している全ての後入れアプリを対象として、アプリごとに順次着目して行うことで実現される。アクセス結果集計テーブルの作成後、アクセス監視部203は、第一のアクセス判定部204に第一のアプリの特定要求を送信する。これを受信した第一のアクセス判定部204は、アプリ管理部201で動作している全ての後入れアプリに対して、第一のアプリであるかどうかの判定を行う(ステップ306)。そして、アクセス監視部203は、第一のアプリであると判定したアプリを、このアプリを第一のアプリとみなす(ステップ307)。例えばアプリの識別情報と関連付けて、それが第一のアプリであることを示す情報をRAM102等に記憶すればよい。さらに、第一のアプリについては、その最大間隔も定期アクセス間隔としてアプリに関連付けて記憶しておく。第一のアプリであるかどうかの判定には、ステップ305で作成したアクセス結果集計テーブルの最大間隔を用いる。具体的には、第一のアプリの最大間隔が一定の値以下であるかを判定する。例えば図5(b)の場合、一定値を60分とすると、アプリXは最大間隔が5分であるため第一のアプリであり、アプリYは最大間隔が1分のため第一のアプリと判定する。そして、この最大間隔をアプリの定期アクセス間隔とする。具体的には、アプリXの定期アクセス間隔を1分、アプリYの定期アクセス間隔を5分とする。なお本実施例では、第一のアプリの判定やアプリの定期アクセス間隔の決定に最大間隔を用いるが、アプリの平均間隔を用いても良い。この場合には、平均間隔を定期アクセス間隔としてアプリに関連付けて記憶しておく。
なお図3において、ステップ306とステップ307とを挟む六角形のブロックは、すべての後入れアプリについてステップ306とステップ307とを繰りかえすことを示す。以上が、第一のアプリ特定の処理の説明である。続いて、第二のアプリの特定処理の説明を行う。
●第二のアプリ(想定外定期アクセスアプリ)の特定処理
第一のアクセス判定部204は、第一のアプリを特定すると、第二のアクセス判定部205に、第二のアプリの特定要求を送信する。第二のアプリの特定要求が送信されたとき、第一のアプリを特定するための情報とそれぞれの定期アクセス間隔とを含む第一のアプリ情報があらかじめ定めた記憶場所に記憶されているか、あるいは第一のアプリ情報そのものやそれを特定するための情報が第二のアクセス判定部205に引き渡される。第二のアプリの特定要求を受信した第二のアクセス判定部205は、まず基準間隔を取得する(ステップ308)。なお、この基準間隔は、本実施例ではあらかじめROM103に記憶しておくこととするが、HDD104の限界時間までの残時間とこれまでの累積動作時間から算出しても良い。
ここで、基準間隔の説明を行う。基準間隔は、画像形成装置100のサポート期間内にHDD104が限界時間を越えないために、アプリがHDDアクセス104にアクセスして問題のないアクセス間隔である。そのため、アプリ管理部201で動作中の全アプリのHDD104へのアクセスの平均が、この基準間隔よりも長い間隔になっている場合、このままの状態で動作し続けても、画像形成装置のサポート期間内にHDDの限界時間を越えない。しかし逆に、アプリ管理部201で動作中の全アプリのHDD104へのアクセスの平均が、基準間隔よりも短い間隔になっている場合、このままの状態では画像形成装置100のサポート期間内にHDD104は限界時間を越えてしまう。ここで図6を用いて、具体例を説明する。図6は、アプリ1のアクセスを実線の矢印で表し、アプリ2のアクセスを点線で表している。また、アクセスとアクセスの間の数字は、アクセス間隔を表している。また、これらのアプリ1とアプリ2のアクセスをまとめたアクセスを"全アプリのアクセス"に表している(アクセス間隔の記載は非表示)。アプリ1のアクセスは3分間隔で6回であり、アプリ2のアクセスは6分間隔で3回であることを表している。そのため、全アプリのアクセスは、15分間に9回となる。図6の場合、HDD104へのアクセス15分間で9回のため全アプリの平均のアクセス間隔は15分/8≒2分である。そのため、基準間隔が3分であると、このままの状態では、画像形成装置100のサポート期間内にHDD104が限界時間を越えてしまう。以上が具体例を用いた基準間隔の説明である。
図3に戻ると、ステップ308で基準間隔を取得した第二のアクセス判定部205は、前記第一のアクセス判定部204で特定した第一のアプリの数を基に、各アプリの第一のアクセス間隔を決定する(ステップ309)。この第一のアクセス間隔とは、想定外のHDD故障を引き起こさないために、各アプリのアクセスをこの間隔以上の時間にする必要がある間隔である。すなわち第一のアクセス間隔とは、各アプリの最低アクセス間隔のことである。たとえば、基準間隔に第一のアプリの数を乗ずることで第一のアクセス間隔を得ることができる。第一のアクセス間隔は、アプリケーションに許容されたアクセスの時間間隔(許容間隔とも呼ぶ)ともいえる。
第一のアクセス間隔を決定した後、第二のアクセス判定部205は、全ての第一のアプリに対して、各アプリの定期アクセス間隔は前述の第一のアクセス間隔よりも短いかどうかを判定する(ステップ310)。そして、第二のアクセス判定部205は、ステップ310の判定で短いと判定したアプリを、第二のアプリとして特定する(ステップ311)。そして第二のアクセス判定部205は、ステップ311で特定した全ての第二のアプリを、あらかじめROM103に記憶されている通知先にネットワーク部107もしくは操作部106を用いて通知する(ステップ312)。ここで、図3において、ステップ310およびステップ311をはさむ六角形のブロックは、ステップ310およびステップ311を全ての第一のアプリを対象として繰り返し実行することを意味している。次にステップ308〜ステップ311で第二のアプリを特定する処理の具体例を説明する。
まず、第一のアプリが1つの場合の具体例として、ステップ307で特定した第一のアプリが図5(B)のアプリXのみである場合を説明する。なお、ステップ308で取得した基準間隔は3分とする。第二のアクセス判定部205は、第一のアプリの数が1であり、基準間隔は3分のため、各アプリの第一のアクセス間隔を3分(3分×1アプリ)に決定する(ステップ309)。続いて第二のアクセス判定部205は、後入れアプリXの定期アクセス間隔が、第一のアクセス間隔よりも短いかどうかを判定する(ステップ310)。アプリXの定期アクセス間隔は本例では最大アクセス間隔の5分であり、第一のアクセス間隔は3分であるため、ステップ310の判定により長い(No)と判定する。そのため、アプリXは第二のアプリと特定されない。
次に、第一のアプリが2つの場合の具体例として、ステップ307で特定した第一のアプリが、図5(B)のアプリXとアプリYである場合を説明する。なお、ステップ308で取得した基準間隔は3分とする。第二のアクセス判定部205は、第一のアプリの数が2であり、基準間隔は3分のため、第一のアクセス間隔を6分(3分×2アプリ)に決定する(ステップ309)。続いて第二のアクセス判定部205は、後入れアプリXの定期アクセス間隔が、第一のアクセス間隔よりも短いかどうかを判定する(ステップ310)。アプリXの定期アクセス間隔は5分であり、第一のアクセス間隔は6分であるため、ステップ310の判定により短いと判定する。そのため、アプリXは第二のアプリであると特定される(ステップ311)。続いて、ステップ310でアプリYの判定を行う。アプリYの定期アクセス間隔は1分であり、第一のアクセス間隔は6分であるため、ステップ310の判定により短いと判定する。そのため、アプリYは第二のアプリであると特定される(ステップ311)。
以上が第二のアプリの特定処理の具体例の説明であり、これでフローチャート図3の説明を終える。
本実施形態により、想定外にHDDアクセスを増やす要因(特にアプリ)の有無を判断することができる。それだけではなく、想定外にHDDアクセスを増やす要因となる第二のアプリを特定することができる。これにより、特定したアプリに関する情報を画像形成装置100の管理者やサービスマンに連絡を行い、HDD故障前にHDDを交換することが可能となり、管理者やサービスマンの保守コストを減らすことができる。さらに、ユーザ視点でも、画像形成装置100のHDD104に記憶されたユーザのデータを守ると共に、ユーザが画像形成装置100を利用できない時間を減らすことで操作性の低下を防ぐこともできる。また、本実施例形態により特定したアプリに対して、修正を行うもしくは特定したアプリを停止する等の運用条件を変えることで、今後同じ要因でHDD104が故障することを防ぐことも可能となる。

[第2の実施形態]
第1の実施形態により想定外にHDDアクセスを増やす要因となる第二のアプリを特定できる。ここで特定した第二のアプリを修正もしくは動作を停止する等の対策を行うため、ユーザがアプリや画像形成装置100を使用できないことが起こりえる。これによりユーザの操作性を低下する可能性がある。そのため、最小限のアプリのみを第二のアプリとして特定したいという要望もある。
そこで、本実施例では、最小限の第二のアプリを特定するための実施形態を、フローチャート図7を用いて説明する。なお、基本的な処理や制御は第1の実施形態と同じであるため、第1の実施形態と異なる点のみを説明する。
ステップ301〜ステップ310の処理は第1の実施形態と同じであるため、説明は省略する。ステップ310において、アプリの定期アクセス間隔が各アプリの第一のアクセス間隔よりも短いと判断すると、第二のアクセス判定部205は、このアプリを第二のアプリ候補と特定する(ステップ701)。そしてすべての第一のアプリに対してステップ310とステップ701を実行する。これにより、第一のアプリから第二のアプリ候補が抽出される。この後、第二のアクセス判定部205は、第二のアプリ候補が存在しないかどうかを判定する(ステップ702)。ここで、第二のアプリ候補が存在しない場合は、後述のステップ704で特定した第二のアプリを、第1の実施形態と同じく通知する(ステップ312)。なお、第二のアプリ候補が存在しない場合(ステップ704に一度も到達しない場合)は、ステップ701で特定した第二のアプリ候補を第二のアプリとして通知することとする。あるいは、第二のアプリがない旨を通知してもよい。
一方、ステップ702で第二のアプリ候補が存在する場合は、第二のアプリ候補の中で最小の定期アクセス間隔のアプリを特定する(ステップ703)。そして第二のアクセス判定部205は、ステップ703で特定した第二のアプリ候補を第二のアプリと特定し、第二のアプリ候補と第一のアプリとから、この特定した第二アプリを除外する(ステップ704)。そして第二のアクセス判定部205は、再度ステップ309のアプリの第一のアクセス間隔の決定に戻る。ステップ309では、定期アクセス間隔が最小のアプリを除外した第一のアプリに基づいて第一のアクセス間隔を再決定する。すなわち、前回第一のアクセス間隔を決定した時よりも、アプリの数が一つ減っているので、第一のアクセス間隔は前回の値よりも小さくなる。このようにして第二のアプリ候補の中で、定期アクセス間隔が短いアプリから順に第二のアプリとして特定し、第二のアプリを特定する都度、第一のアクセス間隔を短縮する。それにより、第二のアプリを特定する都度、第一のアプリを特定する条件が狭まり、第一のアプリが特定されにくくなる。この結果第一のアプリの数が減少し、ひいては第二のアプリの数も減少することが期待できる。
この具体例を説明する。なおステップ307により、図5(B)の定期アクセス間隔5分の第一のアプリXと、定期アクセス間隔1分の第一のアプリYを特定していることとする。また、ステップ308で取得する基準間隔は3分とする。第二のアクセス判定部205は、ステップ310でアプリの定期アクセス間隔が第一のアクセス間隔よりも短いアプリを第二のアプリ候補として特定する(ステップ701)。ここでは、アプリXとアプリYが第二のアプリ候補と特定できる。この後、第二のアクセス判定部205は、第二のアプリ候補が存在しないかどうかを判定する(ステップ702)。ここではアプリXとアプリXが存在するため、定期アクセス間隔が最小のアプリの特定に進む(ステップ703)。アプリXの定期アクセス間隔は5分であり、アプリYの定期アクセス間隔は1分であるため、ステップ703ではアプリYを特定する。そしてこのアプリYを第二のアプリと見なし、さらにアプリYを第二のアプリ候補と第一のアプリから除外する(ステップ704)。そしてステップ309に戻る。ステップ309では、第一のアプリはXのみであるため、アプリの第一のアクセス間隔は3分と決定する(ステップ309)。そして第1の実施形態と同じく、ステップ310で判定を行うと、アプリXの定期アクセス間隔は5分であるため、アプリXは第二のアプリ候補ではなくなる(ステップ310でNOになる)。そのため、ステップ702の判定で第二のアプリ候補はなくなり(ステップ702がYES)、ステップ312で通知する第二のアプリはアプリYのみとなる。以上が、第2の実施形態の説明である。
第2の実施形態により、第1の実施形態よりも特定する第二のアプリの数を減らすことができる。これにより修正する修正もしくは動作を停止するアプリの数を減らすことで、ユーザがアプリを使用できないことや画像形成装置100を使用できないことによるユーザの操作性の低下を防ぐことが可能となる。
[その他の実施例]
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
101 CPU、 102 RAM、 103 ROM、 104 HDD

Claims (12)

  1. 記憶ユニットにアクセスするアプリケーションを実行可能な情報処理装置であって、
    前記記憶ユニットに対するアプリケーションごとのアクセスを監視するアクセス監視手段と、
    前記アクセス監視手段により監視したアプリケーションごとのアクセスの時間間隔に基づいて、前記記憶ユニットに定期的にアクセスしている定期アクセスアプリケーションを特定する第一のアプリケーションの特定手段と、
    前記定期アクセスアプリケーションの数と、前記記憶ユニットに対するアクセスの基準の時間間隔である基準間隔とに基づいて、一つの定期アクセスアプリケーションに許容されるアクセスの時間間隔である許容間隔を決定する決定手段と、
    前記定期アクセスアプリケーションのうちから、前記許容間隔よりも短い時間間隔で前記記憶ユニットにアクセスしているアプリケーションを、前記記憶ユニットの動作時間を長くするアプリケーションとして特定する第二のアプリケーションの特定手段と
    を有することを特徴とする情報処理装置。
  2. 請求項1に記載の情報処理装置であって、
    前記第二のアプリケーションの特定手段により特定した前記アプリケーションを示す情報を出力する出力手段をさらに有することを特徴とする情報処理装置。
  3. 請求項2に記載の情報処理装置であって、
    前記出力手段は、前記第二のアプリケーションの特定手段により特定した前記アプリケーションを示す情報を、あらかじめ決められた通知先に通知することを特徴とする情報処理装置。
  4. 請求項1または2に記載の情報処理装置であって、
    前記アクセス監視手段は、前記情報処理装置が省電力モードである場合に、前記アクセスを監視することを特徴とする情報処理装置。
  5. 請求項1乃至4のいずれか一項に記載の情報処理装置であって、
    前記第二のアプリケーションの特定手段により特定したアプリケーションのうち、アクセスの時間間隔が最小のアプリケーションを除いたアプリケーションの数と前記基準間隔とに基づいて前記許容間隔を再決定し、前記再決定された許容間隔よりも短い時間間隔で前記記憶ユニットにアクセスしているアプリケーションを前記記憶ユニットの動作時間を長くするアプリケーションとして特定する第三のアプリケーションの特定手段をさらに有することを特徴とする情報処理装置。
  6. 請求項1乃至5のいずれか一項に記載の情報処理装置であって、
    前記第一のアプリケーションの特定手段は、前記監視手段により監視された前記アプリケーションごとの前記アクセスの時間間隔のうちで最長の時間間隔が所定時間より短いアプリケーションを前記定期アクセスアプリケーションとして特定することを特徴とする情報処理装置。
  7. 請求項1乃至5のいずれか一項に記載の情報処理装置であって、
    前記第一のアプリケーションの特定手段は、前記監視手段により監視された前記アプリケーションごとの前記アクセスの時間間隔の平均の時間間隔が所定時間より短いアプリケーションを前記定期アクセスアプリケーションとして特定することを特徴とする情報処理装置。
  8. 請求項1乃至7のいずれか一項に記載の情報処理装置であって、
    前記決定手段は、前記基準間隔に前記定期アクセスアプリケーションの数を乗じた値を前記許容間隔として決定することを特徴とする情報処理装置。
  9. 請求項1乃至8のいずれか一項に記載の情報処理装置であって、
    前記アクセス監視手段は、前記記憶ユニットに定期的にアクセスしない所定のアプリケーションを除くアプリケーションを対象としてアクセスを監視することを特徴とする情報処理装置。
  10. 請求項1乃至9のいずれか一項に記載の情報処理装置であって、
    前記記憶ユニットはハードディスク装置を含むことを特徴とする情報処理装。
  11. 記憶ユニットにアクセスするアプリケーションを実行可能な情報処理装置の制御方法であって、
    アクセス監視手段が、前記記憶ユニットに対するアプリケーションごとのアクセスを監視するアクセス監視工程と、
    第一のアプリケーションの特定手段が、前記アクセス監視工程により監視したアプリケーションごとのアクセスの時間間隔に基づいて、前記記憶ユニットに定期的にアクセスしている定期アクセスアプリケーションを特定する第一のアプリケーションの特定工程と、
    決定手段が、前記定期アクセスアプリケーションの数と、前記記憶ユニットに対するアクセスの基準の時間間隔である基準間隔とに基づいて、一つの定期アクセスアプリケーションに許容されるアクセスの時間間隔である許容間隔を決定する決定工程と、
    第二のアプリケーションの特定手段が、前記定期アクセスアプリケーションのうちから、前記許容間隔よりも短い時間間隔で前記記憶ユニットにアクセスしているアプリケーションを、前記記憶ユニットの動作時間を長くするアプリケーションとして特定する第二のアプリケーションの特定工程と
    を有することを特徴とする情報処理装置の制御方法。
  12. 記憶ユニットにアクセスするアプリケーションを実行可能な情報処理装置を、
    前記記憶ユニットに対するアプリケーションごとのアクセスを監視するアクセス監視手段と、
    前記アクセス監視手段により監視したアプリケーションごとのアクセスの時間間隔に基づいて、前記記憶ユニットに定期的にアクセスしている定期アクセスアプリケーションを特定する第一のアプリケーションの特定手段と、
    前記定期アクセスアプリケーションの数と、前記記憶ユニットに対するアクセスの基準の時間間隔である基準間隔とに基づいて、一つの定期アクセスアプリケーションに許容されるアクセスの時間間隔である許容間隔を決定する決定手段と、
    前記定期アクセスアプリケーションのうちから、前記許容間隔よりも短い時間間隔で前記記憶ユニットにアクセスしているアプリケーションを、前記記憶ユニットの動作時間を長くするアプリケーションとして特定する第二のアプリケーションの特定手段と
    して機能させるためのプログラム。
JP2018055105A 2018-03-22 2018-03-22 情報処理装置とその制御方法 Pending JP2019168845A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018055105A JP2019168845A (ja) 2018-03-22 2018-03-22 情報処理装置とその制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018055105A JP2019168845A (ja) 2018-03-22 2018-03-22 情報処理装置とその制御方法

Publications (1)

Publication Number Publication Date
JP2019168845A true JP2019168845A (ja) 2019-10-03

Family

ID=68108398

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018055105A Pending JP2019168845A (ja) 2018-03-22 2018-03-22 情報処理装置とその制御方法

Country Status (1)

Country Link
JP (1) JP2019168845A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11281406B2 (en) 2020-03-24 2022-03-22 Kioxia Corporation Memory system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11281406B2 (en) 2020-03-24 2022-03-22 Kioxia Corporation Memory system

Similar Documents

Publication Publication Date Title
US9483314B2 (en) Systems and methods for fault tolerant batch processing in a virtual environment
JP5834939B2 (ja) プログラム、仮想マシン制御方法、情報処理装置および情報処理システム
JP5579650B2 (ja) 監視対象プロセスを実行する装置及び方法
US8760692B2 (en) System, apparatus, method, and computer program for information processing resource adjustment
JP5822527B2 (ja) 情報処理装置、その制御方法、および制御プログラム
US11157373B2 (en) Prioritized transfer of failure event log data
US10491461B2 (en) Information processing apparatus and method
US11210152B2 (en) Error solution information providing system, error solution information provider apparatus, and electronic apparatus
US7904613B2 (en) Network device, network device management method, network device management system
JP5014179B2 (ja) Os優先度変更装置及びos優先度変更プログラム
JP2019168845A (ja) 情報処理装置とその制御方法
JP2018180982A (ja) 情報処理装置、およびログ記録方法
JP2010134705A (ja) 機器、ログ記録制御方法、及びプログラム
US9696780B2 (en) Information processing apparatus, system, management apparatus, and power status control method
JP2009271858A (ja) 計算機システム及びプログラム
US10387093B2 (en) Image forming apparatus that sets a time-out value based on an executed application, information processing method, storage medium storing program
JP6562980B2 (ja) システム、システムの制御方法、情報処理装置、情報処理装置の制御方法、及びプログラム
JP2011197827A (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
CN113687915B (zh) 容器运行方法、装置、设备及存储介质
JP7285864B2 (ja) システム
JP6413779B2 (ja) 情報処理システム、情報処理方法、及びプログラム
US11397572B2 (en) Image forming apparatus capable of executing extension application, method of controlling same, and storage medium
JP5821217B2 (ja) 画像形成装置、管理方法、管理プログラム、及び記録媒体
CN110460601B (zh) 依赖包安全性检测方法、装置及存储介质
JP5447669B2 (ja) 監視制御装置、サーバ装置、監視制御方法及び監視制御プログラム

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20210103

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210113